0 txs
0 calls
constructor
constructor(address initialAuthority)
functions
approvedCallers
viewfunction approvedCallers(address) view returns (bool)
authority
viewfunction authority() view returns (address)
cdmAddresses
viewfunction cdmAddresses(uint256) view returns (address)
count
viewfunction count(address wallet) view returns (uint256)
isConsumingScheduledOp
viewfunction isConsumingScheduledOp() view returns (bytes4)
MAX_TOKEN_ID
viewfunction MAX_TOKEN_ID() view returns (uint256)
owner
viewfunction owner(uint256 tokenId) view returns (address)
paused
viewfunction paused() view returns (bool)
tokenByIndex
viewfunction tokenByIndex(address wallet, uint256 index) view returns (uint256)
tokens
viewfunction tokens(address wallet) view returns (uint256[])
forceUpdate
nonpayablefunction forceUpdate(uint256 _tokenId, address _newOwner)
forceUpdateMany
nonpayablefunction forceUpdateMany(uint256[] _tokenIds, address _newOwner)
pause
nonpayablefunction pause()
setApprovedCaller
nonpayablefunction setApprovedCaller(address _addr, bool _val)
setAuthority
nonpayablefunction setAuthority(address newAuthority)
setCDMAddress
nonpayablefunction setCDMAddress(uint256 _chainId, address _addr)
unpause
nonpayablefunction unpause()
updateMany
nonpayablefunction updateMany(uint256[] _tokenIds, address _newOwner)
updateOwner
nonpayablefunction updateOwner(uint256 _tokenId, address _newOwner)
events
ApprovedCallerUpdated
event ApprovedCallerUpdated(address addr, bool val)
AuthorityUpdated
event AuthorityUpdated(address authority)
BatchUpdateTokens
event BatchUpdateTokens(uint256[] tokenIds, address indexed newOwner)
CMDAddressUpdated
event CMDAddressUpdated(uint256 chainId, address addr)
CrossDomainMessage
event CrossDomainMessage(address sender, address origin, address xorigin, uint256 chainId)
Paused
event Paused(address account)
Unpaused
event Unpaused(address account)
UpdateTokenId
event UpdateTokenId(uint256 indexed tokenId, address indexed previousOwner, address indexed newOwner)
errors
AccessManagedInvalidAuthority
error AccessManagedInvalidAuthority(address authority)
AccessManagedRequiredDelay
error AccessManagedRequiredDelay(address caller, uint32 delay)
AccessManagedUnauthorized
error AccessManagedUnauthorized(address caller)
CallerNotApproved
error CallerNotApproved(address caller)
EnforcedPause
error EnforcedPause()
ExpectedPause
error ExpectedPause()
IndexOutOfBounds
error IndexOutOfBounds(uint256 providedIndex, uint256 arrayLength)
InvalidTokenId
error InvalidTokenId(uint256 tokenId)
NotFromXDomainMessenger
error NotFromXDomainMessenger(address sender)
ZeroAddressNotAllowed
error ZeroAddressNotAllowed()
creation bytecode
0x608060405234801561001057600080fd5b506040516115bc3803806115bc83398101604081905261002f9161011f565b80610039816100cb565b50506000805460ff60a81b1916815560016020527fb60096399359af1e390f4ccad595eafc702d6489db902b1fd8607f3867d438e180547342000000000000000000000000000000000000076001600160a01b0319918216811790925562014a349092527ffc8758130b1edbec4992818204a8d94723427ce838142fe6d080d638bc744b5f805490921617905561014f565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b60006020828403121561013157600080fd5b81516001600160a01b038116811461014857600080fd5b9392505050565b61145e8061015e6000396000f3fe608060405234801561001057600080fd5b50600436106101515760003560e01c80637c583802116100cd578063a71975af11610081578063cb60f1bf11610066578063cb60f1bf14610314578063cbb62f5614610327578063e48603391461033a57600080fd5b8063a71975af146102e0578063bf7e214f1461030357600080fd5b80638456cb59116100b25780638456cb59146102765780638fb360371461027e578063a123c33e146102b757600080fd5b80637c5838021461025057806382413f2a1461026357600080fd5b80633f4ba83a116101245780636da612d8116101095780636da612d8146102215780637192711f1461022a5780637a9e5e4b1461023d57600080fd5b80633f4ba83a146101fb5780635c975abb1461020357600080fd5b806305d85eda1461015657806313957cfd14610192578063276024f6146101a75780633cf72f7f146101e8575b600080fd5b61017f610164366004611077565b6001600160a01b031660009081526005602052604090205490565b6040519081526020015b60405180910390f35b6101a56101a03660046110a9565b61035a565b005b6101d06101b53660046110e2565b6001602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610189565b6101a56101f63660046110fb565b6103cb565b6101a56103ec565b600054600160a81b900460ff165b6040519015158152602001610189565b61017f61271081565b6101a5610238366004611181565b6103ff565b6101a561024b366004611077565b610501565b6101a561025e366004611181565b610594565b6101a56102713660046110fb565b610609565b6101a5610708565b610286610719565b6040517fffffffff000000000000000000000000000000000000000000000000000000009091168152602001610189565b6101d06102c53660046110e2565b6000908152600360205260409020546001600160a01b031690565b6102116102ee366004611077565b60026020526000908152604090205460ff1681565b6000546001600160a01b03166101d0565b61017f6103223660046111a6565b610756565b6101a5610335366004611181565b61080a565b61034d610348366004611077565b610825565b60405161018991906111d2565b610367335b600036610891565b6001600160a01b038216600081815260026020908152604091829020805460ff19168515159081179091558251938452908301527f422d958fbc14ed45b678c256b4ac6e1a1e213878442f80368349c6f72642d22391015b60405180910390a15050565b6103d43361035f565b6103dc6109aa565b6103e78383836109ee565b505050565b6103f53361035f565b6103fd610aec565b565b6000610409610b41565b466000908152600160205260409020549091506001600160a01b0316331461044b5760405163633ccf3760e01b81523360048201526024015b60405180910390fd5b6001600160a01b03811660009081526002602052604090205460ff1661048f57604051639d5d5ca760e01b81526001600160a01b0382166004820152602401610442565b6104976109aa565b6104a18383610bd2565b7fa5093b7c8911c424379d1c75f4eb174b536227b3b34ad344aff3733d32fe44a833326104cc610b41565b604080516001600160a01b039485168152928416602084015292168183015246606082015290519081900360800190a1505050565b60005433906001600160a01b031681146105385760405162d1953b60e31b81526001600160a01b0382166004820152602401610442565b816001600160a01b03163b600003610587576040517fc2f31e5e0000000000000000000000000000000000000000000000000000000081526001600160a01b0383166004820152602401610442565b61059082610c90565b5050565b61059d3361035f565b600082815260016020908152604091829020805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0385169081179091558251858152918201527f49898ad2ee829bc9f3cadb7b7c82cf5acdfb5f5869d1adb2b6c84fef7cc7ab3291016103bf565b6000610613610b41565b466000908152600160205260409020549091506001600160a01b031633146106505760405163633ccf3760e01b8152336004820152602401610442565b6001600160a01b03811660009081526002602052604090205460ff1661069457604051639d5d5ca760e01b81526001600160a01b0382166004820152602401610442565b61069c6109aa565b6106a78484846109ee565b7fa5093b7c8911c424379d1c75f4eb174b536227b3b34ad344aff3733d32fe44a833326106d2610b41565b604080516001600160a01b039485168152928416602084015292168183015246606082015290519081900360800190a150505050565b6107113361035f565b6103fd610cf1565b60008054600160a01b900460ff166107315750600090565b507f8fb360370000000000000000000000000000000000000000000000000000000090565b6001600160a01b03821660009081526005602052604081205482106107cc576001600160a01b038316600090815260056020526040908190205490517f63a056dd000000000000000000000000000000000000000000000000000000008152610442918491600401918252602082015260400190565b6001600160a01b03831660009081526005602052604090208054839081106107f6576107f6611216565b906000526020600020015490505b92915050565b6108133361035f565b61081b6109aa565b6105908282610bd2565b6001600160a01b03811660009081526005602090815260409182902080548351818402810184019094528084526060939283018282801561088557602002820191906000526020600020905b815481526020019060010190808311610871575b50505050509050919050565b6000806108c76108a96000546001600160a01b031690565b86306108b960046000898b61122c565b6108c291611256565b610d34565b91509150816109a35763ffffffff811615610980576000805460ff60a01b198116600160a01b179091556040517f94c7d7ee0000000000000000000000000000000000000000000000000000000081526001600160a01b03909116906394c7d7ee9061093b9088908890889060040161129e565b600060405180830381600087803b15801561095557600080fd5b505af1158015610969573d6000803e3d6000fd5b50506000805460ff60a01b19169055506109a39050565b60405162d1953b60e31b81526001600160a01b0386166004820152602401610442565b5050505050565b600054600160a81b900460ff16156103fd576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b038116610a15576040516342bcdf7f60e11b815260040160405180910390fd5b60005b82811015610aa3576000848483818110610a3457610a34611216565b9050602002013590506127108110610a625760405163ed15e6cf60e01b815260048101829052602401610442565b6000818152600360205260409020546001600160a01b0316610a848183610e86565b610a8e8483610fa4565b50508080610a9b906112f3565b915050610a18565b50806001600160a01b03167fa83a281dbb841ebd1c3b79f5a25ccd28204a79f4fa3a66c57051b971fe006c828484604051610adf92919061130c565b60405180910390a2505050565b610af461101c565b6000805460ff60a81b191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b466000908152600160205260408120546001600160a01b031633819003610bca57806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ba0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bc4919061135e565b91505090565b600091505090565b6001600160a01b038116610bf9576040516342bcdf7f60e11b815260040160405180910390fd5b6127108210610c1e5760405163ed15e6cf60e01b815260048101839052602401610442565b6000828152600360205260409020546001600160a01b0316610c408184610e86565b610c4a8284610fa4565b816001600160a01b0316816001600160a01b0316847ff35f7de2307d3ff01d53200e7d33fe42695bb6aaedbcf4182682adfc932841ca60405160405180910390a4505050565b6000805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b610cf96109aa565b6000805460ff60a81b1916600160a81b1790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610b243390565b6040516001600160a01b03848116602483015283811660448301527fffffffff000000000000000000000000000000000000000000000000000000008316606483015260009182918291829189169060840160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb70096130000000000000000000000000000000000000000000000000000000017905251610de9919061137b565b600060405180830381855afa9150503d8060008114610e24576040519150601f19603f3d011682016040523d82523d6000602084013e610e29565b606091505b50915091508115610e7b576040815110610e5b5780806020019051810190610e5191906113aa565b9094509250610e7b565b6020815110610e7b5780806020019051810190610e7891906113e2565b93505b505094509492505050565b6001600160a01b03821615610590576001600160a01b038216600090815260056020526040812054610eba906001906113ff565b600083815260046020526040902054909150808214610f61576001600160a01b0384166000908152600560205260408120805484908110610efd57610efd611216565b906000526020600020015490508060056000876001600160a01b03166001600160a01b031681526020019081526020016000208381548110610f4157610f41611216565b600091825260208083209091019290925591825260049052604090208190555b6001600160a01b0384166000908152600560205260409020805480610f8857610f88611412565b6001900381819060005260206000200160009055905550505050565b6000818152600360209081526040808320805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03871690811790915580845260058352908320805460018181018355828652938520018590559252905461100991906113ff565b6000918252600460205260409091205550565b600054600160a81b900460ff166103fd576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b038116811461107457600080fd5b50565b60006020828403121561108957600080fd5b81356110948161105f565b9392505050565b801515811461107457600080fd5b600080604083850312156110bc57600080fd5b82356110c78161105f565b915060208301356110d78161109b565b809150509250929050565b6000602082840312156110f457600080fd5b5035919050565b60008060006040848603121561111057600080fd5b833567ffffffffffffffff8082111561112857600080fd5b818601915086601f83011261113c57600080fd5b81358181111561114b57600080fd5b8760208260051b850101111561116057600080fd5b602092830195509350508401356111768161105f565b809150509250925092565b6000806040838503121561119457600080fd5b8235915060208301356110d78161105f565b600080604083850312156111b957600080fd5b82356111c48161105f565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b8181101561120a578351835292840192918401916001016111ee565b50909695505050505050565b634e487b7160e01b600052603260045260246000fd5b6000808585111561123c57600080fd5b8386111561124957600080fd5b5050820193919092039150565b7fffffffff0000000000000000000000000000000000000000000000000000000081358181169160048510156112965780818660040360031b1b83161692505b505092915050565b6001600160a01b038416815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b634e487b7160e01b600052601160045260246000fd5b600060018201611305576113056112dd565b5060010190565b6020815281602082015260007f07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83111561134557600080fd5b8260051b80856040850137919091016040019392505050565b60006020828403121561137057600080fd5b81516110948161105f565b6000825160005b8181101561139c5760208186018101518583015201611382565b506000920191825250919050565b600080604083850312156113bd57600080fd5b82516113c88161109b565b602084015190925063ffffffff811681146110d757600080fd5b6000602082840312156113f457600080fd5b81516110948161109b565b81810381811115610804576108046112dd565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220eed23686434e2bd4ba6742468306d7abf8d6f8e106d2cc70b8687e93897fbeb064736f6c634300081400330000000000000000000000007b53a6cfd5b3383a02050eda88ee8f01999baf6a