0 txs
0 calls
constructor
constructor(address _owner, address _solverSigner)
functions
NATIVE_TOKEN_ADDRESS
viewfunction NATIVE_TOKEN_ADDRESS() view returns (address)
nominee
viewfunction nominee() view returns (address)
nonceUsed
viewfunction nonceUsed(uint256 nonce) view returns (bool isNonceUsed)
owner
viewfunction owner() view returns (address)
SINGLE_OUTPUT_IMPL_ID
viewfunction SINGLE_OUTPUT_IMPL_ID() view returns (uint8)
SWAP_REQUEST_IMPL_ID
viewfunction SWAP_REQUEST_IMPL_ID() view returns (uint8)
verifySignature
viewfunction verifySignature(bytes32 messageHash, bytes signature) view
claimOwner
nonpayablefunction claimOwner()
nominateOwner
nonpayablefunction nominateOwner(address nominee_)
performActions
nonpayablefunction performActions(uint256 nonce, bytes[] approvals, tuple[] actions, bytes signature)
performBatchFulfilment
nonpayablefunction performBatchFulfilment(uint256 nonce, bytes[] approvals, address bungeeGateway, uint256 value, tuple[] swapActions, tuple[] fulfilExecs, bytes signature)
performExtraction
nonpayablefunction performExtraction(uint256 nonce, tuple action, bytes signature)
performFulfilment
nonpayablefunction performFulfilment(uint256 nonce, bytes[] approvals, address bungeeGateway, uint256 value, tuple swapActionData, tuple fulfilExec, bytes signature)
performSettlement
nonpayablefunction performSettlement(uint256 nonce, tuple action, bytes signature)
rescueFunds
nonpayablefunction rescueFunds(address token_, address rescueTo_, uint256 amount_)
setSolverSigner
nonpayablefunction setSolverSigner(address _solverSigner)
events
OwnerClaimed
event OwnerClaimed(address indexed claimer)
OwnerNominated
event OwnerNominated(address indexed nominee)
errors
ActionFailed
error ActionFailed()
ActionsFailed
error ActionsFailed(uint256 index)
InvalidCaller
error InvalidCaller()
InvalidNonce
error InvalidNonce()
InvalidSigner
error InvalidSigner()
InvalidSwapActions
error InvalidSwapActions()
InvalidTokenAddress
error InvalidTokenAddress()
OnlyNominee
error OnlyNominee()
OnlyOwner
error OnlyOwner()
SwapActionFailed
error SwapActionFailed(uint256 index)
SwapOutputInsufficient
error SwapOutputInsufficient(uint256 index)
TransferFailed
error TransferFailed()
ZeroAddress
error ZeroAddress()
creation bytecode
0x60806040523480156200001157600080fd5b506040516200223a3803806200223a8339810160408190526200003491620000d8565b81620000408162000068565b50600280546001600160a01b0319166001600160a01b03929092169190911790555062000110565b600080546001600160a01b0383166001600160a01b0319918216811783556001805490921690915560405190917ffbe19c9b601f5ee90b44c7390f3fa2319eba01762d34ee372aeafd59b25c7f8791a250565b80516001600160a01b0381168114620000d357600080fd5b919050565b60008060408385031215620000ec57600080fd5b620000f783620000bb565b91506200010760208401620000bb565b90509250929050565b61211a80620001206000396000f3fe6080604052600436106100eb5760003560e01c8063823d008811610084578063daca6f7811610056578063daca6f781461029a578063df2ebdbb146102ba578063e4a9b20e14610187578063eca2a317146102e257005b8063823d00881461020757806387cd44b81461021c5780638da5cb5b1461023c57806394d0d3a61461025a57005b8063541e3415116100bd578063541e3415146101875780635b94db27146101a75780636ccae054146101c7578063760ed278146101e757005b806320f99c0a146100f45780633bd1adec1461012b5780633cbc7eaa14610140578063444eac451461016757005b366100f257005b005b34801561010057600080fd5b506001546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b34801561013757600080fd5b506100f2610302565b34801561014c57600080fd5b50610155600181565b60405160ff9091168152602001610122565b34801561017357600080fd5b506100f2610182366004611119565b610338565b34801561019357600080fd5b506100f26101a236600461119d565b610385565b3480156101b357600080fd5b506100f26101c2366004611119565b61040d565b3480156101d357600080fd5b506100f26101e236600461120c565b610482565b3480156101f357600080fd5b506100f2610202366004611291565b6104bd565b34801561021357600080fd5b50610155600281565b34801561022857600080fd5b506100f2610237366004611738565b6105f5565b34801561024857600080fd5b506000546001600160a01b031661010e565b34801561026657600080fd5b5061028a61027536600461181f565b60036020526000908152604090205460ff1681565b6040519015158152602001610122565b3480156102a657600080fd5b506100f26102b5366004611838565b6109be565b3480156102c657600080fd5b5061010e73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b3480156102ee57600080fd5b506100f26102fd366004611883565b610a21565b6001546001600160a01b0316331461032d57604051637c91ccdd60e01b815260040160405180910390fd5b61033633610d24565b565b6000546001600160a01b0316331461036357604051635fc483c560e01b815260040160405180910390fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6103bc4630868660405160200161039f9493929190611a1f565b6040516020818303038152906040528051906020012083836109be565b836000526003602052604060002060ff815416156103e25763756688fe6000526004601cfd5b6001905560006103f184610d77565b9050806104065763080a1c276000526004601cfd5b5050505050565b6000546001600160a01b0316331461043857604051635fc483c560e01b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040517f906a1c6bd7e3091ea86693dd029a831c19049ce77f1dce2ce0bab1cacbabce2290600090a250565b6000546001600160a01b031633146104ad57604051635fc483c560e01b815260040160405180910390fd5b6104b8838383610da4565b505050565b6104dd4630898989898960405160200161039f9796959493929190611ad2565b866000526003602052604060002060ff815416156105035763756688fe6000526004601cfd5b6001905584156105775760005b8581101561057557600080600089898581811061052f5761052f611b65565b90506020028101906105419190611b7b565b81019061054e919061120c565b92509250925061055f838383610e30565b505050808061056d90611bd7565b915050610510565b505b60005b838110156105eb5760006105b086868481811061059957610599611b65565b90506020028101906105ab9190611bf0565b610d77565b9050806105d85760405163505737f760e11b8152600481018390526024015b60405180910390fd5b50806105e381611bd7565b91505061057a565b5050505050505050565b61061b46308c8c8c8c8c8c8c8c60405160200161039f9a99989796959493929190611e8f565b896000526003602052604060002060ff815416156106415763756688fe6000526004601cfd5b6001905587156106b55760005b888110156106b35760008060008c8c8581811061066d5761066d611b65565b905060200281019061067f9190611b7b565b81019061068c919061120c565b92509250925061069d838383610e30565b50505080806106ab90611bd7565b91505061064e565b505b82518414156000851116156106d2576391433bb26000526004601cfd5b60005b848110156108fc57368686838181106106f0576106f0611b65565b90506020028101906107029190611f78565b9050600073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b03168683600001358151811061073a5761073a611b65565b6020026020010151600001516000015161016001516001600160a01b031614905060006107918784600001358151811061077657610776611b65565b60200260200101516000015160000151610160015130610e80565b905060006107a56105ab6020860186611bf0565b9050806107c8576040516387eda65f60e01b8152600481018690526024016105cf565b6000826107e48a87600001358151811061077657610776611b65565b6107ee9190611f8e565b9050808986600001358151811061080757610807611b65565b6020026020010151604001511115610835576040516370126e4560e01b8152600481018790526024016105cf565b808986600001358151811061084c5761084c611b65565b6020026020010151604001818152505083156108e4578885600001358151811061087857610878611b65565b6020026020010151608001518161088f9190611f8e565b610899908d611fa1565b9b50888560000135815181106108b1576108b1611b65565b602002602001015160400151898660000135815181106108d3576108d3611b65565b602002602001015160800181815250505b505050505080806108f490611bd7565b9150506106d5565b50866001600160a01b031663276a2ced876001866040516024016109209190611fb4565b60408051601f198184030181529181526020820180516001600160e01b031663b8ae664960e01b179052516001600160e01b031960e086901b16815261096a929190600401611fc7565b60006040518083038185885af1158015610988573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f191682016040526109b19190810190611fe3565b5050505050505050505050565b6109fe8383838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610f2b92505050565b6002546001600160a01b039081169116146104b85763815e1d646000526004601cfd5b610a4546308b8b8b8b8b8b8b60405160200161039f99989796959493929190612050565b886000526003602052604060002060ff81541615610a6b5763756688fe6000526004601cfd5b600190558615610adf5760005b87811015610add5760008060008b8b85818110610a9757610a97611b65565b9050602002810190610aa99190611b7b565b810190610ab6919061120c565b925092509250610ac7838383610e30565b5050508080610ad590611bd7565b915050610a78565b505b6000610aee6020860186611119565b6001600160a01b031614610bca5782515161016001516001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1490600090610b329030610e80565b90506000610b3f87610d77565b905080610b62576040516387eda65f60e01b8152600060048201526024016105cf565b85515161016001516000908390610b799030610e80565b610b839190611f8e565b90508087604001511115610bad576040516370126e4560e01b8152600060048201526024016105cf565b604087018190528315610bc557608087018190529750875b505050505b604080516001808252818301909252600091816020015b610ccd60408051610360810190915260006101a082018181526101c083018290526101e08301829052610200830182905261022083018290526102408301829052610260830182905261028083018290526102a083018290526102c083018290526102e0830182905261030083018290526103208301829052610340830182905260a0830190815260c0830182905260e0830182905261010083018290526060610120840181905261014084018390526101608401526101808301919091528190815260200160006001600160a01b031681526020016000815260200160608152602001600081525090565b815260200190600190039081610be15790505090508381600081518110610cf657610cf6611b65565b6020026020010181905250866001600160a01b031663276a2ced876001846040516024016109209190611fb4565b600080546001600160a01b0383166001600160a01b0319918216811783556001805490921690915560405190917ffbe19c9b601f5ee90b44c7390f3fa2319eba01762d34ee372aeafd59b25c7f8791a250565b60006060820135604051816040850135602086010182376000808383602088013588355af1949350505050565b6001600160a01b038216610dcb5760405163d92e233d60e01b815260040160405180910390fd5b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03841601610dfa576104b88282610f99565b826001600160a01b03163b600003610e2557604051630f58058360e11b815260040160405180910390fd5b6104b8838383610fb9565b816014528060345263095ea7b360601b60005260206000604460106000875af18060016000511416610e7557803d853b151710610e7557633e3f8f736000526004601cfd5b506000603452505050565b600073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03841601610eb857506001600160a01b03811631610f25565b6040516370a0823160e01b81526001600160a01b0383811660048301528416906370a0823190602401602060405180830381865afa158015610efe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f2291906120cb565b90505b92915050565b600080610f85846040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9050610f918184610ffe565b949350505050565b60003860003884865af1610fb55763b12d13eb6000526004601cfd5b5050565b816014528060345263a9059cbb60601b60005260206000604460106000875af18060016000511416610e7557803d853b151710610e75576390b8ec186000526004601cfd5b60008060008061100d8561107d565b6040805160008152602081018083528b905260ff8316918101919091526060810184905260808101839052929550909350915060019060a0016020604051602081039080840390855afa158015611068573d6000803e3d6000fd5b5050604051601f190151979650505050505050565b600080600083516041146110d35760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964207369676e6174757265206c656e677468000000000000000060448201526064016105cf565b50505060208101516040820151606090920151909260009190911a90565b6001600160a01b038116811461110657600080fd5b50565b8035611114816110f1565b919050565b60006020828403121561112b57600080fd5b8135611136816110f1565b9392505050565b60006060828403121561114f57600080fd5b50919050565b60008083601f84011261116757600080fd5b5081356001600160401b0381111561117e57600080fd5b60208301915083602082850101111561119657600080fd5b9250929050565b600080600080606085870312156111b357600080fd5b8435935060208501356001600160401b03808211156111d157600080fd5b6111dd8883890161113d565b945060408701359150808211156111f357600080fd5b5061120087828801611155565b95989497509550505050565b60008060006060848603121561122157600080fd5b833561122c816110f1565b9250602084013561123c816110f1565b929592945050506040919091013590565b60008083601f84011261125f57600080fd5b5081356001600160401b0381111561127657600080fd5b6020830191508360208260051b850101111561119657600080fd5b60008060008060008060006080888a0312156112ac57600080fd5b8735965060208801356001600160401b03808211156112ca57600080fd5b6112d68b838c0161124d565b909850965060408a01359150808211156112ef57600080fd5b6112fb8b838c0161124d565b909650945060608a013591508082111561131457600080fd5b506113218a828b01611155565b989b979a50959850939692959293505050565b634e487b7160e01b600052604160045260246000fd5b6040516101c081016001600160401b038111828210171561136d5761136d611334565b60405290565b60405160a081016001600160401b038111828210171561136d5761136d611334565b60405161010081016001600160401b038111828210171561136d5761136d611334565b604051601f8201601f191681016001600160401b03811182821017156113e0576113e0611334565b604052919050565b803563ffffffff8116811461111457600080fd5b60006101c0828403121561140f57600080fd5b61141761134a565b90508135815260208201356020820152604082013560408201526060820135606082015261144760808301611109565b608082015261145860a08301611109565b60a082015261146960c08301611109565b60c082015261147a60e08301611109565b60e082015261010061148d8184016113e8565b9082015261012061149f838201611109565b9082015261014082810135908201526101606114bc818401611109565b9082015261018082810135908201526101a09182013591810191909152919050565b60006001600160401b038211156114f7576114f7611334565b50601f01601f191660200190565b600082601f83011261151657600080fd5b8135611529611524826114de565b6113b8565b81815284602083860101111561153e57600080fd5b816020850160208301376000918101602001919091529392505050565b600060a0828403121561156d57600080fd5b611575611373565b905081356001600160401b038082111561158e57600080fd5b908301906102a082860312156115a357600080fd5b6115ab611395565b6115b586846113fc565b81526115c46101c08401611109565b60208201526101e083013560408201526102008301356060820152610220830135828111156115f257600080fd5b6115fe87828601611505565b60808301525061024083013560a08201526102608301358281111561162257600080fd5b61162e87828601611505565b60c0830152506116416102808401611109565b60e0820152835261165460208501611109565b602084015260408401356040840152606084013591508082111561167757600080fd5b5061168484828501611505565b6060830152506080820135608082015292915050565b600082601f8301126116ab57600080fd5b813560206001600160401b03808311156116c7576116c7611334565b8260051b6116d68382016113b8565b93845285810183019383810190888611156116f057600080fd5b84880192505b8583101561172c5782358481111561170e5760008081fd5b61171c8a87838c010161155b565b83525091840191908401906116f6565b98975050505050505050565b60008060008060008060008060008060e08b8d03121561175757600080fd5b8a35995060208b01356001600160401b038082111561177557600080fd5b6117818e838f0161124d565b909b50995089915061179560408e01611109565b985060608d0135975060808d01359150808211156117b257600080fd5b6117be8e838f0161124d565b909750955060a08d01359150808211156117d757600080fd5b6117e38e838f0161169a565b945060c08d01359150808211156117f957600080fd5b506118068d828e01611155565b915080935050809150509295989b9194979a5092959850565b60006020828403121561183157600080fd5b5035919050565b60008060006040848603121561184d57600080fd5b8335925060208401356001600160401b0381111561186a57600080fd5b61187686828701611155565b9497909650939450505050565b600080600080600080600080600060e08a8c0312156118a157600080fd5b8935985060208a01356001600160401b03808211156118bf57600080fd5b6118cb8d838e0161124d565b909a5098508891506118df60408d01611109565b975060608c0135965060808c01359150808211156118fc57600080fd5b6119088d838e0161113d565b955060a08c013591508082111561191e57600080fd5b61192a8d838e0161155b565b945060c08c013591508082111561194057600080fd5b5061194d8c828d01611155565b915080935050809150509295985092959850929598565b6000808335601e1984360301811261197b57600080fd5b83016020810192503590506001600160401b0381111561199a57600080fd5b80360382131561119657600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b600081356119df816110f1565b6001600160a01b0316835260208281013590840152611a016040830183611964565b60606040860152611a166060860182846119a9565b95945050505050565b84815260018060a01b0384166020820152826040820152608060608201526000611a4c60808301846119d2565b9695505050505050565b81835260006020808501808196508560051b810191508460005b87811015611aa6578284038952611a878288611964565b611a928682846119a9565b9a87019a9550505090840190600101611a70565b5091979650505050505050565b60008235605e19833603018112611ac957600080fd5b90910192915050565b8781526000602060018060a01b0389168184015287604084015260a06060840152611b0160a084018789611a56565b8381036080850152848152818101600586901b820183018760005b88811015611b5257848303601f19018452611b4083611b3b848d611ab3565b6119d2565b93860193925090850190600101611b1c565b50909d9c50505050505050505050505050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611b9257600080fd5b8301803591506001600160401b03821115611bac57600080fd5b60200191503681900382131561119657600080fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611be957611be9611bc1565b5060010190565b60008235605e19833603018112611c0657600080fd5b9190910192915050565b805182526020810151602083015260408101516040830152606081015160608301526080810151611c4c60808401826001600160a01b03169052565b5060a0810151611c6760a08401826001600160a01b03169052565b5060c0810151611c8260c08401826001600160a01b03169052565b5060e0810151611c9d60e08401826001600160a01b03169052565b506101008181015163ffffffff1690830152610120808201516001600160a01b03908116918401919091526101408083015190840152610160808301519091169083015261018080820151908301526101a090810151910152565b60005b83811015611d13578181015183820152602001611cfb565b50506000910152565b60008151808452611d34816020860160208601611cf8565b601f01601f19169290920160200192915050565b6000815160a08452611d5e60a085018251611c10565b60208101516001600160a01b0316610260850152604081015161028085015260608101516102a08086019190915260808201516102c0860191909152611da8610340860182611d1c565b905060a08201516102e086015260c0820151609f1986830301610300870152611dd18282611d1c565b91505060e08201519150611df16103208601836001600160a01b03169052565b60208401519150611e0d60208601836001600160a01b03169052565b60408401516040860152606084015191508481036060860152611e308183611d1c565b915050608083015160808501528091505092915050565b600081518084526020808501808196508360051b8101915082860160005b85811015611aa6578284038952611e7d848351611d48565b98850198935090840190600101611e65565b60006101008c8352602060018060a01b03808e168286015260408d81870152836060870152611ec18487018d8f611a56565b918b16608087015260a086018a905285820360c087015287825290925081830190600588901b84018301896000805b8b811015611f4d57878403601f190186528235368e9003603e19018112611f15578283fd5b8d0180358552611f2788820182611ab3565b90508588860152611f3a868601826119d2565b9688019694505091860191600101611ef0565b50505086810360e0880152611f628189611e47565b955050505050509b9a5050505050505050505050565b60008235603e19833603018112611c0657600080fd5b81810381811115610f2557610f25611bc1565b80820180821115610f2557610f25611bc1565b602081526000610f226020830184611e47565b60ff83168152604060208201526000610f916040830184611d1c565b600060208284031215611ff557600080fd5b81516001600160401b0381111561200b57600080fd5b8201601f8101841361201c57600080fd5b805161202a611524826114de565b81815285602083850101111561203f57600080fd5b611a16826020830160208601611cf8565b8981526001600160a01b03898116602083015260408201899052610100606083018190526000916120848483018a8c611a56565b91508088166080850152508560a084015282810360c08401526120a781866119d2565b905082810360e08401526120bb8185611d48565b9c9b505050505050505050505050565b6000602082840312156120dd57600080fd5b505191905056fea26469706673582212201bae6766f1ec9f1aa9a2ab9b6c89094905b3ffa83cd7c5eff6a3c79f53a7c6fe64736f6c634300081300330000000000000000000000000e1b5ab67af1c99f8c7ebc71f41f75d4d6211e530000000000000000000000003a5c2a17e20dd70994350e427d4193a1a25b1964