0 txs
1.9k calls
constructor
No constructor.
functions
getBalance
viewfunction getBalance(address _token) view returns (uint256)
handleSequenceDelegateCall
nonpayablefunction handleSequenceDelegateCall(bytes32, uint256, uint256, uint256, uint256, bytes _data)
refundAndSweep
payablefunction refundAndSweep(address _token, address _refundRecipient, uint256 _refundAmount, address _sweepRecipient) payable
sweep
payablefunction sweep(address _token, address _recipient) payable
validateAndSweep
payablefunction validateAndSweep(address _token, uint256 _minExpected, address _recipient) payable
validateBalance
nonpayablefunction validateBalance(address token, address account, uint256 minExpected) returns (uint256 current)
validateLesserThanAndSweep
payablefunction validateLesserThanAndSweep(address _token, uint256 _maxAllowed, address _recipient) payable
validateLesserThanBalance
nonpayablefunction validateLesserThanBalance(address token, address account, uint256 maxAllowed) returns (uint256 current)
events
ActualRefund
event ActualRefund(address indexed token, address indexed recipient, uint256 expected, uint256 actual)
Refund
event Refund(address indexed token, address indexed recipient, uint256 amount)
RefundAndSweep
event RefundAndSweep(address indexed token, address indexed refundRecipient, uint256 refundAmount, address indexed sweepRecipient, uint256 actualRefund, uint256 remaining)
Sweep
event Sweep(address indexed token, address indexed recipient, uint256 amount)
ValidateBalance
event ValidateBalance(address indexed token, address indexed account, uint256 minExpected, uint256 current)
ValidateLesserThanBalance
event ValidateLesserThanBalance(address indexed token, address indexed account, uint256 maxAllowed, uint256 current)
errors
ExcessiveERC20Balance
error ExcessiveERC20Balance(address token, address account, uint256 maxAllowed, uint256 available)
ExcessiveNativeBalance
error ExcessiveNativeBalance(address account, uint256 maxAllowed, uint256 available)
InsufficientERC20Balance
error InsufficientERC20Balance(address token, address account, uint256 required, uint256 available)
InsufficientNativeBalance
error InsufficientNativeBalance(address account, uint256 required, uint256 available)
InvalidDelegatedSelector
error InvalidDelegatedSelector(bytes4 selector)
NativeTransferFailed
error NativeTransferFailed()
NotDelegateCall
error NotDelegateCall()
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
creation bytecode
0x60a0806040523461006157306080526111409081610066823960805181818160ae015281816101a20152818161020d015281816102ad015281816103220152818161077c01528181610831015281816108be01528181610aa50152610ed80152f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80634784226e146102e85780634c4e814c1461025e5780638dbf4cad146102455780639f795aac146101ff578063b8dc491b14610182578063d14f8dd714610169578063d275afd6146100a05763f8b2cb4f14610071575f80fd5b3461009c57602036600319011261009c57602061009461008f61054d565b610e0f565b604051908152f35b5f80fd5b6100a9366105c7565b9190307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461015a576100e6903083610b64565b506001600160a01b0381169082908261012a5750505f5160206110ab5f395f51905f52602047936101178582610fed565b6040519485526001600160a01b031693a3005b5f5160206110ab5f395f51905f529161011782610148602094610e81565b9681610155898094610ebb565b610fa3565b6327844c6960e11b5f5260045ffd5b3461009c57602061009461017c3661058d565b91610cc0565b604036600319011261009c5761019661054d565b61019e610563565b90307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461015a576001600160a01b0381169082908261012a5750505f5160206110ab5f395f51905f52602047936101178582610fed565b610208366105c7565b9190307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461015a576100e6903083610cc0565b3461009c5760206100946102583661058d565b91610b64565b3461009c5760c036600319011261009c5760a4356001600160401b03811161009c573660238201121561009c5780600401356001600160401b03811161009c57366024828401011161009c57307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461015a5760246102e69201610669565b005b608036600319011261009c576102fc61054d565b610304610563565b6064356001600160a01b0381169260443592909184810361009c57307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461015a576001600160a01b038316927fe8d24fc0ab3b12d83ce3d7bb06e74e2a423de5d1fa0d5414435460ede32ea6ea92908461045f57504780861115610454576103c490925b868403610427575b836103f2575b479081806103c9575b50506040516001600160a01b03909316969293849384610601565b0390a4005b6103d291610fed565b87865f5160206110ab5f395f51905f526020604051858152a388816103a9565b6103fc8484610fed565b6040518481526001600160a01b0384169087905f5160206110eb5f395f51905f5290602090a36103a0565b604051878152846020820152865f5160206110cb5f395f51905f52604060018060a01b03871693a361039a565b506103c48592610392565b916103c49061046d84610e81565b6104778186610ebb565b8088111561054557935b878503610518575b846104e2575b61049881610e81565b8092816104b8575b50505060405193849360018060a01b03169784610601565b6104c192610fa3565b87865f5160206110ab5f395f51905f526020604051858152a38881816104a0565b6104ed858583610fa3565b6040518581526001600160a01b0385169088905f5160206110eb5f395f51905f5290602090a361048f565b604051888152856020820152875f5160206110cb5f395f51905f52604060018060a01b03881693a3610489565b508693610481565b600435906001600160a01b038216820361009c57565b602435906001600160a01b038216820361009c57565b35906001600160a01b038216820361009c57565b606090600319011261009c576004356001600160a01b038116810361009c57906024356001600160a01b038116810361009c579060443590565b606090600319011261009c576004356001600160a01b038116810361009c5790602435906044356001600160a01b038116810361009c5790565b6040919493926060820195825260208201520152565b9081606091031261009c5761062b81610579565b9161063d604060208401359301610579565b90565b9081606091031261009c5761065481610579565b91604061066360208401610579565b92013590565b9190915f6004841015610aeb575b6001600160e01b0319169263b8dc491b60e01b8414610a5f576323c2113760e11b84146108625763693ad7eb60e11b8414610805576327de56ab60e21b841461075057638dbf4cad60e01b841461071e5763d14f8dd760e01b84146106e9578363fbdc730160e01b5f5260045260245ffd5b809192935060041161009c578160046107089261071b94019101610640565b916001600160a01b039182169116610cc0565b50565b809192935060041161009c5781600461073d9261071b94019101610640565b916001600160a01b039182169116610b64565b8092935060041161009c57600461076a9282019101610617565b6001600160a01b0390811692811691907f000000000000000000000000000000000000000000000000000000000000000016301461015a576107ad903083610cc0565b50806107d7575f5160206110ab5f395f51905f526020476107ce8186610fed565b604051908152a3565b5f5160206110ab5f395f51905f5260206107f083610e81565b6107fa8185610ebb565b6107ce818686610fa3565b8092935060041161009c57600461081f9282019101610617565b6001600160a01b0390811692811691907f000000000000000000000000000000000000000000000000000000000000000016301461015a576107ad903083610b64565b809192935060041161009c576080908201829003600319011261009c5761088b60048201610579565b61089760248301610579565b6108a8606460448501359401610579565b6001600160a01b039081169391811692811691907f000000000000000000000000000000000000000000000000000000000000000016301461015a577fe8d24fc0ab3b12d83ce3d7bb06e74e2a423de5d1fa0d5414435460ede32ea6ea90826109b95747808211156109b257905b80820361098f575b81610967575b61093a478061093f575b60405193849384610601565b0390a4565b6109498189610fed565b87865f5160206110ab5f395f51905f526020604051858152a361092e565b6109718286610fed565b84845f5160206110eb5f395f51905f526020604051868152a3610924565b84845f5160206110cb5f395f51905f5260408051858152866020820152a361091e565b5080610916565b6109c283610e81565b6109cc8185610ebb565b80821115610a5857905b808203610a35575b81610a0c575b61093a6109f085610e81565b80610a015760405193849384610601565b610949818988610fa3565b610a17828686610fa3565b84845f5160206110eb5f395f51905f526020604051868152a36109e4565b84845f5160206110cb5f395f51905f5260408051858152866020820152a36109de565b50806109d6565b809192935060041161009c576040908201829003600319011261009c57610a946024610a8d60048401610579565b9201610579565b6001600160a01b03908116918116907f000000000000000000000000000000000000000000000000000000000000000016301461015a57806107d7575f5160206110ab5f395f51905f526020476107ce8186610fed565b508260041161009c5780356001600160e01b031916610677565b90601f801991011681019081106001600160401b03821117610b2657604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b039182168152911660208201526040810191909152606081019190915260800190565b909291906001600160a01b0381169081610be75750833193828510610bbe5760407f8eb274f829e211950a0a80ca2046d254c0c8cf86b579688edc70b9c0cb92e9a891815194855286602086015260018060a01b031693a3565b6305176aa160e21b5f9081526001600160a01b0390911660045260248390526044859052606490fd5b6040516370a0823160e01b81526001600160a01b038616600482018190529195919391602082602481875afa918215610cb5575f92610c81575b508196838310610c5f5750507f8eb274f829e211950a0a80ca2046d254c0c8cf86b579688edc70b9c0cb92e9a89160409182519182526020820152a3565b610c7d8385604051948594631041008560e21b865260048601610b3a565b0390fd5b9091506020813d602011610cad575b81610c9d60209383610b05565b8101031261009c5751905f610c21565b3d9150610c90565b6040513d5f823e3d90fd5b909291906001600160a01b0381169081610d44575083319382851015610d1b5760407fc6266c8cbc3af1d4b8fb9826a624b306af6b751bf87154dc0123cc02b86c933491815194855286602086015260018060a01b031693a3565b63a3401cbd60e01b5f9081526001600160a01b0390911660045260248390526044859052606490fd5b6040516370a0823160e01b81526001600160a01b038616600482018190529195919391602082602481875afa918215610cb5575f92610ddb575b50819683831015610dbd5750507fc6266c8cbc3af1d4b8fb9826a624b306af6b751bf87154dc0123cc02b86c93349160409182519182526020820152a3565b610c7d8385604051948594630c059d1960e41b865260048601610b3a565b9091506020813d602011610e07575b81610df760209383610b05565b8101031261009c5751905f610d7e565b3d9150610dea565b6001600160a01b031680610e235750333190565b6020602491604051928380926370a0823160e01b82523360048301525afa908115610cb5575f91610e52575090565b90506020813d602011610e79575b81610e6d60209383610b05565b8101031261009c575190565b3d9150610e60565b6040516370a0823160e01b815230600482015290602090829060249082906001600160a01b03165afa908115610cb5575f91610e52575090565b60405163095ea7b360e01b60208083019182526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008181166024860152604480860197909752958452929390921691905f90610f1f606486610b05565b84519082855af15f513d82610f87575b505015610f3b57505050565b60405163095ea7b360e01b60208201526001600160a01b0390931660248401525f6044808501919091528352610f8592610f8090610f7a606482610b05565b82611052565b611052565b565b909150610f9b5750803b15155b5f80610f2f565b600114610f94565b60405163a9059cbb60e01b60208201526001600160a01b03929092166024830152604480830193909352918152610f8591610fdf606483610b05565b6001600160a01b0316611052565b5f918291829182916001600160a01b03165af13d1561104d573d6001600160401b038111610b26576040519061102d601f8201601f191660200183610b05565b81525f60203d92013e5b1561103e57565b633d2cec6f60e21b5f5260045ffd5b611037565b905f602091828151910182855af115610cb5575f513d6110a157506001600160a01b0381163b155b6110815750565b635274afe760e01b5f9081526001600160a01b0391909116600452602490fd5b6001141561107a56feed679328aebf74ede77ae09efcf36e90244f83643dadac1c2d9f0b21a46f6ab7bc530e98937a005fa590a15899ce2e21e1bfa93730e6dfe36bcd7a041d6abf85f40cc8c1a1d17359049ba500cfc894596a692cffc9d03943cd92ec2e159cf6aea26469706673582212205cc4495f5ca3155eab85ef2314e2f889ae13e90761f907d299793195fb84665564736f6c634300081e0033