5.9k txs
6k calls
constructor
constructor(address token_, bytes32 merkleRoot_, uint256 fullyVestedTime_, uint256 endTime_)
functions
amountClaimedFullyVested
viewfunction amountClaimedFullyVested(address) view returns (uint256)
claimAmountsAtTimestamp
viewfunction claimAmountsAtTimestamp(uint256 amount, uint256 timestamp) view returns (uint256 claimableAmount, uint256 burnAmount)
claimStartedTime
viewfunction claimStartedTime() view returns (uint256)
currentClaimAmounts
viewfunction currentClaimAmounts(uint256 amount) view returns (uint256 claimableAmount, uint256 burnAmount)
endTime
viewfunction endTime() view returns (uint256)
fullyVestedTime
viewfunction fullyVestedTime() view returns (uint256)
isClaimed
viewfunction isClaimed(uint256 index) view returns (bool)
merkleRoot
viewfunction merkleRoot() view returns (bytes32)
owner
viewfunction owner() view returns (address)
token
viewfunction token() view returns (address)
claim
nonpayablefunction claim(uint256 index, address account, uint256 amount, bytes32[] merkleProof)
renounceOwnership
nonpayablefunction renounceOwnership()
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdraw
nonpayablefunction withdraw()
events
Claimed
event Claimed(uint256 index, address account, uint256 amount)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
AddressEmptyCode
error AddressEmptyCode(address target)
AlreadyClaimed
error AlreadyClaimed()
ClaimWindowFinished
error ClaimWindowFinished()
EndTimeInPast
error EndTimeInPast()
FailedCall
error FailedCall()
FullyVestedTimeInPast
error FullyVestedTimeInPast()
InsufficientBalance
error InsufficientBalance(uint256 balance, uint256 needed)
InvalidFullyVestedTime
error InvalidFullyVestedTime()
InvalidProof
error InvalidProof()
NotAuthorizedToClaim
error NotAuthorizedToClaim()
NoWithdrawDuringClaim
error NoWithdrawDuringClaim()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
creation bytecode
0x610120604052348015610010575f80fd5b50604051610ffd380380610ffd83398101604081905261002f91610131565b338061005457604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b61005d816100e2565b5042821161007e5760405163b4776e4960e01b815260040160405180910390fd5b42811161009e576040516372e54d4d60e01b815260040160405180910390fd5b8082106100be57604051635e367fb360e01b815260040160405180910390fd5b6001600160a01b0390931660805260a09190915260c052610100524260e052610178565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f805f8060808587031215610144575f80fd5b84516001600160a01b038116811461015a575f80fd5b60208601516040870151606090970151919890975090945092505050565b60805160a05160c05160e05161010051610df46102095f395f81816101650152818161029c01528181610423015261074101525f81816101bb01528181610307015261036d01525f8181610194015281816102ce015261032801525f818161013001526105b301525f81816102760152818161062201528181610665015281816107a201526108150152610df45ff3fe608060405234801561000f575f80fd5b50600436106100e5575f3560e01c8063715018a6116100885780639e34070f116100635780639e34070f1461021c578063e35f6b6d1461023f578063f2fde38b1461025e578063fc0c546a14610271575f80fd5b8063715018a6146101dd5780637f0e9e01146101e55780638da5cb5b146101f8575f80fd5b80633197cbb6116100c35780633197cbb6146101605780633ccfd60b14610187578063458d74da1461018f5780635f4ffad8146101b6575f80fd5b806312a9e119146100e95780632e7ba6ef146101165780632eb4a7ab1461012b575b5f80fd5b6100fc6100f7366004610bd9565b610298565b604080519283526020830191909152015b60405180910390f35b610129610124366004610c14565b610421565b005b6101527f000000000000000000000000000000000000000000000000000000000000000081565b60405190815260200161010d565b6101527f000000000000000000000000000000000000000000000000000000000000000081565b610129610737565b6101527f000000000000000000000000000000000000000000000000000000000000000081565b6101527f000000000000000000000000000000000000000000000000000000000000000081565b61012961083e565b6100fc6101f3366004610ca3565b61084f565b5f546001600160a01b03165b6040516001600160a01b03909116815260200161010d565b61022f61022a366004610ca3565b610864565b604051901515815260200161010d565b61015261024d366004610cba565b60026020525f908152604090205481565b61012961026c366004610cba565b6108a2565b6102047f000000000000000000000000000000000000000000000000000000000000000081565b5f807f00000000000000000000000000000000000000000000000000000000000000008311156102cc57505f90508061041a565b7f000000000000000000000000000000000000000000000000000000000000000083106102fd57508290505f61041a565b5f6201518061034c7f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000610ce7565b6103569190610d0e565b9050805f03610363575060015b5f620151806103927f000000000000000000000000000000000000000000000000000000000000000087610ce7565b61039c9190610d0e565b90505f826103b2670c7d713b49da000084610d21565b6103bc9190610d0e565b6103ce9067016345785d8a0000610d38565b9050670de0b6b3a76400008111156103eb5750670de0b6b3a76400005b670de0b6b3a76400006103fe8289610d21565b6104089190610d0e565b94506104148588610ce7565b93505050505b9250929050565b7f00000000000000000000000000000000000000000000000000000000000000004211156104625760405163d365f61160e01b815260040160405180910390fd5b6001600160a01b038416331461050e5760405163e839bd5360e01b81523360048201526001600160a01b03851660248201525f60448201526c447e69651d841bd8d104bed4939063e839bd5390606401602060405180830381865afa1580156104cd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104f19190610d4b565b61050e5760405163defb706960e01b815260040160405180910390fd5b61051785610864565b1561053557604051630c8d9eab60e31b815260040160405180910390fd5b60408051602081018790526bffffffffffffffffffffffff19606087901b1691810191909152605481018490525f906074016040516020818303038152906040528051906020012090506105de8383808060200260200160405190810160405280939291908181526020018383602002808284375f920191909152507f000000000000000000000000000000000000000000000000000000000000000092508591506108e49050565b6105fb576040516309bde33960e01b815260040160405180910390fd5b610604866108fb565b5f806106108642610298565b90925090506106496001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168884610937565b80156106c957604051630852cd8d60e31b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906342966c68906024015f604051808303815f87803b1580156106ae575f80fd5b505af11580156106c0573d5f803e3d5ffd5b505050506106e4565b6001600160a01b0387165f9081526002602052604090208290555b604080518981526001600160a01b03891660208201529081018790527f4ec90e965519d92681267467f775ada5bd214aa92c0dc93d90a5e880ce9ed0269060600160405180910390a15050505050505050565b61073f61098e565b7f0000000000000000000000000000000000000000000000000000000000000000421161077f57604051630ee56a2b60e41b815260040160405180910390fd5b6040516370a0823160e01b815230600482015261083c9033906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa1580156107e7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061080b9190610d6a565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169190610937565b565b61084661098e565b61083c5f6109ba565b5f8061085b8342610298565b91509150915091565b5f8061087261010084610d0e565b90505f61088161010085610d81565b5f9283526001602081905260409093205492901b9182169091149392505050565b6108aa61098e565b6001600160a01b0381166108d857604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b6108e1816109ba565b50565b5f826108f08584610a09565b1490505b9392505050565b5f61090861010083610d0e565b90505f61091761010084610d81565b5f92835260016020819052604090932080549390911b9092179091555050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610989908490610a4d565b505050565b5f546001600160a01b0316331461083c5760405163118cdaa760e01b81523360048201526024016108cf565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f81815b8451811015610a4357610a3982868381518110610a2c57610a2c610d94565b6020026020010151610aae565b9150600101610a0d565b5090505b92915050565b5f610a616001600160a01b03841683610ad7565b905080515f14158015610a85575080806020019051810190610a839190610d4b565b155b1561098957604051635274afe760e01b81526001600160a01b03841660048201526024016108cf565b5f818310610ac8575f8281526020849052604090206108f4565b505f9182526020526040902090565b60606108f483835f845f80856001600160a01b03168486604051610afb9190610da8565b5f6040518083038185875af1925050503d805f8114610b35576040519150601f19603f3d011682016040523d82523d5f602084013e610b3a565b606091505b5091509150610b4a868383610b54565b9695505050505050565b606082610b6957610b6482610bb0565b6108f4565b8151158015610b8057506001600160a01b0384163b155b15610ba957604051639996b31560e01b81526001600160a01b03851660048201526024016108cf565b50806108f4565b805115610bc05780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b5f8060408385031215610bea575f80fd5b50508035926020909101359150565b80356001600160a01b0381168114610c0f575f80fd5b919050565b5f805f805f60808688031215610c28575f80fd5b85359450610c3860208701610bf9565b935060408601359250606086013567ffffffffffffffff80821115610c5b575f80fd5b818801915088601f830112610c6e575f80fd5b813581811115610c7c575f80fd5b8960208260051b8501011115610c90575f80fd5b9699959850939650602001949392505050565b5f60208284031215610cb3575f80fd5b5035919050565b5f60208284031215610cca575f80fd5b6108f482610bf9565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610a4757610a47610cd3565b634e487b7160e01b5f52601260045260245ffd5b5f82610d1c57610d1c610cfa565b500490565b8082028115828204841417610a4757610a47610cd3565b80820180821115610a4757610a47610cd3565b5f60208284031215610d5b575f80fd5b815180151581146108f4575f80fd5b5f60208284031215610d7a575f80fd5b5051919050565b5f82610d8f57610d8f610cfa565b500690565b634e487b7160e01b5f52603260045260245ffd5b5f82518060208501845e5f92019182525091905056fea26469706673582212203c89171b7b88adada13fccefa71666a6583f7bd4a5b2c9da02e48f03a3eade8464736f6c634300081900330000000000000000000000007613c48e0cd50e42dd9bf0f6c235063145f6f8dc8c74b14840a2b2520882f436d6018c577d95f88e509cee3b6e9c91b6ab90948e0000000000000000000000000000000000000000000000000000000068e3ffc70000000000000000000000000000000000000000000000000000000069d7e547