0 txs
1 call
constructor
No constructor.
functions
calculateKeeperCosts
viewfunction calculateKeeperCosts(DataStore dataStore) view returns (uint256, uint256)
computeTransfers
purefunction computeTransfers(uint256[] balances, uint256[] targetBalances) pure returns (tuple[])
retrieveChainIds
viewfunction retrieveChainIds(DataStore dataStore) view returns (uint256[])
events
TokenTransferReverted
event TokenTransferReverted(string reason, bytes returndata)
errors
BridgingBalanceArrayMismatch
error BridgingBalanceArrayMismatch(uint256 balancesLength, uint256 targetBalancesLength)
EmptyHoldingAddress
error EmptyHoldingAddress()
EmptyReceiver
error EmptyReceiver()
EmptyTokenTranferGasLimit
error EmptyTokenTranferGasLimit(address token)
KeeperArrayLengthMismatch
error KeeperArrayLengthMismatch(uint256 keepersLength, uint256 keeperTargetBalancesLength, uint256 keeperVersionsLength)
TokenTransferError
error TokenTransferError(address token, address receiver, uint256 amount)
creation bytecode
0x6118ff610039600b82828239805160001a607314602c57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100615760003560e01c80633121ce9b146100665780634fb811e91461008857806352203905146100b557806357ed18eb146100d557806358b42825146100f5575b600080fd5b81801561007257600080fd5b5061008661008136600461116c565b610115565b005b61009b6100963660046111bd565b610127565b604080519283526020830191909152015b60405180910390f35b8180156100c157600080fd5b506100866100d03660046111da565b610409565b6100e86100e33660046111bd565b610419565b6040516100ac919061121b565b610108610103366004611334565b610502565b6040516100ac919061139b565b61012184848484610880565b50505050565b6000806000836001600160a01b0316635948f73360405160200161014a906113ef565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161017e91815260200190565b600060405180830381865afa15801561019b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101c39190810190611425565b90506000846001600160a01b03166386ac6bdf6040516020016101e5906113ef565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161021991815260200190565b600060405180830381865afa158015610236573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261025e91908101906114c3565b90506000856001600160a01b031663116bb929604051602001610280906113ef565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016102b491815260200190565b600060405180830381865afa1580156102d1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102f99190810190611563565b90508151835114158061030e57508051835114155b1561034857825182518251604051630fcc1b9160e11b81526004810193909352602483019190915260448201526064015b60405180910390fd5b60008060005b85518110156103fb57600085828151811061036b5761036b6115f5565b602002602001015190506000878381518110610389576103896115f5565b60200260200101516001600160a01b0316319050808211156103f15760006103b18284611621565b90508684815181106103c5576103c56115f5565b60200260200101516103e2576103db8187611634565b95506103ef565b6103ec8186611634565b94505b505b505060010161034e565b509097909650945050505050565b610414838383610ad3565b505050565b60606000826001600160a01b03166386ac6bdf6040516020016104689060208082526018908201527711915157d11254d5149250955513d497d0d210525397d25160421b604082015260600190565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161049c91815260200190565b600060405180830381865afa1580156104b9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104e191908101906114c3565b90506104fc816000600184516104f79190611621565b610bdf565b92915050565b8151815160609190811461053657825160405163bd3b23af60e01b815261033f918391600401918252602082015260400190565b6000816001600160401b038111156105505761055061125e565b604051908082528060200260200182016040528015610579578160200160208202803683370190505b50905060005b828110156105ea57858181518110610599576105996115f5565b60200260200101518582815181106105b3576105b36115f5565b60200260200101516105c59190611647565b8282815181106105d7576105d76115f5565b602090810291909101015260010161057f565b5060006105f7838061166e565b6001600160401b0381111561060e5761060e61125e565b60405190808252806020026020018201604052801561064757816020015b610634611136565b81526020019060019003908161062c5790505b5090506000805b848110156107d357600084828151811061066a5761066a6115f5565b602002602001015113156107cb5760005b85811080156106a357506000858381518110610699576106996115f5565b6020026020010151135b156107c95760008582815181106106bc576106bc6115f5565b602002602001015112156107b75760006107118684815181106106e1576106e16115f5565b60200260200101518784815181106106fb576106fb6115f5565b602002602001015161070c90611685565b610d51565b905080156107b557604051806060016040528083815260200184815260200182815250858580610740906116a1565b965081518110610752576107526115f5565b602002602001018190525080868481518110610770576107706115f5565b602002602001018181516107849190611647565b9052508551819087908490811061079d5761079d6115f5565b602002602001018181516107b191906116ba565b9052505b505b806107c1816116a1565b91505061067b565b505b60010161064e565b506000816001600160401b038111156107ee576107ee61125e565b60405190808252806020026020018201604052801561082757816020015b610814611136565b81526020019060019003908161080c5790505b50905060005b8281101561087457838181518110610847576108476115f5565b6020026020010151828281518110610861576108616115f5565b602090810291909101015260010161082d565b50979650505050505050565b80156101215761088f82610d69565b6000846001600160a01b031663bd02d0f56108a986610d93565b6040518263ffffffff1660e01b81526004016108c791815260200190565b602060405180830381865afa1580156108e4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090891906116e2565b90508060000361093657604051634fe14bfd60e11b81526001600160a01b038516600482015260240161033f565b600061094485858585610e1b565b5090508015610954575050610121565b6000866001600160a01b03166321f8a721604051602001610998906020808252600f908201526e484f4c44494e475f4144445245535360881b604082015260600190565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016109cc91815260200190565b602060405180830381865afa1580156109e9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a0d91906116fb565b90506001600160a01b038116610a3657604051633a6de2f560e21b815260040160405180910390fd5b600080610a4588848888610e1b565b915091508115610a59575050505050610121565b6000610a6482610f76565b5090507fc9f14d9a0a9b46470c7c0b6c508f8283abaab7f795f153953c58cd4250824dae8183604051610a98929190611768565b60405180910390a160405163012f3b8f60e71b81526001600160a01b03808b166004830152891660248201526044810188905260640161033f565b80600003610ae057505050565b610ae982610d69565b6000836001600160a01b031663bd02d0f5604051602001610b3b906020808252601f908201527f4e41544956455f544f4b454e5f5452414e534645525f4741535f4c494d495400604082015260600190565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b8152600401610b6f91815260200190565b602060405180830381865afa158015610b8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb091906116e2565b90506000806000806000868887f190508015610bcd575050505050565b610bd8858585611006565b5050505050565b81816000856002610bf08585611647565b610bfa9190611796565b610c0490876116ba565b81518110610c1457610c146115f5565b602002602001015190505b818313610d23575b80868481518110610c3a57610c3a6115f5565b60200260200101511015610c5a5782610c52816117d2565b935050610c27565b80868381518110610c6d57610c6d6115f5565b60200260200101511115610c8d5781610c85816117ea565b925050610c5a565b818313610d1e57858281518110610ca657610ca66115f5565b6020026020010151868481518110610cc057610cc06115f5565b6020026020010151878581518110610cda57610cda6115f5565b60200260200101888581518110610cf357610cf36115f5565b60209081029190910101919091525282610d0c816117d2565b9350508180610d1a906117ea565b9250505b610c1f565b81851215610d3657610d36868684610bdf565b83831215610d4957610d49868486610bdf565b505050505050565b6000818312610d605781610d62565b825b9392505050565b6001600160a01b038116610d905760405163d551823d60e01b815260040160405180910390fd5b50565b6000604051602001610dd1906020808252601890820152771513d2d15397d514905394d1915497d1d054d7d31253525560421b604082015260600190565b60408051601f198184030181528282528051602091820120908301526001600160a01b03841690820152606001604051602081830303815290604052805190602001209050919050565b604080516001600160a01b038581166024830152604480830186905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b17905291516000926060929184918291908a16908790610e80908690611807565b60006040518083038160008787f1925050503d8060008114610ebe576040519150601f19603f3d011682016040523d82523d6000602084013e610ec3565b606091505b50915091508115610f64578051600003610f21576001600160a01b0389163b610f215760006040518060400160405280601481526020017310d85b1b081d1bc81b9bdb8b58dbdb9d1c9858dd60621b81525094509450505050610f6d565b60008151118015610f43575080806020019051810190610f419190611823565b155b15610f5657600094509250610f6d915050565b600194509250610f6d915050565b60009450925050505b94509492505050565b60606000604483511015610f9d575050604080516020810190915260008082529092909150565b6000610faa846020015190565b90506307b9e43360e51b6001600160e01b0319821601610fe95760048401935083806020019051810190610fde919061183e565b946001945092505050565b600060405180602001604052806000815250909250925050915091565b8060000361101357505050565b61101c82610d69565b600061102784611089565b9050806001600160a01b031663d0e30db0836040518263ffffffff1660e01b81526004016000604051808303818588803b15801561106457600080fd5b505af1158015611078573d6000803e3d6000fd5b505050505061012184828585610880565b6000816001600160a01b03166321f8a7216040516020016110c19060208082526003908201526215d39560ea1b604082015260600190565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016110f591815260200190565b602060405180830381865afa158015611112573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104fc91906116fb565b60405180606001604052806000815260200160008152602001600081525090565b6001600160a01b0381168114610d9057600080fd5b6000806000806080858703121561118257600080fd5b843561118d81611157565b9350602085013561119d81611157565b925060408501356111ad81611157565b9396929550929360600135925050565b6000602082840312156111cf57600080fd5b8135610d6281611157565b6000806000606084860312156111ef57600080fd5b83356111fa81611157565b9250602084013561120a81611157565b929592945050506040919091013590565b602080825282518282018190526000918401906040840190835b81811015611253578351835260209384019390920191600101611235565b509095945050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561129c5761129c61125e565b604052919050565b60006001600160401b038211156112bd576112bd61125e565b5060051b60200190565b600082601f8301126112d857600080fd5b81356112eb6112e6826112a4565b611274565b8082825260208201915060208360051b86010192508583111561130d57600080fd5b602085015b8381101561132a578035835260209283019201611312565b5095945050505050565b6000806040838503121561134757600080fd5b82356001600160401b0381111561135d57600080fd5b611369858286016112c7565b92505060208301356001600160401b0381111561138557600080fd5b611391858286016112c7565b9150509250929050565b602080825282518282018190526000918401906040840190835b81811015611253578351805184526020810151602085015260408101516040850152506060830192506020840193506001810190506113b5565b6020808252601c908201527b4645455f4449535452494255544f525f4b45455045525f434f53545360201b604082015260600190565b60006020828403121561143757600080fd5b81516001600160401b0381111561144d57600080fd5b8201601f8101841361145e57600080fd5b805161146c6112e6826112a4565b8082825260208201915060208360051b85010192508683111561148e57600080fd5b6020840193505b828410156114b95783516114a881611157565b825260209384019390910190611495565b9695505050505050565b6000602082840312156114d557600080fd5b81516001600160401b038111156114eb57600080fd5b8201601f810184136114fc57600080fd5b805161150a6112e6826112a4565b8082825260208201915060208360051b85010192508683111561152c57600080fd5b6020840193505b828410156114b9578351825260209384019390910190611533565b8051801515811461155e57600080fd5b919050565b60006020828403121561157557600080fd5b81516001600160401b0381111561158b57600080fd5b8201601f8101841361159c57600080fd5b80516115aa6112e6826112a4565b8082825260208201915060208360051b8501019250868311156115cc57600080fd5b6020840193505b828410156114b9576115e48461154e565b8252602093840193909101906115d3565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156104fc576104fc61160b565b808201808211156104fc576104fc61160b565b81810360008312801583831316838312821617156116675761166761160b565b5092915050565b80820281158282048414176104fc576104fc61160b565b6000600160ff1b820161169a5761169a61160b565b5060000390565b6000600182016116b3576116b361160b565b5060010190565b80820182811260008312801582168215821617156116da576116da61160b565b505092915050565b6000602082840312156116f457600080fd5b5051919050565b60006020828403121561170d57600080fd5b8151610d6281611157565b60005b8381101561173357818101518382015260200161171b565b50506000910152565b60008151808452611754816020860160208601611718565b601f01601f19169290920160200192915050565b60408152600061177b604083018561173c565b828103602084015261178d818561173c565b95945050505050565b6000826117b357634e487b7160e01b600052601260045260246000fd5b600160ff1b8214600019841416156117cd576117cd61160b565b500590565b60006001600160ff1b0182016116b3576116b361160b565b6000600160ff1b82016117ff576117ff61160b565b506000190190565b60008251611819818460208701611718565b9190910192915050565b60006020828403121561183557600080fd5b610d628261154e565b60006020828403121561185057600080fd5b81516001600160401b0381111561186657600080fd5b8201601f8101841361187757600080fd5b80516001600160401b038111156118905761189061125e565b6118a3601f8201601f1916602001611274565b8181528560208385010111156118b857600080fd5b61178d82602083016020860161171856fea264697066735822122019e217aa2aca7ef407f1ddb37c41f51f77441ac26ba6d222f2e432dfb36db03464736f6c634300081d0033