0 txs
1 call
constructor
constructor()
functions
getUnstakingPosition
viewfunction getUnstakingPosition(address user, uint256 _limit, uint256 _offset) view returns (tuple[] itemList)
hmxStaking
viewfunction hmxStaking() view returns (address)
owner
viewfunction owner() view returns (address)
unstakingCooldownPeriod
viewfunction unstakingCooldownPeriod(address stakingToken) view returns (uint256 cooldownPeriod)
unstakingPositionLastIndex
viewfunction unstakingPositionLastIndex(address) view returns (uint256)
unstakingPositions
viewfunction unstakingPositions(address user, uint256 index) view returns (address token, uint256 amount, uint256 lockEndTimestamp, uint8 status)
cancelLocks
nonpayablefunction cancelLocks(uint256[] positionIndexes)
claimLocks
nonpayablefunction claimLocks(uint256[] positionIndexes)
initialize
nonpayablefunction initialize(address _hmxStaking)
lock
nonpayablefunction lock(address account, address stakingToken, uint256 amount)
renounceOwnership
nonpayablefunction renounceOwnership()
setUnstakingCooldownPeriod
nonpayablefunction setUnstakingCooldownPeriod(address _stakingToken, uint256 _cooldownPeriod)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
Initialized
event Initialized(uint8 version)
LogCancelLock
event LogCancelLock(uint256 indexed positionIndex, address indexed account, address token, uint256 amount, uint256 lockEndTimestamp)
LogClaimLock
event LogClaimLock(uint256 indexed positionIndex, address indexed account, address token, uint256 amount, uint256 lockEndTimestamp)
LogLock
event LogLock(address indexed caller, address token, uint256 amount, uint256 lockEndTimestamp)
LogSetUnstakingCooldownPeriod
event LogSetUnstakingCooldownPeriod(address stakingToken, uint256 cooldownPeriod)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
StakingLocker_CooldownNotOver
error StakingLocker_CooldownNotOver()
StakingLocker_InvalidStatus
error StakingLocker_InvalidStatus()
StakingLocker_Unauthorized
error StakingLocker_Unauthorized()
creation bytecode
0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61146c806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106100af5760003560e01c80636acac7ed146100b4578063715018a6146100c95780637750c9f0146100d157806389c9970d146100e45780638da5cb5b146100f7578063b2bff94b1461011c578063b5e17b1b14610179578063bab9aad61461018c578063c4d66de8146101ba578063e5a4b303146101cd578063e700ff70146101ed578063ee69c02914610200578063f2fde38b14610220575b600080fd5b6100c76100c2366004610ffc565b610233565b005b6100c76103e9565b6100c76100df3660046110d5565b6103fd565b6100c76100f2366004611111565b6105f7565b6100ff610654565b6040516001600160a01b0390911681526020015b60405180910390f35b61016961012a366004611111565b609960209081526000928352604080842090915290825290208054600182015460028301546003909301546001600160a01b0390921692909160ff1684565b6040516101139493929190611173565b6097546100ff906001600160a01b031681565b6101ac61019a3660046111a7565b60986020526000908152604090205481565b604051908152602001610113565b6100c76101c83660046111a7565b610663565b6101e06101db3660046111c2565b6107a3565b60405161011391906111f5565b6100c76101fb366004610ffc565b61092f565b6101ac61020e3660046111a7565b609a6020526000908152604090205481565b6100c761022e3660046111a7565b610a95565b60005b81518110156103e557336000908152609960205260408120835182908590859081106102645761026461126e565b6020026020010151815260200190815260200160002090506000600281111561028f5761028f61113b565b600382015460ff1660028111156102a8576102a861113b565b146102c6576040516309f280fb60e21b815260040160405180910390fd5b60038101805460ff19166002179055609754600182015482546102f7926001600160a01b0391821692911690610b0e565b60975481546001830154604051638340f54960e01b81526001600160a01b0393841693638340f549936103339333939290911691600401611284565b600060405180830381600087803b15801561034d57600080fd5b505af1158015610361573d6000803e3d6000fd5b50505050336001600160a01b03168383815181106103815761038161126e565b60209081029190910101518254600184015460028501546040517fb113f5bc59c478d77622f64e548b285275410095dd50e09246b7ed0bde748600936103d4936001600160a01b039091169290916112a8565b60405180910390a350600101610236565b5050565b6103f1610beb565b6103fb6000610c4a565b565b6097546001600160a01b03163314610428576040516305346f9f60e21b815260040160405180910390fd5b80156105f257604080516080810182526001600160a01b038416808252602080830185905260009182526098905282812054909282019061046990426112df565b8152602001600090526001600160a01b038581166000908152609a602090815260408083205460998352818420818552835292819020855181546001600160a01b03191695169490941784559084015160018085019190915590840151600280850191909155606085015160038501805496975093958795949193919260ff19909116919084908111156104ff576104ff61113b565b021790555050506001600160a01b0385166000908152609a6020526040812080549161052a836112f8565b909155505081516040516323b872dd60e01b81526001600160a01b03909116906323b872dd9061056290339030908890600401611284565b6020604051808303816000875af1158015610581573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105a59190611311565b50846001600160a01b03167fd891b7c561284d06b99591b4af8a8eff2df0cf8e78a61975280249a739eabc5f858585604001516040516105e7939291906112a8565b60405180910390a250505b505050565b6105ff610beb565b7fc3c36c46ceccc63b34434d2c1894f4dc8e966f8ef702ff7de91e3717cc63fa3f8282604051610630929190611333565b60405180910390a16001600160a01b03909116600090815260986020526040902055565b6033546001600160a01b031690565b600054610100900460ff16158080156106835750600054600160ff909116105b806106a4575061069230610c9c565b1580156106a4575060005460ff166001145b61070c5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801561072f576000805461ff0019166101001790555b610737610cab565b61073f610cda565b609780546001600160a01b0319166001600160a01b03841617905580156103e5576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6001600160a01b0383166000908152609a602052604081205460609183906107cb86836112df565b9050828211156107dd57505050610928565b828111156107e85750815b6107f2828261134c565b6001600160401b0381111561080957610809610fe6565b60405190808252806020026020018201604052801561086257816020015b61084f6040805160808101825260008082526020820181905291810182905290606082015290565b8152602001906001900390816108275790505b509350815b81811015610923576001600160a01b0380891660009081526099602090815260408083208584528252808320815160808101835281549095168552600181015492850192909252600280830154918501919091526003820154929392606084019160ff909116908111156108dd576108dd61113b565b60028111156108ee576108ee61113b565b905250905080866108ff898561134c565b8151811061090f5761090f61126e565b602090810291909101015250600101610867565b505050505b9392505050565b60005b81518110156103e557336000908152609960205260408120835182908590859081106109605761096061126e565b6020026020010151815260200190815260200160002090506000600281111561098b5761098b61113b565b600382015460ff1660028111156109a4576109a461113b565b146109c2576040516309f280fb60e21b815260040160405180910390fd5b42816002015411156109e7576040516338e71e2760e11b815260040160405180910390fd5b60038101805460ff191660019081179091558101548154610a15916001600160a01b03909116903390610d09565b336001600160a01b0316838381518110610a3157610a3161126e565b60209081029190910101518254600184015460028501546040517fe186bb2096b8e33883a4da29934845ac31248ec1e2c4f1f9c93127954cbab7f893610a84936001600160a01b039091169290916112a8565b60405180910390a350600101610932565b610a9d610beb565b6001600160a01b038116610b025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610703565b610b0b81610c4a565b50565b604051636eb1769f60e11b81523060048201526001600160a01b038381166024830152600091839186169063dd62ed3e90604401602060405180830381865afa158015610b5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b83919061135f565b610b8d91906112df565b9050610be58463095ea7b360e01b8584604051602401610bae929190611333565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152610d28565b50505050565b33610bf4610654565b6001600160a01b0316146103fb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610703565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03163b151590565b600054610100900460ff16610cd25760405162461bcd60e51b815260040161070390611378565b6103fb610dfa565b600054610100900460ff16610d015760405162461bcd60e51b815260040161070390611378565b6103fb610e2a565b6105f28363a9059cbb60e01b8484604051602401610bae929190611333565b6000610d7d826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316610e589092919063ffffffff16565b8051909150156105f25780806020019051810190610d9b9190611311565b6105f25760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610703565b600054610100900460ff16610e215760405162461bcd60e51b815260040161070390611378565b6103fb33610c4a565b600054610100900460ff16610e515760405162461bcd60e51b815260040161070390611378565b6001606555565b6060610e678484600085610e6f565b949350505050565b606082471015610ed05760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610703565b600080866001600160a01b03168587604051610eec91906113e7565b60006040518083038185875af1925050503d8060008114610f29576040519150601f19603f3d011682016040523d82523d6000602084013e610f2e565b606091505b5091509150610f3f87838387610f4a565b979650505050505050565b60608315610fb7578251600003610fb057610f6485610c9c565b610fb05760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610703565b5081610e67565b610e678383815115610fcc5781518083602001fd5b8060405162461bcd60e51b81526004016107039190611403565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561100f57600080fd5b82356001600160401b038082111561102657600080fd5b818501915085601f83011261103a57600080fd5b81358181111561104c5761104c610fe6565b8060051b604051601f19603f8301168101818110858211171561107157611071610fe6565b60405291825284820192508381018501918883111561108f57600080fd5b938501935b828510156110ad57843584529385019392850192611094565b98975050505050505050565b80356001600160a01b03811681146110d057600080fd5b919050565b6000806000606084860312156110ea57600080fd5b6110f3846110b9565b9250611101602085016110b9565b9150604084013590509250925092565b6000806040838503121561112457600080fd5b61112d836110b9565b946020939093013593505050565b634e487b7160e01b600052602160045260246000fd5b6003811061116f57634e487b7160e01b600052602160045260246000fd5b9052565b6001600160a01b038516815260208101849052604081018390526080810161119e6060830184611151565b95945050505050565b6000602082840312156111b957600080fd5b610928826110b9565b6000806000606084860312156111d757600080fd5b6111e0846110b9565b95602085013595506040909401359392505050565b602080825282518282018190526000919060409081850190868401855b8281101561126157815180516001600160a01b03168552868101518786015285810151868601526060908101519061124c81870183611151565b50506080939093019290850190600101611212565b5091979650505050505050565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b039390931683526020830191909152604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808201808211156112f2576112f26112c9565b92915050565b60006001820161130a5761130a6112c9565b5060010190565b60006020828403121561132357600080fd5b8151801515811461092857600080fd5b6001600160a01b03929092168252602082015260400190565b818103818111156112f2576112f26112c9565b60006020828403121561137157600080fd5b5051919050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60005b838110156113de5781810151838201526020016113c6565b50506000910152565b600082516113f98184602087016113c3565b9190910192915050565b60208152600082518060208401526114228160408501602087016113c3565b601f01601f1916919091016040019291505056fea2646970667358221220a52a02751f07b1b3019f4afe25812005bdf5683091e0d0b3d4ddea2283f1ff7c64736f6c63430008120033