0 txs
0 calls
constructor
constructor()
functions
BATCH_LIMIT
viewfunction BATCH_LIMIT() view returns (uint256)
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
getRoleMember
viewfunction getRoleMember(bytes32 role, uint256 index) view returns (address)
getRoleMemberCount
viewfunction getRoleMemberCount(bytes32 role) view returns (uint256)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
MANAGER_ROLE
viewfunction MANAGER_ROLE() view returns (bytes32)
TOKEN_TYPE
viewfunction TOKEN_TYPE() view returns (bytes32)
TRANSFER_EVENT_SIG
viewfunction TRANSFER_EVENT_SIG() view returns (bytes32)
WITHDRAW_BATCH_EVENT_SIG
viewfunction WITHDRAW_BATCH_EVENT_SIG() view returns (bytes32)
exitTokens
nonpayablefunction exitTokens(address withdrawer, address rootToken, bytes log)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
initialize
nonpayablefunction initialize(address _owner)
lockTokens
nonpayablefunction lockTokens(address depositor, address depositReceiver, address rootToken, bytes depositData)
onERC721Received
nonpayablefunction onERC721Received(address, address, uint256, bytes) returns (bytes4)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address account)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
events
LockedERC721
event LockedERC721(address indexed depositor, address indexed depositReceiver, address indexed rootToken, uint256 tokenId)
LockedERC721Batch
event LockedERC721Batch(address indexed depositor, address indexed depositReceiver, address indexed rootToken, uint256[] tokenIds)
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
errors
No errors.
creation bytecode
0x60806040526000600260006101000a81548160ff02191690831515021790555034801561002b57600080fd5b506127408061003b6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806391d14854116100a2578063c4d66de811610071578063c4d66de814610572578063ca15c873146105b6578063d547741f146105f8578063e375b64e14610646578063ec87621c1461071f5761010b565b806391d14854146104b25780639559c0bd14610518578063a217fddf14610536578063b017a30f146105545761010b565b80634794b430116100de5780634794b43014610303578063609c92b8146103215780638274664f1461033f5780639010d07c1461043a5761010b565b8063150b7a0214610110578063248a9ca3146102255780632f2ff15d1461026757806336568abe146102b5575b600080fd5b6101d16004803603608081101561012657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019064010000000081111561018d57600080fd5b82018360208201111561019f57600080fd5b803590602001918460018302840111640100000000831117156101c157600080fd5b909192939192939050505061073d565b60405180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b6102516004803603602081101561023b57600080fd5b8101908080359060200190929190505050610752565b6040518082815260200191505060405180910390f35b6102b36004803603604081101561027d57600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610771565b005b610301600480360360408110156102cb57600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506107fa565b005b61030b610893565b6040518082815260200191505060405180910390f35b6103296108ba565b6040518082815260200191505060405180910390f35b6104386004803603606081101561035557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156103b257600080fd5b8201836020820111156103c457600080fd5b803590602001918460018302840111640100000000831117156103e657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506108f3565b005b6104706004803603604081101561045057600080fd5b810190808035906020019092919080359060200190929190505050611011565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104fe600480360360408110156104c857600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611042565b604051808215151515815260200191505060405180910390f35b610520611073565b6040518082815260200191505060405180910390f35b61053e611078565b6040518082815260200191505060405180910390f35b61055c61107f565b6040518082815260200191505060405180910390f35b6105b46004803603602081101561058857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110a6565b005b6105e2600480360360208110156105cc57600080fd5b81019080803590602001909291905050506111d1565b6040518082815260200191505060405180910390f35b6106446004803603604081101561060e57600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111f7565b005b61071d6004803603608081101561065c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156106d957600080fd5b8201836020820111156106eb57600080fd5b8035906020019184600183028401116401000000008311171561070d57600080fd5b9091929391929390505050611280565b005b6107276117e9565b6040518082815260200191505060405180910390f35b600063150b7a0260e01b905095945050505050565b6000806000838152602001908152602001600020600201549050919050565b61079760008084815260200190815260200160002060020154610792611822565b611042565b6107ec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602f815260200180612574602f913960400191505060405180910390fd5b6107f6828261182a565b5050565b610802611822565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610885576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602f8152602001806126b5602f913960400191505060405180910390fd5b61088f82826118bd565b5050565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b81565b60405180807f45524337323100000000000000000000000000000000000000000000000000008152506006019050604051809103902081565b60405180807f4d414e414745525f524f4c450000000000000000000000000000000000000000815250600c019050604051809103902061093a81610935611822565b611042565b6001906109ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252838181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156109f05780601f106109c5576101008083540402835291602001916109f0565b820191906000526020600020905b8154815290600101906020018083116109d357829003601f168201915b50509250505060405180910390fd5b506060610a13610a0e84611950565b6119f5565b90506060610a3482600181518110610a2757fe5b60200260200101516119f5565b90507fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b610a7782600081518110610a6a57fe5b6020026020010151611bc0565b60001b1415610cd257610a9d81600181518110610a9057fe5b6020026020010151611bc0565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614610b3d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4552433732315072656469636174653a20494e56414c49445f53454e4445520081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16610b7282600281518110610b6557fe5b6020026020010151611bc0565b73ffffffffffffffffffffffffffffffffffffffff1614610bde576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806126946021913960400191505060405180910390fd5b8473ffffffffffffffffffffffffffffffffffffffff166342842e0e3088610c1985600381518110610c0c57fe5b6020026020010151611bc0565b6040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b158015610cb557600080fd5b505af1158015610cc9573d6000803e3d6000fd5b50505050611009565b7ff871896b17e9cb7a64941c62c188a4f5c621b86800e3d15452ece01ce56073df60001b610d1382600081518110610d0657fe5b6020026020010151611bc0565b60001b1415610fb757610d3981600181518110610d2c57fe5b6020026020010151611bc0565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614610dd9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4552433732315072656469636174653a20494e56414c49445f53454e4445520081525060200191505060405180910390fd5b6060610df883600281518110610deb57fe5b6020026020010151611d75565b90506060818060200190516020811015610e1157600080fd5b8101908080516040519392919084640100000000821115610e3157600080fd5b83820191506020820185811115610e4757600080fd5b8251866020820283011164010000000082111715610e6457600080fd5b8083526020830192505050908051906020019060200280838360005b83811015610e9b578082015181840152602081019050610e80565b50505050905001604052505050905060008151905060005b81811015610fae578873ffffffffffffffffffffffffffffffffffffffff166342842e0e308c868581518110610ee557fe5b60200260200101516040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b158015610f8957600080fd5b505af1158015610f9d573d6000803e3d6000fd5b505050508080600101915050610eb3565b50505050611008565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061264b6022913960400191505060405180910390fd5b5b505050505050565b600061103a82600080868152602001908152602001600020600001611e7590919063ffffffff16565b905092915050565b600061106b82600080868152602001908152602001600020600001611e8f90919063ffffffff16565b905092915050565b601481565b6000801b81565b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60001b81565b600260009054906101000a900460ff1615611129576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f616c726561647920696e6974656400000000000000000000000000000000000081525060200191505060405180910390fd5b6111676040518060400160405280600f81526020017f4552433732315072656469636174650000000000000000000000000000000000815250611ebf565b6111746000801b82611f6b565b6111b360405180807f4d414e414745525f524f4c450000000000000000000000000000000000000000815250600c019050604051809103902082611f6b565b6001600260006101000a81548160ff02191690831515021790555050565b60006111f0600080848152602001908152602001600020600001611f79565b9050919050565b61121d60008084815260200190815260200160002060020154611218611822565b611042565b611272576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806125cb6030913960400191505060405180910390fd5b61127c82826118bd565b5050565b60405180807f4d414e414745525f524f4c450000000000000000000000000000000000000000815250600c01905060405180910390206112c7816112c2611822565b611042565b60019061138c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382528381815460018160011615610100020316600290048152602001915080546001816001161561010002031660029004801561137d5780601f106113525761010080835404028352916020019161137d565b820191906000526020600020905b81548152906001019060200180831161136057829003601f168201915b50509250505060405180910390fd5b506020838390501415611513576000838360208110156113ab57600080fd5b810190808035906020019092919050505090508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f8357472e13612a8c3d6f3e9d71fbba8a78ab77dbdcc7fcf3b7b645585f0bbbfc846040518082815260200191505060405180910390a48473ffffffffffffffffffffffffffffffffffffffff166342842e0e8830846040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b1580156114f557600080fd5b505af1158015611509573d6000803e3d6000fd5b50505050506117e1565b60608383602081101561152557600080fd5b810190808035906020019064010000000081111561154257600080fd5b82018360208201111561155457600080fd5b8035906020019184602083028401116401000000008311171561157657600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f82011690508083019250505050505050919291929050505090508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f5345c2beb0e49c805f42bb70c4ec5c3c3d9680ce45b8f4529c028d5f3e0f7a0d846040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561166c578082015181840152602081019050611651565b505050509050019250505060405180910390a460008151905060148111156116df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806126276024913960400191505060405180910390fd5b60005b818110156117dd578673ffffffffffffffffffffffffffffffffffffffff166342842e0e8a3086858151811061171457fe5b60200260200101516040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b1580156117b857600080fd5b505af11580156117cc573d6000803e3d6000fd5b5050505080806001019150506116e2565b5050505b505050505050565b60405180807f4d414e414745525f524f4c450000000000000000000000000000000000000000815250600c019050604051809103902081565b600033905090565b61185181600080858152602001908152602001600020600001611f8e90919063ffffffff16565b156118b95761185e611822565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b6118e481600080858152602001908152602001600020600001611fbe90919063ffffffff16565b1561194c576118f1611822565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b611958612492565b60008251116119cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f524c505265616465723a20494e56414c49445f42595445535f4c454e4754480081525060200191505060405180910390fd5b600060208301905060405180604001604052808451815260200182815250915050919050565b6060611a0082611fee565b611a72576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f524c505265616465723a204954454d5f4e4f545f4c495354000000000000000081525060200191505060405180910390fd5b6000611a7d83612027565b905060608167ffffffffffffffff81118015611a9857600080fd5b50604051908082528060200260200182016040528015611ad257816020015b611abf612492565b815260200190600190039081611ab75790505b5090506000611ae485602001516120db565b905084600001518114611b42576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602781526020018061266d6027913960400191505060405180910390fd5b6000611b518660200151612193565b8660200151019050600080600090505b85811015611bb257611b72836120db565b9150604051806040016040528083815260200184815250858281518110611b9557fe5b602002602001018190525081830192508080600101915050611b61565b508395505050505050919050565b6000611bcb82611fee565b15611c3e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f524c505265616465723a204445434f44494e475f4c4953545f41535f55494e5481525060200191505060405180910390fd5b602182600001511115611cb9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f524c505265616465723a20494e56414c49445f55494e545f4c454e475448000081525060200191505060405180910390fd5b6000611cc883602001516120db565b905082600001518114611d26576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260278152602001806126e46027913960400191505060405180910390fd5b6000611d358460200151612193565b90506000818560000151039050600080838760200151019050805191506020831015611d6857826020036101000a820491505b8195505050505050919050565b60606000611d8683602001516120db565b905082600001518114611de4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260288152602001806125a36028913960400191505060405180910390fd5b6000611df38460200151612193565b9050600081856000015103905060608167ffffffffffffffff81118015611e1957600080fd5b506040519080825280601f01601f191660200182016040528015611e4c5781602001600182028036833780820191505090505b5090506000816020019050611e6884886020015101828561221c565b8195505050505050919050565b6000611e848360000183612283565b60001c905092915050565b6000611eb7836000018373ffffffffffffffffffffffffffffffffffffffff1660001b612306565b905092915050565b806040516020018082805190602001908083835b60208310611ef65780518252602082019150602081019050602083039250611ed3565b6001836020036101000a038019825116818451168082178552505050505050905001807f3a20494e53554646494349454e545f5045524d495353494f4e53000000000000815250601a0191505060405160208183030381529060405260019080519060200190611f679291906124ac565b5050565b611f75828261182a565b5050565b6000611f8782600001612329565b9050919050565b6000611fb6836000018373ffffffffffffffffffffffffffffffffffffffff1660001b61233a565b905092915050565b6000611fe6836000018373ffffffffffffffffffffffffffffffffffffffff1660001b6123aa565b905092915050565b600080600083602001519050805160001a915060c060ff168260ff16101561201b57600092505050612022565b6001925050505b919050565b60008060009050600061203d8460200151612193565b84602001510190506000846000015185602001510190505b808210156120d057612066826120db565b82019150808211156120c3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c8152602001806125fb602c913960400191505060405180910390fd5b8280600101935050612055565b829350505050919050565b6000806000835160001a9050608060ff168110156120fc5760019150612189565b60b860ff16811015612119576001608060ff168203019150612188565b60c060ff168110156121495760b78103600185019450806020036101000a85510460018201810193505050612187565b60f860ff1681101561216657600160c060ff168203019150612186565b60f78103600185019450806020036101000a855104600182018101935050505b5b5b5b8192505050919050565b600080825160001a9050608060ff168110156121b3576000915050612217565b60b860ff168110806121d8575060c060ff1681101580156121d7575060f860ff1681105b5b156121e7576001915050612217565b60c060ff168110156122075760018060b80360ff16820301915050612217565b60018060f80360ff168203019150505b919050565b600081141561222a5761227e565b5b602060ff16811061225a5782518252602060ff1683019250602060ff1682019150602060ff168103905061222b565b6000600182602060ff16036101000a03905080198451168184511681811785525050505b505050565b6000818360000180549050116122e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806125526022913960400191505060405180910390fd5b8260000182815481106122f357fe5b9060005260206000200154905092915050565b600080836001016000848152602001908152602001600020541415905092915050565b600081600001805490509050919050565b60006123468383612306565b61239f5782600001829080600181540180825580915050600190039060005260206000200160009091909190915055826000018054905083600101600084815260200190815260200160002081905550600190506123a4565b600090505b92915050565b6000808360010160008481526020019081526020016000205490506000811461248657600060018203905060006001866000018054905003905060008660000182815481106123f557fe5b906000526020600020015490508087600001848154811061241257fe5b906000526020600020018190555060018301876001016000838152602001908152602001600020819055508660000180548061244a57fe5b6001900381819060005260206000200160009055905586600101600087815260200190815260200160002060009055600194505050505061248c565b60009150505b92915050565b604051806040016040528060008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106124ed57805160ff191683800117855561251b565b8280016001018555821561251b579182015b8281111561251a5782518255916020019190600101906124ff565b5b509050612528919061252c565b5090565b61254e91905b8082111561254a576000816000905550600101612532565b5090565b9056fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74524c505265616465723a2042595445535f4445434f4445445f4c454e4754485f4d49534d41544348416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65524c505265616465723a204e554d5f4954454d535f4445434f4445445f4c454e4754485f4d49534d415443484552433732315072656469636174653a20455843454544535f42415443485f4c494d49544552433732315072656469636174653a20494e56414c49445f5349474e4154555245524c505265616465723a204c4953545f4445434f4445445f4c454e4754485f4d49534d415443484552433732315072656469636174653a20494e56414c49445f5245434549564552416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66524c505265616465723a2055494e545f4445434f4445445f4c454e4754485f4d49534d41544348a26469706673582212206b05dda873b96ea40a651741c266499f1463d107bf0a2ff62978c2936a936d5e64736f6c63430006060033