0 txs
0 calls
constructor
constructor(address _rewardToken, uint256 _depositFundsInterval)
functions
depositFundsInterval
viewfunction depositFundsInterval() view returns (uint256)
getGeneratedReward
viewfunction getGeneratedReward(uint256 _fromTime, uint256 _toTime) view returns (uint256)
isHandler
viewfunction isHandler(address) view returns (bool)
nextDepositFundsTime
viewfunction nextDepositFundsTime() view returns (uint256)
operator
viewfunction operator() view returns (address)
pendingShare
viewfunction pendingShare(uint256 _pid, address _user) view returns (uint256)
poolEndTime
viewfunction poolEndTime() view returns (uint256)
poolInfo
viewfunction poolInfo(uint256) view returns (address token, uint256 allocPoint, uint256 lastRewardTime, uint256 accRewardSharePerShare, bool isStarted)
poolStartTime
viewfunction poolStartTime() view returns (uint256)
rewardToken
viewfunction rewardToken() view returns (address)
sharesPerSecond
viewfunction sharesPerSecond() view returns (uint256)
totalAllocPoint
viewfunction totalAllocPoint() view returns (uint256)
totalPendingShare
viewfunction totalPendingShare() view returns (uint256)
userInfo
viewfunction userInfo(uint256, address) view returns (uint256 amount, uint256 rewardDebt)
add
nonpayablefunction add(uint256 _allocPoint, address _token, bool _withUpdate, uint256 _lastRewardTime)
deposit
nonpayablefunction deposit(uint256 _pid, uint256 _amount) returns (bool)
depositForAccount
nonpayablefunction depositForAccount(address _account, uint256 _pid, uint256 _amount) returns (bool)
depositFundsForInterval
nonpayablefunction depositFundsForInterval(uint256 _amount) returns (uint256)
emergencyWithdraw
nonpayablefunction emergencyWithdraw(uint256 _pid)
governanceRecoverUnsupported
nonpayablefunction governanceRecoverUnsupported(address _token, uint256 amount, address to)
initialize
nonpayablefunction initialize(uint256 _poolStartTime, uint256 _poolEndTime) returns (bool)
massUpdatePools
nonpayablefunction massUpdatePools()
set
nonpayablefunction set(uint256 _pid, uint256 _allocPoint)
setDepositFundsInterval
nonpayablefunction setDepositFundsInterval(uint256 _depositFundsInterval)
setHandler
nonpayablefunction setHandler(address _handler, bool _isActive)
setOperator
nonpayablefunction setOperator(address _operator)
setPoolEndTime
nonpayablefunction setPoolEndTime(uint256 _poolEndTime)
setSharesPerSecond
nonpayablefunction setSharesPerSecond(uint256 _sharesPerSecond)
updatePool
nonpayablefunction updatePool(uint256 _pid)
withdraw
nonpayablefunction withdraw(uint256 _pid, uint256 _amount)
events
Deposit
event Deposit(address indexed sender, address indexed user, uint256 indexed pid, uint256 amount)
DepositedFunds
event DepositedFunds(address indexed sender, uint256 amount, uint256 sharesPerSecond)
EmergencyWithdraw
event EmergencyWithdraw(address indexed user, uint256 indexed pid, uint256 amount)
Initialized
event Initialized(uint8 version)
RewardPaid
event RewardPaid(address indexed user, uint256 amount)
Withdraw
event Withdraw(address indexed user, uint256 indexed pid, uint256 amount)
errors
No errors.
creation bytecode
0x608060405260006002553480156200001657600080fd5b50604051620021b2380380620021b28339810160408190526200003991620000ec565b6001600160a01b038216620000a85760405162461bcd60e51b815260206004820152602b60248201527f47444558526577617264506f6f6c3a20526577617264546f6b656e206973207a60448201526a65726f206164647265737360a81b606482015260840160405180910390fd5b600080546001600160a01b03909316620100000262010000600160b01b031990931692909217909155600b55600180546001600160a01b0319163317905562000128565b600080604083850312156200010057600080fd5b82516001600160a01b03811681146200011857600080fd5b6020939093015192949293505050565b61207a80620001386000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80636e271dd511610104578063b3ab15fb116100a2578063e2bbb15811610071578063e2bbb1581461043b578063e4a301161461044e578063f12e8c3e14610461578063f7c618c11461046a57600080fd5b8063b3ab15fb146103f9578063bbd5e3f41461040c578063cf4b55cb1461041f578063d6ad82821461043257600080fd5b806393f1a40b116100de57806393f1a40b1461038357806396805e54146103ca5780639cb7de4b146103dd578063acfb24b7146103f057600080fd5b80636e271dd51461035e578063889806fd14610367578063896abe3e1461037057600080fd5b806346ea87af1161017c578063570ca7351161014b578063570ca7351461030f5780635f96dc111461033a578063630b5ba1146103435780636db64d061461034b57600080fd5b806346ea87af146102a357806351eb05a6146102d65780635312ea8e146102e957806354575af4146102fc57600080fd5b806317caf6f1116101b857806317caf6f1146102615780631ab06ee51461026a578063231f0c6a1461027d578063441a3e701461029057600080fd5b80630216a2b7146101df5780631526fe271461020557806315f74a4d1461024c575b600080fd5b6101f26101ed366004611d2f565b610483565b6040519081526020015b60405180910390f35b610218610213366004611d2f565b6104c8565b604080516001600160a01b03909616865260208601949094529284019190915260608301521515608082015260a0016101fc565b61025f61025a366004611d2f565b610516565b005b6101f260025481565b61025f610278366004611d48565b6105c8565b6101f261028b366004611d48565b61065d565b61025f61029e366004611d48565b61071c565b6102c66102b1366004611d82565b60096020526000908152604090205460ff1681565b60405190151581526020016101fc565b61025f6102e4366004611d2f565b610905565b61025f6102f7366004611d2f565b610a6e565b61025f61030a366004611d9f565b610b10565b600154610322906001600160a01b031681565b6040516001600160a01b0390911681526020016101fc565b6101f260035481565b61025f610e0c565b6102c6610359366004611de1565b610e2f565b6101f260045481565b6101f260065481565b61025f61037e366004611d2f565b610eb1565b6103b5610391366004611e16565b60086020908152600092835260408084209091529082529020805460019091015482565b604080519283526020830191909152016101fc565b61025f6103d8366004611e54565b610ee0565b61025f6103eb366004611e9c565b6110c1565b6101f260055481565b61025f610407366004611d82565b611116565b61025f61041a366004611d2f565b6111c9565b6101f261042d366004611e16565b6111f8565b6101f2600a5481565b6102c6610449366004611d48565b611354565b6102c661045c366004611d48565b61136a565b6101f2600b5481565b600054610322906201000090046001600160a01b031681565b6001546000906001600160a01b031633146104b95760405162461bcd60e51b81526004016104b090611eca565b60405180910390fd5b6104c282611552565b92915050565b600781815481106104d857600080fd5b6000918252602090912060059091020180546001820154600283015460038401546004909401546001600160a01b0390931694509092909160ff1685565b6001546001600160a01b031633146105405760405162461bcd60e51b81526004016104b090611eca565b428110158015610551575060035481115b6105c35760405162461bcd60e51b815260206004820152603b60248201527f47444558526577617264506f6f6c3a20456e642074696d65206c74206375727260448201527f656e742074696d657374616d70206f722073746172742074696d65000000000060648201526084016104b0565b600455565b6001546001600160a01b031633146105f25760405162461bcd60e51b81526004016104b090611eca565b6105fa610e0c565b60006007838154811061060f5761060f611f10565b60009182526020909120600590910201600481015490915060ff1615610656576106528261064c836001015460025461171590919063ffffffff16565b90611728565b6002555b6001015550565b600081831061066e575060006104c2565b60045482106106d6576004548310610688575060006104c2565b60035483116106bb576106b46005546106ae60035460045461171590919063ffffffff16565b90611734565b90506104c2565b6106b46005546106ae8560045461171590919063ffffffff16565b60035482116106e7575060006104c2565b600354831161070b576106b46005546106ae6003548561171590919063ffffffff16565b6005546106b4906106ae8486611715565b600033905060006007848154811061073657610736611f10565b600091825260208083208784526008825260408085206001600160a01b038816865290925292208054600590920290920192508411156107c45760405162461bcd60e51b815260206004820152602360248201527f47444558526577617264506f6f6c3a20416d6f756e7420677420617661696c61604482015262626c6560e81b60648201526084016104b0565b6107cd85610905565b600061080a8260010154610804670de0b6b3a76400006107fe8760030154876000015461173490919063ffffffff16565b90611740565b90611715565b905080156108705760065461081f9082611715565b60065561082c848261174c565b836001600160a01b03167fe2403640ba68fed3a2f88b7557551d1993f84b99bb10ff833f0cf8db0c5e04868260405161086791815260200190565b60405180910390a25b841561089a5781546108829086611715565b8255825461089a906001600160a01b03168587611809565b600383015482546108b891670de0b6b3a7640000916107fe91611734565b600183015560405185815286906001600160a01b038616907ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b5689060200160405180910390a3505050505050565b60006007828154811061091a5761091a611f10565b9060005260206000209060050201905080600201544211610939575050565b80546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610981573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109a59190611f26565b9050806000036109ba57504260029091015550565b600482015460ff166109eb5760048201805460ff191660019081179091558201546002546109e791611728565b6002555b60025415610a63576000610a0383600201544261065d565b90506000610a246002546107fe86600101548561173490919063ffffffff16565b600654909150610a349082611728565b600655610a5b610a50846107fe84670de0b6b3a7640000611734565b600386015490611728565b600385015550505b504260029091015550565b600060078281548110610a8357610a83611f10565b600091825260208083208584526008825260408085203380875293528420805485825560018201959095556005909302018054909450919291610ad3916001600160a01b03919091169083611809565b604051818152849033907fbb757047c2b5f3974fe26b7c10f732e7bce710b0952a71082702781e62ae05959060200160405180910390a350505050565b6001546001600160a01b03163314610b3a5760405162461bcd60e51b81526004016104b090611eca565b610b42610e0c565b600754600454610b559062069780611f55565b421015610c88576000546001600160a01b0362010000909104811690851603610bd55760405162461bcd60e51b815260206004820152602c60248201527f47444558526577617264506f6f6c3a205265636f76657220746f6b656e20657160448201526b102932bbb0b9322a37b5b2b760a11b60648201526084016104b0565b60005b81811015610c8257600060078281548110610bf557610bf5611f10565b6000918252602090912060059091020180549091506001600160a01b0390811690871603610c795760405162461bcd60e51b815260206004820152602b60248201527f47444558526577617264506f6f6c3a205265636f76657220746f6b656e20657160448201526a103837b7b6103a37b5b2b760a91b60648201526084016104b0565b50600101610bd8565b50610df2565b6000546001600160a01b0362010000909104811690851603610df257600080546040516370a0823160e01b8152306004820152620100009091046001600160a01b0316906370a0823190602401602060405180830381865afa158015610cf2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d169190611f26565b90506006548111610d7d5760405162461bcd60e51b815260206004820152602b60248201527f47444558526577617264506f6f6c3a204e6f2072657761726420746f6b656e7360448201526a103a37903932b1b7bb32b960a91b60648201526084016104b0565b600654610d8b908290611715565b841115610df05760405162461bcd60e51b815260206004820152602d60248201527f47444558526577617264506f6f6c3a20416d6f756e7420677420706f7373696260448201526c3632903a37903932b1b7bb32b960991b60648201526084016104b0565b505b610e066001600160a01b0385168385611809565b50505050565b60075460005b81811015610e2b57610e2381610905565b600101610e12565b5050565b3360009081526009602052604081205460ff16610e9c5760405162461bcd60e51b815260206004820152602560248201527f47444558526577617264506f6f6c3a2043616c6c6572206973206e6f7420686160448201526437323632b960d91b60648201526084016104b0565b610ea784848461186c565b5060019392505050565b6001546001600160a01b03163314610edb5760405162461bcd60e51b81526004016104b090611eca565b600555565b6001546001600160a01b03163314610f0a5760405162461bcd60e51b81526004016104b090611eca565b610f1383611a08565b8115610f2157610f21610e0c565b600354421015610f505780600003610f3c5750600354610f64565b600354811015610f4b57506003545b610f64565b801580610f5c57504281105b15610f645750425b600060035482111580610f775750428211155b6040805160a0810182526001600160a01b03878116825260208201898152928201868152600060608401818152861580156080870190815260078054600181018255945295517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688600590940293840180546001600160a01b031916919096161790945594517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68982015590517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68a82015592517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68b84015590517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c68c909201805460ff1916921515929092179091559091506110ba576002546110b69086611728565b6002555b5050505050565b6001546001600160a01b031633146110eb5760405162461bcd60e51b81526004016104b090611eca565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6001546001600160a01b031633146111405760405162461bcd60e51b81526004016104b090611eca565b6001600160a01b0381166111a75760405162461bcd60e51b815260206004820152602860248201527f47444558526577617264506f6f6c3a204f70657261746f72206973207a65726f604482015267206164647265737360c01b60648201526084016104b0565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b031633146111f35760405162461bcd60e51b81526004016104b090611eca565b600b55565b6000806007848154811061120e5761120e611f10565b600091825260208083208784526008825260408085206001600160a01b03898116875293528085206005949094029091016003810154815492516370a0823160e01b815230600482015291965093949291909116906370a0823190602401602060405180830381865afa158015611289573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112ad9190611f26565b90508360020154421180156112c157508015155b1561131e5760006112d685600201544261065d565b905060006112f76002546107fe88600101548561173490919063ffffffff16565b9050611319611312846107fe84670de0b6b3a7640000611734565b8590611728565b935050505b6113498360010154610804670de0b6b3a76400006107fe86886000015461173490919063ffffffff16565b979650505050505050565b600061136133848461186c565b50600192915050565b60008054610100900460ff161580801561138b5750600054600160ff909116105b806113a55750303b1580156113a5575060005460ff166001145b6114085760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016104b0565b6000805460ff19166001179055801561142b576000805461ff0019166101001790555b4284116114935760405162461bcd60e51b815260206004820152603060248201527f47444558526577617264506f6f6c3a2053746172742074696d65206c7465206360448201526f0757272656e742074696d657374616d760841b60648201526084016104b0565b8383116114f25760405162461bcd60e51b815260206004820152602760248201527f47444558526577617264506f6f6c3a20456e642074696d65206c74652073746160448201526672742074696d6560c81b60648201526084016104b0565b60038490556004839055600a84905560019150801561154b576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5092915050565b60008082116115b55760405162461bcd60e51b815260206004820152602960248201527f47444558526577617264506f6f6c3a204469737472696275746520616d6f756e60448201526874206973207a65726f60b81b60648201526084016104b0565b6000546115d3906201000090046001600160a01b0316333085611aa2565b60006005549050600080600080600a54421061165457600a546115f69042611f68565b93506116028585611f7b565b925061160e8388611f68565b600b549092508061161f8142611f55565b6116299190611f92565b6116339190611f7b565b600a819055611643904290611f68565b61164d9083611f92565b90506116c7565b42600a546116629190611f68565b935061166e8585611f7b565b925061167a8388611f55565b600b549092508061168c816002611f7b565b6116969042611f55565b6116a09190611f92565b6116aa9190611f7b565b600a8190556116ba904290611f68565b6116c49083611f92565b90505b6005819055604080518881526020810183905233917f9624cc4c1fccbc2cf6d61d0f98e2db70f376ad4079ae0b3e2ef2cd31b162eba5910160405180910390a2505060055495945050505050565b60006117218284611f68565b9392505050565b60006117218284611f55565b60006117218284611f7b565b60006117218284611f92565b600080546040516370a0823160e01b8152306004820152620100009091046001600160a01b0316906370a0823190602401602060405180830381865afa15801561179a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117be9190611f26565b905080156117eb57808211156117f0576000546117eb906201000090046001600160a01b03168483611809565b505050565b6000546117eb906201000090046001600160a01b031684845b6040516001600160a01b0383166024820152604481018290526117eb90849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611ada565b600033905060006007848154811061188657611886611f10565b600091825260208083208784526008825260408085206001600160a01b038b1686529092529220600590910290910191506118c085610905565b8054156119605760006118f88260010154610804670de0b6b3a76400006107fe8760030154876000015461173490919063ffffffff16565b9050801561195e5760065461190d9082611715565b60065561191a878261174c565b866001600160a01b03167fe2403640ba68fed3a2f88b7557551d1993f84b99bb10ff833f0cf8db0c5e04868260405161195591815260200190565b60405180910390a25b505b831561198c57815461197d906001600160a01b0316843087611aa2565b80546119899085611728565b81555b600382015481546119aa91670de0b6b3a7640000916107fe91611734565b816001018190555084866001600160a01b0316846001600160a01b03167fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d7876040516119f891815260200190565b60405180910390a4505050505050565b60075460005b818110156117eb57826001600160a01b031660078281548110611a3357611a33611f10565b60009182526020909120600590910201546001600160a01b031603611a9a5760405162461bcd60e51b815260206004820152601d60248201527f47444558526577617264506f6f6c3a204578697374696e6720706f6f6c00000060448201526064016104b0565b600101611a0e565b6040516001600160a01b0380851660248301528316604482015260648101829052610e069085906323b872dd60e01b90608401611835565b6000611b2f826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611baf9092919063ffffffff16565b9050805160001480611b50575080806020019051810190611b509190611fb4565b6117eb5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016104b0565b6060611bbe8484600085611bc6565b949350505050565b606082471015611c275760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016104b0565b600080866001600160a01b03168587604051611c439190611ff5565b60006040518083038185875af1925050503d8060008114611c80576040519150601f19603f3d011682016040523d82523d6000602084013e611c85565b606091505b50915091506113498783838760608315611d00578251600003611cf9576001600160a01b0385163b611cf95760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016104b0565b5081611bbe565b611bbe8383815115611d155781518083602001fd5b8060405162461bcd60e51b81526004016104b09190612011565b600060208284031215611d4157600080fd5b5035919050565b60008060408385031215611d5b57600080fd5b50508035926020909101359150565b6001600160a01b0381168114611d7f57600080fd5b50565b600060208284031215611d9457600080fd5b813561172181611d6a565b600080600060608486031215611db457600080fd5b8335611dbf81611d6a565b9250602084013591506040840135611dd681611d6a565b809150509250925092565b600080600060608486031215611df657600080fd5b8335611e0181611d6a565b95602085013595506040909401359392505050565b60008060408385031215611e2957600080fd5b823591506020830135611e3b81611d6a565b809150509250929050565b8015158114611d7f57600080fd5b60008060008060808587031215611e6a57600080fd5b843593506020850135611e7c81611d6a565b92506040850135611e8c81611e46565b9396929550929360600135925050565b60008060408385031215611eaf57600080fd5b8235611eba81611d6a565b91506020830135611e3b81611e46565b60208082526026908201527f47444558526577617264506f6f6c3a2043616c6c6572206973206e6f74206f7060408201526532b930ba37b960d11b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611f3857600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104c2576104c2611f3f565b818103818111156104c2576104c2611f3f565b80820281158282048414176104c2576104c2611f3f565b600082611faf57634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215611fc657600080fd5b815161172181611e46565b60005b83811015611fec578181015183820152602001611fd4565b50506000910152565b60008251612007818460208701611fd1565b9190910192915050565b6020815260008251806020840152612030816040850160208701611fd1565b601f01601f1916919091016040019291505056fea26469706673582212200eb3424694f664de3fb64d57f81b0cd60e25726d5c95bec16320ab2e8e7975af64736f6c63430008180033000000000000000000000000833589fcd6edb6e08f4c7c32d4f71b54bda029130000000000000000000000000000000000000000000000000000000000093a80