16 txs
3.1k calls
constructor
No constructor.
functions
balanceOf
viewfunction balanceOf(address signer, address token) view returns (uint256)
deposits
viewfunction deposits(address, address) view returns (uint256)
usedHashes
viewfunction usedHashes(bytes32) view returns (bool)
deposit
nonpayablefunction deposit(address token, uint256 amount, address signer)
withdraw
nonpayablefunction withdraw(address token, uint256 amount, address recipient, uint256 nonce, bytes signature)
events
Deposit
event Deposit(address indexed signer, address indexed token, uint256 amount)
Withdraw
event Withdraw(address indexed signer, address indexed recipient, address indexed token, uint256 amount)
errors
ECDSAInvalidSignature
error ECDSAInvalidSignature()
ECDSAInvalidSignatureLength
error ECDSAInvalidSignatureLength(uint256 length)
ECDSAInvalidSignatureS
error ECDSAInvalidSignatureS(bytes32 s)
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
creation bytecode
0x6080604052348015600f57600080fd5b506001600055610b78806100246000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80638f601f661461005c57806395becdcb1461009a578063aef18bf7146100af578063f45346dc146100e2578063f7888aec146100f5575b600080fd5b61008761006a366004610964565b600160209081526000928352604080842090915290825290205481565b6040519081526020015b60405180910390f35b6100ad6100a83660046109ad565b610108565b005b6100d26100bd366004610a9b565b60026020526000908152604090205460ff1681565b6040519015158152602001610091565b6100ad6100f0366004610ab4565b610448565b610087610103366004610964565b6105da565b610110610607565b6001600160a01b0385166101635760405162461bcd60e51b8152602060048201526015602482015274496e76616c696420746f6b656e206164647265737360581b60448201526064015b60405180910390fd5b6001600160a01b0383166101b95760405162461bcd60e51b815260206004820152601960248201527f496e76616c696420726563697069656e74206164647265737300000000000000604482015260640161015a565b600084116102095760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e74206d7573742062652067726561746572207468616e2030000000604482015260640161015a565b6040516bffffffffffffffffffffffff19606087811b821660208401526034830187905285811b821660548401526068830185905246608884015230901b1660a88201526000906102a09060bc01604051602081830303815290604052805190602001207f19457468657265756d205369676e6564204d6573736167653a0a3332000000006000908152601c91909152603c902090565b60008181526002602052604090205490915060ff16156102fb5760405162461bcd60e51b815260206004820152601660248201527514da59db985d1d5c9948185b1c9958591e481d5cd95960521b604482015260640161015a565b6000818152600260205260408120805460ff1916600117905561031e8284610631565b6001600160a01b038082166000908152600160209081526040808320938c168352929052205490915086111561038d5760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b604482015260640161015a565b6001600160a01b038082166000908152600160209081526040808320938b16835292905290812080548892906103c4908490610b06565b909155506103de90506001600160a01b038816868861065b565b866001600160a01b0316856001600160a01b0316826001600160a01b03167f3115d1449a7b732c986cba18244e897a450f61e1bb8d589cd2e69e6c8924f9f78960405161042d91815260200190565b60405180910390a450506104416001600055565b5050505050565b6001600160a01b0383166104965760405162461bcd60e51b8152602060048201526015602482015274496e76616c696420746f6b656e206164647265737360581b604482015260640161015a565b6001600160a01b0381166104e55760405162461bcd60e51b8152602060048201526016602482015275496e76616c6964207369676e6572206164647265737360501b604482015260640161015a565b600082116105355760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e74206d7573742062652067726561746572207468616e2030000000604482015260640161015a565b61054a6001600160a01b0384163330856106bf565b6001600160a01b03808216600090815260016020908152604080832093871683529290529081208054849290610581908490610b19565b92505081905550826001600160a01b0316816001600160a01b03167f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f62846040516105cd91815260200190565b60405180910390a3505050565b6001600160a01b038083166000908152600160209081526040808320938516835292905220545b92915050565b60026000540361062a57604051633ee5aeb560e01b815260040160405180910390fd5b6002600055565b60008060008061064186866106fe565b925092509250610651828261074b565b5090949350505050565b6040516001600160a01b038381166024830152604482018390526106ba91859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050610808565b505050565b6040516001600160a01b0384811660248301528381166044830152606482018390526106f89186918216906323b872dd90608401610688565b50505050565b600080600083516041036107385760208401516040850151606086015160001a61072a88828585610879565b955095509550505050610744565b50508151600091506002905b9250925092565b600082600381111561075f5761075f610b2c565b03610768575050565b600182600381111561077c5761077c610b2c565b0361079a5760405163f645eedf60e01b815260040160405180910390fd5b60028260038111156107ae576107ae610b2c565b036107cf5760405163fce698f760e01b81526004810182905260240161015a565b60038260038111156107e3576107e3610b2c565b03610804576040516335e2f38360e21b81526004810182905260240161015a565b5050565b600080602060008451602086016000885af18061082b576040513d6000823e3d81fd5b50506000513d91508115610843578060011415610850565b6001600160a01b0384163b155b156106f857604051635274afe760e01b81526001600160a01b038516600482015260240161015a565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08411156108b4575060009150600390508261093e565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015610908573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166109345750600092506001915082905061093e565b9250600091508190505b9450945094915050565b80356001600160a01b038116811461095f57600080fd5b919050565b6000806040838503121561097757600080fd5b61098083610948565b915061098e60208401610948565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b600080600080600060a086880312156109c557600080fd5b6109ce86610948565b9450602086013593506109e360408701610948565b925060608601359150608086013567ffffffffffffffff811115610a0657600080fd5b8601601f81018813610a1757600080fd5b803567ffffffffffffffff811115610a3157610a31610997565b604051601f8201601f19908116603f0116810167ffffffffffffffff81118282101715610a6057610a60610997565b6040528181528282016020018a1015610a7857600080fd5b816020840160208301376000602083830101528093505050509295509295909350565b600060208284031215610aad57600080fd5b5035919050565b600080600060608486031215610ac957600080fd5b610ad284610948565b925060208401359150610ae760408501610948565b90509250925092565b634e487b7160e01b600052601160045260246000fd5b8181038181111561060157610601610af0565b8082018082111561060157610601610af0565b634e487b7160e01b600052602160045260246000fdfea26469706673582212201f79139f10095b610361957687337a634149757689eda5bcb6881ede3b26558f64736f6c634300081a0033