10 txs
11 calls
constructor
constructor(address _nativeCoin, uint256 _chainId, address _bridgeHub, address _admin, address _liquidityManager)
functions
bridgeHub
viewfunction bridgeHub() view returns (address)
chainId
viewfunction chainId() view returns (uint256)
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
isAllowedToken
viewfunction isAllowedToken(address) view returns (bool)
l2TransactionBaseCost
viewfunction l2TransactionBaseCost(uint256 _l1GasPrice, uint256 _l2GasLimit, uint256 _l2GasPerPubdataByteLimit) view returns (uint256)
liquidityManager
viewfunction liquidityManager() view returns (address)
native
viewfunction native() view returns (address)
OPERATOR_ROLE
viewfunction OPERATOR_ROLE() view returns (bytes32)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
allowTokens
nonpayablefunction allowTokens(address[] tokens)
bridgeToken
payablefunction bridgeToken(address token, uint256 amount, uint256 _l2GasLimit) payable
disableTokens
nonpayablefunction disableTokens(address[] tokens)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
l2TransactionEthCost
nonpayablefunction l2TransactionEthCost(uint256 _l1GasPrice, uint256 _l2GasLimit, uint256 _l2GasPerPubdataByteLimit) returns (uint256)
recoverEth
nonpayablefunction recoverEth()
renounceRole
nonpayablefunction renounceRole(bytes32 role, address callerConfirmation)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
sweepTokens
nonpayablefunction sweepTokens(address token, address to)
events
BridgeToken
event BridgeToken(address token, uint256 amount, uint256 l2GasLimit, uint256 l2GasPerPubdataByteLimit, uint256 gasMinted)
CanonicalTxHash
event CanonicalTxHash(bytes32 indexed canonicalTxHash)
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)
ShareMinted
event ShareMinted(address indexed sender, uint256 amount, uint256 shares)
Swept
event Swept(address indexed token, address indexed to)
TokenSupported
event TokenSupported(address indexed token, bool allowed)
errors
AccessControlBadConfirmation
error AccessControlBadConfirmation()
AccessControlUnauthorizedAccount
error AccessControlUnauthorizedAccount(address account, bytes32 neededRole)
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
creation bytecode
0x6101003461029257601f611b0638819003918201601f19168301916001600160401b038311848410176102975780849260a09460405283398101031261029257610048816102ad565b90602081015161005a604083016102ad565b610072608061006b606086016102ad565b94016102ad565b60018055906001600160a01b0385161561023d576001600160a01b03169081156101ea576001600160a01b0384161561019b576001600160a01b0316918215610140576100d49460805260a05260c05260e0526100ce816102c1565b5061033d565b506040516116d090816103d6823960805181818161027301528181610f3201526114e1015260a0518181816101cc01528181610b2601526111ea015260c05181818161020901528181610ba7015261122c015260e0518181816102b701528181610d5e01526115330152f35b60405162461bcd60e51b815260206004820152602d60248201527f427269646765577261703a206c6971756964697479206d616e6167657220616460448201526c6472657373206973207a65726f60981b6064820152608490fd5b60405162461bcd60e51b815260206004820152602160248201527f427269646765577261703a2061646d696e2061646472657373206973207a65726044820152606f60f81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f427269646765577261703a206272696467654875622061646472657373206973604482015264207a65726f60d81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602760248201527f427269646765577261703a206e617469766520636f696e2061646472657373206044820152666973207a65726f60c81b6064820152608490fd5b600080fd5b634e487b7160e01b600052604160045260246000fd5b51906001600160a01b038216820361029257565b6001600160a01b0381166000908152600080516020611ae6833981519152602052604090205460ff16610337576001600160a01b03166000818152600080516020611ae683398151915260205260408120805460ff19166001179055339190600080516020611aa68339815191528180a4600190565b50600090565b6001600160a01b0381166000908152600080516020611ac6833981519152602052604090205460ff16610337576001600160a01b03166000818152600080516020611ac683398151915260205260408120805460ff191660011790553391907f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92990600080516020611aa68339815191529080a460019056fe608080604052600436101561001357600080fd5b600090813560e01c90816301ffc9a71461106f575080630e5e573114610f6157806311b0b42d14610f1c5780631609be1d14610dfc578063248a9ca314610dce5780632f2ff15d14610d8d5780633382743814610d4857806336568abe14610d0357806353b9ed1714610bf25780638a8ea61314610bd65780638d66e8e414610b9157806391d1485414610b495780639a8a059214610b0e578063a217fddf14610af2578063b473318e14610ad0578063bcdb446b14610a64578063cbe230c314610a25578063d547741f146109db578063d5e420f81461013a5763f5b541a6146100fd57600080fd5b3461013757806003193601126101375760206040517f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b9298152f35b80fd5b5060603660031901126101375761014f611120565b60243591604435916002600154146109cc57600260015560018060a01b0316808252600260205260ff60408320541615610987576101bd6040516323b872dd60e01b6020820152336024820152306044820152856064820152606481526101b76084826111a0565b8261163f565b604051631c588c9d60e21b81527f0000000000000000000000000000000000000000000000000000000000000000600482018190523a60248301526044820185905261032060648301527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169490929091602081608481895afa801561097c578590610944575b61025691506114cb565b918234106108e6576040516370a0823160e01b81523060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031697906020816024818c5afa9081156106fd5787916108b4575b507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b1561085557878691600460405180948193633a4b66f160e01b83525af18015610861576108a0575b506040516370a0823160e01b8152306004820152906020826024818d5afa801561086157889061086c575b61033e925061129b565b946040518581528660208201527f7494e309a68e673da9e1de3ae72425566aad3afb6b7ea7d70a590042a3a3864960403392a260405163070e40ef60e31b81526020816004818c5afa90811561086157889161081b575b5060405163095ea7b360e01b81526001600160a01b0391909116600482018190526024820184905299906020816044818c8a5af180156107d8576107e3575b50604051636eb1769f60e11b8152306004820152602481018b9052602081604481855afa9081156107d85789916107a1575b5087810180911161078d5760405163095ea7b360e01b60208083019182526001600160a01b038e1660248401526044808401949094529282529091908a9061044f6064856111a0565b83519082865af189513d82610771575b505015610733575b5050604051908460208301528260408301523360608301526060825261048e6080836111a0565b60405190610120820182811067ffffffffffffffff82111761071f5791899a9b916024999a936040528152602081018a81526040820184815260608301908882526080840192610320845260a085019433865260c0810196875260e0810197885261010081019889526040519d8e916324fd57fb60e01b835260206004840152519101525160448d01525160648c01525160848b01525160a48a015260018060a01b0390511660c489015260018060a01b0390511660e4880152516101048701525197610120610124870152885180610144880152885b8181106107085750889950602091878a61016482858383839884010152601f801991011681010301925af19283156106fd57879586946106b8575b506106179386978796947f89652a66c8e8287ab8a5a2e9f82481a81eefbba4daef1bcf0e805b69a3bf4d5d9460a094604051947fec4441362be16727d3342fcbac11e99fc9906b5e3621e58d90ec20bcd01dc53c8b80a284526020840152604083015261032060608301526080820152a13461129b565b335af13d156106b3573d67ffffffffffffffff811161069f5760405190610648601f8201601f1916602001836111a0565b81528260203d92013e5b1561065e576001805580f35b60405162461bcd60e51b8152602060048201526019602482015278109c9a5919d955dc985c0e881c99599d5b990819985a5b1959603a1b6044820152606490fd5b634e487b7160e01b83526041600452602483fd5b610652565b969492935094506020863d6020116106f5575b816106d8602093836111a0565b810103126106f1579451929486949193929160a06105a0565b8680fd5b3d91506106cb565b6040513d89823e3d90fd5b80602080928d010151610164828b01015201610565565b634e487b7160e01b8a52604160045260248afd5b61076a9161076560405163095ea7b360e01b60208201528d60248201528b6044820152604481526101b76064826111a0565b61163f565b3880610467565b9091506107855750813b15155b388061045f565b60011461077e565b634e487b7160e01b89526011600452602489fd5b90506020813d6020116107d0575b816107bc602093836111a0565b810103126107cb575138610406565b600080fd5b3d91506107af565b6040513d8b823e3d90fd5b6020813d602011610813575b816107fc602093836111a0565b8101031261080f575180151581146103d4575b8880fd5b3d91506107ef565b90506020813d602011610859575b81610836602093836111a0565b8101031261085557516001600160a01b03811681036108555738610395565b8780fd5b3d9150610829565b6040513d8a823e3d90fd5b506020823d602011610898575b81610886602093836111a0565b810103126107cb5761033e9151610334565b3d9150610879565b876108ad919892986111a0565b9538610309565b90506020813d6020116108de575b816108cf602093836111a0565b810103126106f15751386102b4565b3d91506108c2565b60405162461bcd60e51b815260206004820152603060248201527f427269646765577261703a206e6f7420656e6f7567682045544820746f20636f60448201526f1d995c881d1a194819d85cc818dbdcdd60821b6064820152608490fd5b506020813d602011610974575b8161095e602093836111a0565b8101031261097057610256905161024c565b8480fd5b3d9150610951565b6040513d87823e3d90fd5b60405162461bcd60e51b815260206004820152601f60248201527f427269646765577261703a20746f6b656e206e6f7420737570706f72746564006044820152606490fd5b633ee5aeb560e01b8252600482fd5b503461013757604036600319011261013757610a216004356109fb611136565b90610a1c610a1782600052600060205260016040600020015490565b611383565b611449565b5080f35b50346101375760203660031901126101375760209060ff906040906001600160a01b03610a50611120565b168152600284522054166040519015158152f35b5034610137578060031936011261013757610a7d611330565b8080808047818115610ac7575b3390f115610abb5733817f84dc653e543190fda51ad370aa0334e146df4dc9a60dcc43bf1f005b37b785b38180a380f35b604051903d90823e3d90fd5b506108fc610a8a565b5034610137576020610aea610ae43661114c565b916111d8565b604051908152f35b5034610137578060031936011261013757602090604051908152f35b503461013757806003193601126101375760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b50346101375760403660031901126101375760ff6040602092610b6a611136565b60043582528185528282206001600160a01b03909116825284522054604051911615158152f35b50346101375780600319360112610137576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b5034610137576020610aea610bed610ae43661114c565b6114cb565b503461013757610c01366110cc565b90610c0a6112be565b825b828110610c17578380f35b6001600160a01b03610c32610c2d838686611166565b61118c565b1615610caa576001906001600160a01b03610c51610c2d838787611166565b16855260026020526040852060ff198154169055818060a01b03610c79610c2d838787611166565b167fd86c88b4a367d9b81a6e00c9d3f7d01657bffef358fa8968c91c045ae99f0d526020604051888152a201610c0c565b60405162461bcd60e51b815260206004820152602b60248201527f64697361626c65546f6b656e733a20746f6b656e2063616e6e6f74206265207a60448201526a65726f206164647265737360a81b6064820152608490fd5b503461013757604036600319011261013757610d1d611136565b336001600160a01b03821603610d3957610a2190600435611449565b63334bd91960e11b8252600482fd5b50346101375780600319360112610137576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b503461013757604036600319011261013757610a21600435610dad611136565b90610dc9610a1782600052600060205260016040600020015490565b6113be565b5034610137576020366003190112610137576020610aea600435600052600060205260016040600020015490565b503461013757604036600319011261013757610e16611120565b610e1e611136565b90610e27611330565b6040516370a0823160e01b81523060048201526001600160a01b03919091169190602081602481865afa908115610f11578491610ed9575b5060405163a9059cbb60e01b60208201526001600160a01b03831660248201526044810191909152610ea890610ea281606481015b03601f1981018352826111a0565b8361163f565b6001600160a01b0316907f84dc653e543190fda51ad370aa0334e146df4dc9a60dcc43bf1f005b37b785b38380a380f35b90506020813d602011610f09575b81610ef4602093836111a0565b81010312610f055751610e94610e5f565b8380fd5b3d9150610ee7565b6040513d86823e3d90fd5b50346101375780600319360112610137576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b503461013757610f70366110cc565b90610f796112be565b825b828110610f86578380f35b6001600160a01b03610f9c610c2d838686611166565b1615611016576001906001600160a01b03610fbb610c2d838787611166565b1685526002602052604085208260ff19825416179055818060a01b03610fe5610c2d838787611166565b167fd86c88b4a367d9b81a6e00c9d3f7d01657bffef358fa8968c91c045ae99f0d526020604051858152a201610f7b565b60405162461bcd60e51b815260206004820152602b60248201527f737570706f7274546f6b656e733a20746f6b656e2063616e6e6f74206265207a60448201526a65726f206164647265737360a81b6064820152608490fd5b9050346110c85760203660031901126110c85760043563ffffffff60e01b81168091036110c45760209250637965db0b60e01b81149081156110b3575b5015158152f35b6301ffc9a760e01b149050386110ac565b8280fd5b5080fd5b9060206003198301126107cb5760043567ffffffffffffffff81116107cb57826023820112156107cb5780600401359267ffffffffffffffff84116107cb5760248460051b830101116107cb576024019190565b600435906001600160a01b03821682036107cb57565b602435906001600160a01b03821682036107cb57565b60609060031901126107cb57600435906024359060443590565b91908110156111765760051b0190565b634e487b7160e01b600052603260045260246000fd5b356001600160a01b03811681036107cb5790565b90601f8019910116810190811067ffffffffffffffff8211176111c257604052565b634e487b7160e01b600052604160045260246000fd5b919060405192631c588c9d60e21b84527f0000000000000000000000000000000000000000000000000000000000000000600485015260248401526044830152606482015260208160848160018060a01b037f0000000000000000000000000000000000000000000000000000000000000000165afa90811561128f57600091611260575090565b90506020813d602011611287575b8161127b602093836111a0565b810103126107cb575190565b3d915061126e565b6040513d6000823e3d90fd5b919082039182116112a857565b634e487b7160e01b600052601160045260246000fd5b3360009081527fee57cd81e84075558e8fcc182a1f4393f91fc97f963a136e66b7f949a62f319f602052604090205460ff16156112f757565b63e2517d3f60e01b600052336004527f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92960245260446000fd5b3360009081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff161561136957565b63e2517d3f60e01b60005233600452600060245260446000fd5b60008181526020818152604080832033845290915290205460ff16156113a65750565b63e2517d3f60e01b6000523360045260245260446000fd5b6000818152602081815260408083206001600160a01b038616845290915290205460ff16611442576000818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b5050600090565b6000818152602081815260408083206001600160a01b038616845290915290205460ff1615611442576000818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b6040516318160ddd60e01b8152906020826004817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa91821561128f5760009261160b575b5060405163dcd2af1760e01b81529060208260048160007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165af191821561128f576000926115d7575b5081156115d1578181029181830414901517156112a857620f4240810290808204620f424014901517156112a857620e7ef0820291808304620e7ef014901517156112a85781156115bb570490565b634e487b7160e01b600052601260045260246000fd5b91505090565b90916020823d602011611603575b816115f2602093836111a0565b81010312610137575051903861156c565b3d91506115e5565b90916020823d602011611637575b81611626602093836111a0565b81010312610137575051903861151a565b3d9150611619565b906000602091828151910182855af11561128f576000513d61169157506001600160a01b0381163b155b6116705750565b635274afe760e01b60009081526001600160a01b0391909116600452602490fd5b6001141561166956fea26469706673582212209b602ca17550842597218e9dde5ebd9785b51d34095b43aa91e2aa0feea62da764736f6c634300081b00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0dee57cd81e84075558e8fcc182a1f4393f91fc97f963a136e66b7f949a62f319fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb500000000000000000000000003f5be358fc2c4df88723a63148bd829b8aa5c910000000000000000000000000000000000000000000000000000000000000541000000000000000000000000303a465b659cbb0ab36ee643ea362c509eeb52130000000000000000000000000c78af0fb1f4e09df9421ba9abd75c4dc018db050000000000000000000000001c21d5b5bd5d2b859d1d5b12fd72db5ff7e98e92