371 txs
368 calls
constructor
constructor(address _usdtAddress, uint256 _feeRate)
functions
feeRate
viewfunction feeRate() view returns (uint256)
isValidSignature
viewfunction isValidSignature(uint256 signatureId, bytes signature) view returns (bool valid)
owner
viewfunction owner() view returns (address)
usdt
viewfunction usdt() view returns (address)
usedSignatures
viewfunction usedSignatures(uint256) view returns (bool)
batchTransfer
nonpayablefunction batchTransfer(address[] recipients, uint256[] amounts, uint256 signatureId, bytes signature)
depositUSDT
nonpayablefunction depositUSDT(uint256 amount)
renounceOwnership
nonpayablefunction renounceOwnership()
setFeeRate
nonpayablefunction setFeeRate(uint256 _feeRate)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateUSDTContract
nonpayablefunction updateUSDTContract(address _newUSDTAddress)
withdrawUSDT
nonpayablefunction withdrawUSDT(uint256 amount)
events
BatchTransferCompleted
event BatchTransferCompleted(address[] recipients, uint256[] amounts)
Deposit
event Deposit(address indexed sender, uint256 amount)
FeeRateUpdated
event FeeRateUpdated(uint256 newFeeRate)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
USDTContractUpdated
event USDTContractUpdated(address newUSDTContract)
Withdraw
event Withdraw(address indexed to, uint256 amount)
errors
ECDSAInvalidSignature
error ECDSAInvalidSignature()
ECDSAInvalidSignatureLength
error ECDSAInvalidSignatureLength(uint256 length)
ECDSAInvalidSignatureS
error ECDSAInvalidSignatureS(bytes32 s)
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
creation bytecode
0x6080604052606460035534801561001557600080fd5b506040516124ab3803806124ab833981810160405281019061003791906102b2565b33600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036100aa5760006040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016100a19190610301565b60405180910390fd5b6100b98161015560201b60201c565b5060018081905550612710811115610106576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100fd90610379565b60405180910390fd5b81600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806003819055505050610399565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006102498261021e565b9050919050565b6102598161023e565b811461026457600080fd5b50565b60008151905061027681610250565b92915050565b6000819050919050565b61028f8161027c565b811461029a57600080fd5b50565b6000815190506102ac81610286565b92915050565b600080604083850312156102c9576102c8610219565b5b60006102d785828601610267565b92505060206102e88582860161029d565b9150509250929050565b6102fb8161023e565b82525050565b600060208201905061031660008301846102f2565b92915050565b600082825260208201905092915050565b7f466565207261746520746f6f2068696768000000000000000000000000000000600082015250565b600061036360118361031c565b915061036e8261032d565b602082019050919050565b6000602082019050818103600083015261039281610356565b9050919050565b612103806103a86000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c8063927354e911610071578063927354e914610153578063978bbdb9146101835780639fc252f4146101a1578063b2af9362146101bd578063e7c80f17146101ed578063f2fde38b14610209576100b4565b80632f48ab7d146100b95780633ea521ef146100d757806345596e2e146100f3578063715018a61461010f578063786bd1fa146101195780638da5cb5b14610135575b600080fd5b6100c1610225565b6040516100ce919061135a565b60405180910390f35b6100f160048036038101906100ec91906113bf565b61024b565b005b61010d600480360381019061010891906113bf565b6103d4565b005b610117610462565b005b610133600480360381019061012e91906115e8565b610476565b005b61013d6109cc565b60405161014a91906116cc565b60405180910390f35b61016d600480360381019061016891906113bf565b6109f5565b60405161017a9190611702565b60405180910390f35b61018b610a15565b604051610198919061172c565b60405180910390f35b6101bb60048036038101906101b69190611773565b610a1b565b005b6101d760048036038101906101d291906117f6565b610b0d565b6040516101e49190611702565b60405180910390f35b610207600480360381019061020291906113bf565b610b66565b005b610223600480360381019061021e9190611773565b610ceb565b005b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610253610d71565b60008111610296576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161028d906118b3565b60405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6102dc6109cc565b836040518363ffffffff1660e01b81526004016102fa9291906118d3565b6020604051808303816000875af1158015610319573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061033d9190611928565b61037c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610373906119a1565b60405180910390fd5b6103846109cc565b73ffffffffffffffffffffffffffffffffffffffff167f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a9424364826040516103c9919061172c565b60405180910390a250565b6103dc610d71565b612710811115610421576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161041890611a0d565b60405180910390fd5b806003819055507f208f1b468d3d61f0f085e975bd9d04367c930d599642faad06695229f3eadcd881604051610457919061172c565b60405180910390a150565b61046a610d71565b6104746000610df8565b565b61047e610ebc565b6004600083815260200190815260200160002060009054906101000a900460ff16156104df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d690611a79565b60405180910390fd5b6104e98282610f02565b610528576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161051f90611ae5565b60405180910390fd5b60016004600084815260200190815260200160002060006101000a81548160ff02191690831515021790555083839050868690501461059c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161059390611b51565b60405180910390fd5b600086869050116105e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d990611bbd565b60405180910390fd5b6000805b8585905081101561071757600073ffffffffffffffffffffffffffffffffffffffff1688888381811061061c5761061b611bdd565b5b90506020020160208101906106319190611773565b73ffffffffffffffffffffffffffffffffffffffff1603610687576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067e90611c58565b60405180910390fd5b600086868381811061069c5761069b611bdd565b5b90506020020135116106e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106da906118b3565b60405180910390fd5b8585828181106106f6576106f5611bdd565b5b90506020020135826107089190611ca7565b915080806001019150506105e6565b50600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330846040518463ffffffff1660e01b815260040161077793929190611cdb565b6020604051808303816000875af1158015610796573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ba9190611928565b6107f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f0906119a1565b60405180910390fd5b60005b8787905081101561097d57600061271060035488888581811061082257610821611bdd565b5b905060200201356108339190611d12565b61083d9190611d83565b905060008188888581811061085557610854611bdd565b5b905060200201356108669190611db4565b9050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8b8b868181106108b9576108b8611bdd565b5b90506020020160208101906108ce9190611773565b836040518363ffffffff1660e01b81526004016108ec9291906118d3565b6020604051808303816000875af115801561090b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092f9190611928565b61096e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610965906119a1565b60405180910390fd5b505080806001019150506107fc565b507f2af52acc00734029588228a7d6ef8b1822cd8525459da189faebe57b404e5d7b878787876040516109b39493929190611f26565b60405180910390a1506109c4610fb4565b505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60046020528060005260406000206000915054906101000a900460ff1681565b60035481565b610a23610d71565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610a92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8990611fad565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f6b7e68bb8578b41b20dcd4830e34bfdf641fadf98ec840f683fdc577501746e781604051610b0291906116cc565b60405180910390a150565b6000610b5d8484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610f02565b90509392505050565b610b6e610ebc565b60008111610bb1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba8906118b3565b60405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330846040518463ffffffff1660e01b8152600401610c1093929190611cdb565b6020604051808303816000875af1158015610c2f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c539190611928565b610c92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c89906119a1565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c82604051610cd8919061172c565b60405180910390a2610ce8610fb4565b50565b610cf3610d71565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610d655760006040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401610d5c91906116cc565b60405180910390fd5b610d6e81610df8565b50565b610d79610fbd565b73ffffffffffffffffffffffffffffffffffffffff16610d976109cc565b73ffffffffffffffffffffffffffffffffffffffff1614610df657610dba610fbd565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401610ded91906116cc565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600260015403610ef8576040517f3ee5aeb500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600181905550565b600080604084901c905061012c81610f1a9190611ca7565b421115610f2b576000915050610fae565b600084604051602001610f3e9190611fee565b6040516020818303038152906040528051906020012090506000610f6182610fc5565b90506000610f6f8287610ffb565b9050610f796109cc565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16149450505050505b92915050565b60018081905550565b600033905090565b60007f19457468657265756d205369676e6564204d6573736167653a0a33320000000060005281601c52603c6000209050919050565b60008060008061100b8686611027565b92509250925061101b8282611083565b82935050505092915050565b6000806000604184510361106c5760008060006020870151925060408701519150606087015160001a905061105e888285856111e7565b95509550955050505061107c565b60006002855160001b9250925092505b9250925092565b6000600381111561109757611096612009565b5b8260038111156110aa576110a9612009565b5b03156111e357600160038111156110c4576110c3612009565b5b8260038111156110d7576110d6612009565b5b0361110e576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600381111561112257611121612009565b5b82600381111561113557611134612009565b5b0361117a578060001c6040517ffce698f7000000000000000000000000000000000000000000000000000000008152600401611171919061172c565b60405180910390fd5b60038081111561118d5761118c612009565b5b8260038111156111a05761119f612009565b5b036111e257806040517fd78bce0c0000000000000000000000000000000000000000000000000000000081526004016111d99190612051565b60405180910390fd5b5b5050565b60008060007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08460001c11156112275760006003859250925092506112d1565b60006001888888886040516000815260200160405260405161124c9493929190612088565b6020604051602081039080840390855afa15801561126e573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036112c257600060016000801b935093509350506112d1565b8060008060001b935093509350505b9450945094915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061132061131b611316846112db565b6112fb565b6112db565b9050919050565b600061133282611305565b9050919050565b600061134482611327565b9050919050565b61135481611339565b82525050565b600060208201905061136f600083018461134b565b92915050565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b61139c81611389565b81146113a757600080fd5b50565b6000813590506113b981611393565b92915050565b6000602082840312156113d5576113d461137f565b5b60006113e3848285016113aa565b91505092915050565b600080fd5b600080fd5b600080fd5b60008083601f840112611411576114106113ec565b5b8235905067ffffffffffffffff81111561142e5761142d6113f1565b5b60208301915083602082028301111561144a576114496113f6565b5b9250929050565b60008083601f840112611467576114666113ec565b5b8235905067ffffffffffffffff811115611484576114836113f1565b5b6020830191508360208202830111156114a05761149f6113f6565b5b9250929050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6114f5826114ac565b810181811067ffffffffffffffff82111715611514576115136114bd565b5b80604052505050565b6000611527611375565b905061153382826114ec565b919050565b600067ffffffffffffffff821115611553576115526114bd565b5b61155c826114ac565b9050602081019050919050565b82818337600083830152505050565b600061158b61158684611538565b61151d565b9050828152602081018484840111156115a7576115a66114a7565b5b6115b2848285611569565b509392505050565b600082601f8301126115cf576115ce6113ec565b5b81356115df848260208601611578565b91505092915050565b600080600080600080608087890312156116055761160461137f565b5b600087013567ffffffffffffffff81111561162357611622611384565b5b61162f89828a016113fb565b9650965050602087013567ffffffffffffffff81111561165257611651611384565b5b61165e89828a01611451565b9450945050604061167189828a016113aa565b925050606087013567ffffffffffffffff81111561169257611691611384565b5b61169e89828a016115ba565b9150509295509295509295565b60006116b6826112db565b9050919050565b6116c6816116ab565b82525050565b60006020820190506116e160008301846116bd565b92915050565b60008115159050919050565b6116fc816116e7565b82525050565b600060208201905061171760008301846116f3565b92915050565b61172681611389565b82525050565b6000602082019050611741600083018461171d565b92915050565b611750816116ab565b811461175b57600080fd5b50565b60008135905061176d81611747565b92915050565b6000602082840312156117895761178861137f565b5b60006117978482850161175e565b91505092915050565b60008083601f8401126117b6576117b56113ec565b5b8235905067ffffffffffffffff8111156117d3576117d26113f1565b5b6020830191508360018202830111156117ef576117ee6113f6565b5b9250929050565b60008060006040848603121561180f5761180e61137f565b5b600061181d868287016113aa565b935050602084013567ffffffffffffffff81111561183e5761183d611384565b5b61184a868287016117a0565b92509250509250925092565b600082825260208201905092915050565b7f416d6f756e74206d7573742062652067726561746572207468616e2030000000600082015250565b600061189d601d83611856565b91506118a882611867565b602082019050919050565b600060208201905081810360008301526118cc81611890565b9050919050565b60006040820190506118e860008301856116bd565b6118f5602083018461171d565b9392505050565b611905816116e7565b811461191057600080fd5b50565b600081519050611922816118fc565b92915050565b60006020828403121561193e5761193d61137f565b5b600061194c84828501611913565b91505092915050565b7f5472616e73666572206661696c65640000000000000000000000000000000000600082015250565b600061198b600f83611856565b915061199682611955565b602082019050919050565b600060208201905081810360008301526119ba8161197e565b9050919050565b7f466565207261746520746f6f2068696768000000000000000000000000000000600082015250565b60006119f7601183611856565b9150611a02826119c1565b602082019050919050565b60006020820190508181036000830152611a26816119ea565b9050919050565b7f5369676e617475726520616c7265616479207573656400000000000000000000600082015250565b6000611a63601683611856565b9150611a6e82611a2d565b602082019050919050565b60006020820190508181036000830152611a9281611a56565b9050919050565b7f496e76616c6964207369676e6174757265000000000000000000000000000000600082015250565b6000611acf601183611856565b9150611ada82611a99565b602082019050919050565b60006020820190508181036000830152611afe81611ac2565b9050919050565b7f417272617973206c656e677468206d69736d6174636800000000000000000000600082015250565b6000611b3b601683611856565b9150611b4682611b05565b602082019050919050565b60006020820190508181036000830152611b6a81611b2e565b9050919050565b7f456d707479206172726179730000000000000000000000000000000000000000600082015250565b6000611ba7600c83611856565b9150611bb282611b71565b602082019050919050565b60006020820190508181036000830152611bd681611b9a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f496e76616c696420726563697069656e74206164647265737300000000000000600082015250565b6000611c42601983611856565b9150611c4d82611c0c565b602082019050919050565b60006020820190508181036000830152611c7181611c35565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611cb282611389565b9150611cbd83611389565b9250828201905080821115611cd557611cd4611c78565b5b92915050565b6000606082019050611cf060008301866116bd565b611cfd60208301856116bd565b611d0a604083018461171d565b949350505050565b6000611d1d82611389565b9150611d2883611389565b9250828202611d3681611389565b91508282048414831517611d4d57611d4c611c78565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611d8e82611389565b9150611d9983611389565b925082611da957611da8611d54565b5b828204905092915050565b6000611dbf82611389565b9150611dca83611389565b9250828203905081811115611de257611de1611c78565b5b92915050565b600082825260208201905092915050565b6000819050919050565b611e0c816116ab565b82525050565b6000611e1e8383611e03565b60208301905092915050565b6000611e39602084018461175e565b905092915050565b6000602082019050919050565b6000611e5a8385611de8565b9350611e6582611df9565b8060005b85811015611e9e57611e7b8284611e2a565b611e858882611e12565b9750611e9083611e41565b925050600181019050611e69565b5085925050509392505050565b600082825260208201905092915050565b600080fd5b82818337505050565b6000611ed68385611eab565b93507f07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff831115611f0957611f08611ebc565b5b602083029250611f1a838584611ec1565b82840190509392505050565b60006040820190508181036000830152611f41818688611e4e565b90508181036020830152611f56818486611eca565b905095945050505050565b7f496e76616c696420555344542061646472657373000000000000000000000000600082015250565b6000611f97601483611856565b9150611fa282611f61565b602082019050919050565b60006020820190508181036000830152611fc681611f8a565b9050919050565b6000819050919050565b611fe8611fe382611389565b611fcd565b82525050565b6000611ffa8284611fd7565b60208201915081905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6000819050919050565b61204b81612038565b82525050565b60006020820190506120666000830184612042565b92915050565b600060ff82169050919050565b6120828161206c565b82525050565b600060808201905061209d6000830187612042565b6120aa6020830186612079565b6120b76040830185612042565b6120c46060830184612042565b9594505050505056fea264697066735822122073ad018f48b2ac648ddffbde9e1f282eee1e44e0224a42003b07ead58c7b011964736f6c634300081c003300000000000000000000000055d398326f99059ff775485246999027b31979550000000000000000000000000000000000000000000000000000000000000064