6.7k txs
7k calls
constructor
constructor(address _owner, address _stakeToken, address _rewardToken, uint64 _startTime, uint64 _duration, uint256 _rewardAmount, uint256 _poolStakeLimit, uint256 _userStakeLimit)
functions
duration
viewfunction duration() view returns (uint64)
earned
viewfunction earned(address _account) view returns (uint256)
finishTime
viewfunction finishTime() view returns (uint64)
getRewardTime
viewfunction getRewardTime() view returns (uint128)
lastTimeRewardApplicable
viewfunction lastTimeRewardApplicable() view returns (uint256)
lastUpdateTime
viewfunction lastUpdateTime() view returns (uint256)
owner
viewfunction owner() view returns (address)
poolStakeLimit
viewfunction poolStakeLimit() view returns (uint256)
rewardAmount
viewfunction rewardAmount() view returns (uint256)
rewardPerToken
viewfunction rewardPerToken() view returns (uint256)
rewardPerTokenStored
viewfunction rewardPerTokenStored() view returns (uint256)
rewardRate
viewfunction rewardRate() view returns (uint256)
rewardToken
viewfunction rewardToken() view returns (address)
stakeToken
viewfunction stakeToken() view returns (address)
startTime
viewfunction startTime() view returns (uint64)
totalReward
viewfunction totalReward(address _account) view returns (uint256)
totalStakeAmount
viewfunction totalStakeAmount() view returns (uint256)
userRewardDebt
viewfunction userRewardDebt(address) view returns (uint256)
userRewardPaid
viewfunction userRewardPaid(address) view returns (uint256)
userRewardPerTokenPaid
viewfunction userRewardPerTokenPaid(address) view returns (uint256)
userStakeAmount
viewfunction userStakeAmount(address) view returns (uint256)
userStakeLimit
viewfunction userStakeLimit() view returns (uint256)
vaultAddress
viewfunction vaultAddress() view returns (address)
withdrawTime
viewfunction withdrawTime() view returns (uint128)
exit
nonpayablefunction exit()
getReward
nonpayablefunction getReward(uint256 _amount)
renounceOwnership
nonpayablefunction renounceOwnership()
stake
nonpayablefunction stake(uint256 _amount)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateGetRewardTime
nonpayablefunction updateGetRewardTime(uint128 _getRewardTime)
updateStakeLimit
nonpayablefunction updateStakeLimit(uint256 _poolStakeLimit, uint256 _userStakeLimit)
updateVaultAddress
nonpayablefunction updateVaultAddress(address _vaultAddress)
updateWithdrawTime
nonpayablefunction updateWithdrawTime(uint128 _withdrawTime)
withdraw
nonpayablefunction withdraw(uint256 _amount)
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
XPoolGetReward
event XPoolGetReward(address indexed user, uint256 reward)
XPoolStake
event XPoolStake(address indexed user, uint256 amount)
XPoolUpdateGetRewartTime
event XPoolUpdateGetRewartTime(uint128 getRewardTime)
XPoolUpdateStakeLimit
event XPoolUpdateStakeLimit(uint256 poolStakeLimit, uint256 userStakeLimit)
XPoolUpdateVaultAddress
event XPoolUpdateVaultAddress(address vaultAddress)
XPoolUpdateWithdrawTime
event XPoolUpdateWithdrawTime(uint128 withdrawTime)
XPoolWithdraw
event XPoolWithdraw(address indexed user, uint256 amount)
errors
No errors.
creation bytecode
0x61016060405234801562000011575f80fd5b5060405162001ea438038062001ea4833981016040819052620000349162000534565b60015f556200004333620003d3565b6001600160a01b038816620000a95760405162461bcd60e51b815260206004820152602160248201527f4c61756e6368706f6f6c3a206f776e65722061646472657373206973207a65726044820152606f60f81b60648201526084015b60405180910390fd5b6001600160a01b038716620001105760405162461bcd60e51b815260206004820152602660248201527f4c61756e6368706f6f6c3a207374616b65546f6b656e2061646472657373206960448201526573207a65726f60d01b6064820152608401620000a0565b856001600160a01b0316876001600160a01b0316036200018a5760405162461bcd60e51b815260206004820152602e60248201527f4c61756e6368706f6f6c3a207374616b65546f6b656e2063616e27742065717560448201526d30b6103932bbb0b9322a37b5b2b760911b6064820152608401620000a0565b42856001600160401b031611620001e45760405162461bcd60e51b815260206004820152601d60248201527f4c61756e6368706f6f6c3a20696e76616c696420737461727454696d650000006044820152606401620000a0565b5f846001600160401b0316116200023e5760405162461bcd60e51b815260206004820152601c60248201527f4c61756e6368706f6f6c3a20696e76616c6964206475726174696f6e000000006044820152606401620000a0565b5f83116200028f5760405162461bcd60e51b815260206004820181905260248201527f4c61756e6368706f6f6c3a20696e76616c696420726577617264416d6f756e746044820152606401620000a0565b5f8211620002eb5760405162461bcd60e51b815260206004820152602260248201527f4c61756e6368706f6f6c3a20696e76616c696420706f6f6c5374616b654c696d6044820152611a5d60f21b6064820152608401620000a0565b5f8111620003475760405162461bcd60e51b815260206004820152602260248201527f4c61756e6368706f6f6c3a20696e76616c696420757365725374616b654c696d6044820152611a5d60f21b6064820152608401620000a0565b620003528862000424565b6001600160a01b03808816608052861660a0526001600160401b0380861660c0819052600555841660e052620003898486620005bc565b6001600160401b03908116610100819052600160801b810217600655610120849052620003b990851684620005f0565b610140526003919091556004555062000610945050505050565b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6200042e620004a3565b6001600160a01b038116620004955760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620000a0565b620004a081620003d3565b50565b6001546001600160a01b03163314620004ff5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620000a0565b565b80516001600160a01b038116811462000518575f80fd5b919050565b80516001600160401b038116811462000518575f80fd5b5f805f805f805f80610100898b0312156200054d575f80fd5b620005588962000501565b97506200056860208a0162000501565b96506200057860408a0162000501565b95506200058860608a016200051d565b94506200059860808a016200051d565b935060a0890151925060c0890151915060e089015190509295985092959890939650565b6001600160401b03818116838216019080821115620005e957634e487b7160e01b5f52601160045260245ffd5b5092915050565b5f826200060b57634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a05160c05160e0516101005161012051610140516117ee620006b65f395f81816103d10152610fff01525f6104fe01525f818161036801528181610bc901528181610c040152610d2d01525f61022b01525f81816103aa01528181610b2401528181610cb301526110ac01525f81816105250152818161062601528181610842015261087f01525f818161034101528181610ab30152610f1001526117ee5ff3fe608060405234801561000f575f80fd5b50600436106101fc575f3560e01c80638da5cb5b11610114578063cd3daf9d116100a9578063e39d6f1111610079578063e39d6f11146104cb578063e9fad8ee146104de578063f2fde38b146104e6578063f7b2a7be146104f9578063f7c618c114610520575f80fd5b8063cd3daf9d1461049e578063d2de2f85146104a6578063df136d65146104b9578063e20bdc67146104c2575f80fd5b8063b0d079c8116100e4578063b0d079c81461045a578063ba14f26a14610463578063c79f9b9f14610482578063c8f33c9114610495575f80fd5b80638da5cb5b1461041a57806394409a561461042b57806399908f7414610434578063a694fc3a14610447575f80fd5b80634bf6f9e711610195578063715018a611610165578063715018a61461039d57806378e97925146103a55780637b0a47ee146103cc57806380faa57d146103f35780638b876347146103fb575f80fd5b80634bf6f9e71461031d57806351ed6a301461033c5780635958611e146103635780635d3841da1461038a575f80fd5b8063347ebbb4116101d0578063347ebbb41461028e5780633e84681a146102a1578063430bf08a146102c057806345cb3dde146102eb575f80fd5b80628cc262146102005780630fb5a6b4146102265780631c4b774b146102665780632e1a7d4d1461027b575b5f80fd5b61021361020e3660046115ed565b610547565b6040519081526020015b60405180910390f35b61024d7f000000000000000000000000000000000000000000000000000000000000000081565b60405167ffffffffffffffff909116815260200161021d565b61027961027436600461161a565b6105c2565b005b61027961028936600461161a565b6108ec565b61027961029c366004611631565b610b1a565b6102136102af3660046115ed565b600c6020525f908152604090205481565b6002546102d3906001600160a01b031681565b6040516001600160a01b03909116815260200161021d565b60065461030590600160801b90046001600160801b031681565b6040516001600160801b03909116815260200161021d565b61021361032b3660046115ed565b60096020525f908152604090205481565b6102d37f000000000000000000000000000000000000000000000000000000000000000081565b61024d7f000000000000000000000000000000000000000000000000000000000000000081565b600654610305906001600160801b031681565b610279610bb3565b61024d7f000000000000000000000000000000000000000000000000000000000000000081565b6102137f000000000000000000000000000000000000000000000000000000000000000081565b610213610bc6565b6102136104093660046115ed565b60086020525f908152604090205481565b6001546001600160a01b03166102d3565b610213600b5481565b6102136104423660046115ed565b610c2e565b61027961045536600461161a565b610c4f565b61021360035481565b6102136104713660046115ed565b600a6020525f908152604090205481565b610279610490366004611651565b610f6a565b61021360055481565b610213610fd0565b6102796104b43660046115ed565b61104c565b61021360075481565b61021360045481565b6102796104d9366004611651565b6110a2565b610279611142565b6102796104f43660046115ed565b611172565b6102137f000000000000000000000000000000000000000000000000000000000000000081565b6102d37f000000000000000000000000000000000000000000000000000000000000000081565b6001600160a01b0381165f908152600960209081526040808320546008909252822054670de0b6b3a76400009061057c610fd0565b610586919061168b565b6001600160a01b0385165f908152600c60205260409020546105a8919061169e565b6105b291906116b5565b6105bc91906116d4565b92915050565b6105ca6111e8565b336105d3610fd0565b6007556105de610bc6565b6005556001600160a01b03811615610624576105f981610547565b6001600160a01b0382165f908152600960209081526040808320939093556007546008909152919020555b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166106c55760405162461bcd60e51b815260206004820152603860248201527f4c61756e6368706f6f6c3a20726577617264546f6b656e20616464726573732060448201527f6973207a65726f2c2063616e277420676574526577617264000000000000000060648201526084015b60405180910390fd5b6006546001600160801b03164210156107315760405162461bcd60e51b815260206004820152602860248201527f4c61756e6368706f6f6c3a2069742773206e6f742067657420726577617264206044820152671d1a5b59481e595d60c21b60648201526084016106bc565b5f82116107805760405162461bcd60e51b815260206004820152601e60248201527f4c61756e6368706f6f6c3a2063616e277420676574207265776172642030000060448201526064016106bc565b335f90815260096020526040902054828110156107df5760405162461bcd60e51b815260206004820152601f60248201527f4c61756e6368706f6f6c3a20696e73756666696369656e74207265776172640060448201526064016106bc565b335f90815260096020526040812080548592906107fd90849061168b565b9091555050335f908152600a6020526040812080548592906108209084906116d4565b90915550506002546001600160a01b031661086e576108696001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016338561123f565b6108a9565b6002546108a9906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116911633866112a7565b60405183815233907fab61fba45af2832b01c706ee5351fe55ccfb475ae5899c606d3399937d1b56d19060200160405180910390a250506108e960015f55565b50565b6108f46111e8565b336108fd610fd0565b600755610908610bc6565b6005556001600160a01b0381161561094e5761092381610547565b6001600160a01b0382165f908152600960209081526040808320939093556007546008909152919020555b600654600160801b90046001600160801b03164210156109bf5760405162461bcd60e51b815260206004820152602660248201527f4c61756e6368706f6f6c3a2069742773206e6f742077697468647261772074696044820152651b59481e595d60d21b60648201526084016106bc565b5f8211610a0e5760405162461bcd60e51b815260206004820152601c60248201527f4c61756e6368706f6f6c3a2063616e277420776974686472617720300000000060448201526064016106bc565b335f908152600c6020526040902054821115610a6c5760405162461bcd60e51b815260206004820181905260248201527f4c61756e6368706f6f6c3a20696e73756666696369656e742062616c616e636560448201526064016106bc565b81600b5f828254610a7d919061168b565b9091555050335f908152600c602052604081208054849290610aa090849061168b565b90915550610ada90506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016338461123f565b60405182815233907f82505cf9ec2ac12d90f67e58c688668b64b1ae7b8a350b171be1e76d87f8b2f1906020015b60405180910390a2506108e960015f55565b610b226112e5565b7f000000000000000000000000000000000000000000000000000000000000000067ffffffffffffffff16421115610b6c5760405162461bcd60e51b81526004016106bc906116e7565b6003829055600481905560408051838152602081018390527f07bffbab780588c80a6245aa7bbfaaad13196e5b77b908aaaa9459d9bafeedd7910160405180910390a15050565b610bbb6112e5565b610bc45f61133f565b565b5f7f000000000000000000000000000000000000000000000000000000000000000067ffffffffffffffff164210610c27575067ffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690565b425b905090565b6001600160a01b0381165f908152600a60205260408120546105b283610547565b610c576111e8565b33610c60610fd0565b600755610c6b610bc6565b6005556001600160a01b03811615610cb157610c8681610547565b6001600160a01b0382165f908152600960209081526040808320939093556007546008909152919020555b7f000000000000000000000000000000000000000000000000000000000000000067ffffffffffffffff16421015610d2b5760405162461bcd60e51b815260206004820152601f60248201527f4c61756e6368706f6f6c3a20686176656e27742073746172746564207965740060448201526064016106bc565b7f000000000000000000000000000000000000000000000000000000000000000067ffffffffffffffff16421115610daf5760405162461bcd60e51b815260206004820152602160248201527f4c61756e6368706f6f6c3a206974277320616c72656164792066696e697368656044820152601960fa1b60648201526084016106bc565b5f8211610dfe5760405162461bcd60e51b815260206004820152601960248201527f4c61756e6368706f6f6c3a2063616e2774207374616b6520300000000000000060448201526064016106bc565b81600b5f828254610e0f91906116d4565b9091555050600354600b541115610e745760405162461bcd60e51b815260206004820152602360248201527f4c61756e6368706f6f6c3a2065786365656420706f6f6c207374616b65206c696044820152621b5a5d60ea1b60648201526084016106bc565b335f908152600c602052604081208054849290610e929084906116d4565b9091555050600454335f908152600c60205260409020541115610f035760405162461bcd60e51b815260206004820152602360248201527f4c61756e6368706f6f6c3a206578636565642075736572207374616b65206c696044820152621b5a5d60ea1b60648201526084016106bc565b610f386001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163330856112a7565b60405182815233907fbc4daf100da0c8b605f86dcab5104e00db8f341dbccadc24efa9d2ff77f621f090602001610b08565b610f726112e5565b600680546fffffffffffffffffffffffffffffffff19166001600160801b0383169081179091556040519081527f43a60dc206e3f0a312924f9240d8f1151e2fd1dfe74b15c43eb7c49c40968159906020015b60405180910390a150565b5f600b545f03610fe1575060075490565b600b54600554610fef610bc6565b610ff9919061168b565b611023907f000000000000000000000000000000000000000000000000000000000000000061169e565b61103590670de0b6b3a764000061169e565b61103f91906116b5565b600754610c2991906116d4565b6110546112e5565b600280546001600160a01b0319166001600160a01b0383169081179091556040519081527f8a26db4cf167a0eeca28a36fc94856ae789c9076650113cb0b960062c9bf760290602001610fc5565b6110aa6112e5565b7f000000000000000000000000000000000000000000000000000000000000000067ffffffffffffffff164211156110f45760405162461bcd60e51b81526004016106bc906116e7565b600680546001600160801b03908116600160801b918416918202179091556040519081527fc3c888ceca69e83a57cd20121ae731a8fbfc75a81e44a037b27a6f385c44ee3890602001610fc5565b335f908152600c602052604090205461115a906108ec565b335f90815260096020526040902054610bc4906105c2565b61117a6112e5565b6001600160a01b0381166111df5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106bc565b6108e98161133f565b60025f54036112395760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016106bc565b60025f55565b6040516001600160a01b0383166024820152604481018290526112a290849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611390565b505050565b6040516001600160a01b03808516602483015283166044820152606481018290526112df9085906323b872dd60e01b9060840161126b565b50505050565b6001546001600160a01b03163314610bc45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106bc565b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f6113e4826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166114639092919063ffffffff16565b905080515f1480611404575080806020019051810190611404919061172a565b6112a25760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016106bc565b606061147184845f85611479565b949350505050565b6060824710156114da5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016106bc565b5f80866001600160a01b031685876040516114f5919061176b565b5f6040518083038185875af1925050503d805f811461152f576040519150601f19603f3d011682016040523d82523d5f602084013e611534565b606091505b509150915061154587838387611550565b979650505050505050565b606083156115be5782515f036115b7576001600160a01b0385163b6115b75760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016106bc565b5081611471565b61147183838151156115d35781518083602001fd5b8060405162461bcd60e51b81526004016106bc9190611786565b5f602082840312156115fd575f80fd5b81356001600160a01b0381168114611613575f80fd5b9392505050565b5f6020828403121561162a575f80fd5b5035919050565b5f8060408385031215611642575f80fd5b50508035926020909101359150565b5f60208284031215611661575f80fd5b81356001600160801b0381168114611613575f80fd5b634e487b7160e01b5f52601160045260245ffd5b818103818111156105bc576105bc611677565b80820281158282048414176105bc576105bc611677565b5f826116cf57634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156105bc576105bc611677565b60208082526023908201527f4c61756e6368706f6f6c3a2063616e2774206578636565642073746172742074604082015262696d6560e81b606082015260800190565b5f6020828403121561173a575f80fd5b81518015158114611613575f80fd5b5f5b8381101561176357818101518382015260200161174b565b50505f910152565b5f825161177c818460208701611749565b9190910192915050565b602081525f82518060208401526117a4816040850160208701611749565b601f01601f1916919091016040019291505056fea26469706673582212201a2f0b7e6d32fe41172651477cd6dc4d3a830ed8de1f0cbd93e430a125f69ba864736f6c634300081400330000000000000000000000002100c6ba5361f4afa29c5d187ae5e0cd5a0f9cf6000000000000000000000000103071da56e7cd95b415320760d6a0ddc4da1ca5000000000000000000000000b7e548c4f133adbb910914d7529d5cb00c2e905100000000000000000000000000000000000000000000000000000000686b46400000000000000000000000000000000000000000000000000000000000093a8000000000000000000000000000000000000000000000000000000746a5288000000000000000000000000000000000000000000000069e10de76676d0800000000000000000000000000000000000000000000000000021e19e0c9bab2400000