Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 29 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Withdraw Reward ... | 21096869 | 13 hrs ago | IN | 0 ETH | 0.0002367 | ||||
Stake | 21077677 | 3 days ago | IN | 0 ETH | 0.00211223 | ||||
Withdraw | 20705956 | 55 days ago | IN | 0 ETH | 0.000156 | ||||
Get Reward | 20705880 | 55 days ago | IN | 0 ETH | 0.00012987 | ||||
Withdraw | 20705843 | 55 days ago | IN | 0 ETH | 0.00014021 | ||||
Withdraw | 20705836 | 55 days ago | IN | 0 ETH | 0.0001113 | ||||
Withdraw | 20705021 | 55 days ago | IN | 0 ETH | 0.00016758 | ||||
Get Reward | 20705005 | 55 days ago | IN | 0 ETH | 0.00010922 | ||||
Withdraw | 20703866 | 55 days ago | IN | 0 ETH | 0.00013145 | ||||
Get Reward | 20703865 | 55 days ago | IN | 0 ETH | 0.0000962 | ||||
Notify Reward Am... | 20700231 | 55 days ago | IN | 0 ETH | 0.00009144 | ||||
Set Rewards Dura... | 20700226 | 55 days ago | IN | 0 ETH | 0.00004924 | ||||
Get Reward | 20698881 | 56 days ago | IN | 0 ETH | 0.00020811 | ||||
Stake | 20609544 | 68 days ago | IN | 0 ETH | 0.00029948 | ||||
Stake | 20605111 | 69 days ago | IN | 0 ETH | 0.00011647 | ||||
Stake | 20605090 | 69 days ago | IN | 0 ETH | 0.00016938 | ||||
Withdraw Erc20To... | 20604795 | 69 days ago | IN | 0 ETH | 0.00005106 | ||||
Stake | 20602986 | 69 days ago | IN | 0 ETH | 0.00015391 | ||||
Stake | 20602982 | 69 days ago | IN | 0 ETH | 0.00009709 | ||||
Stake | 20602919 | 69 days ago | IN | 0 ETH | 0.00011311 | ||||
Stake | 20602895 | 69 days ago | IN | 0 ETH | 0.0001566 | ||||
Stake | 20602785 | 69 days ago | IN | 0 ETH | 0.0001533 | ||||
Stake | 20601568 | 69 days ago | IN | 0 ETH | 0.00013866 | ||||
Withdraw Erc20To... | 20600737 | 69 days ago | IN | 0 ETH | 0.00004956 | ||||
Set Star Get Rew... | 20593082 | 70 days ago | IN | 0 ETH | 0.0001946 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
StakingRewards
Compiler Version
v0.8.21+commit.d9974bed
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8; contract StakingRewards { IERC20 public stakingToken; IERC20 public rewardsToken; address public owner; // Duration of rewards to be paid out (in seconds) uint public duration; // Timestamp of when the rewards finish uint public finishAt; // Minimum of last updated time and reward finish time uint public updatedAt; // Reward to be paid out per second uint public rewardRate; // Sum of (reward rate * dt * 1e18 / total supply) uint public rewardPerTokenStored; // User address => rewardPerTokenStored mapping(address => uint) public userRewardPerTokenPaid; // User address => rewards to be claimed mapping(address => uint) public rewards; // Total staked uint public totalSupply; // User address => staked amount mapping(address => uint) public balanceOf; bool starUserGetReward; //mapping (address => uint) public userRequireUnlockLeftingTime; mapping (address => uint) public userRequireUnlockStarTime; mapping (address => uint) public userStakeTime; constructor(address _stakingToken, address _rewardToken) payable { owner = msg.sender; stakingToken = IERC20(_stakingToken); rewardsToken = IERC20(_rewardToken); } receive() external payable { } fallback() external payable { } modifier onlyOwner() { require(msg.sender == owner, "not authorized"); _; } modifier updateReward(address _account) { rewardPerTokenStored = rewardPerToken(); updatedAt = lastTimeRewardApplicable(); if (_account != address(0)) { rewards[_account] = earned(_account); userRewardPerTokenPaid[_account] = rewardPerTokenStored; } _; } function setStarGetReward() public onlyOwner{ starUserGetReward = !starUserGetReward; } function lastTimeRewardApplicable() public view returns (uint) { return _min(finishAt, block.timestamp); } function rewardPerToken() public view returns (uint) { if (totalSupply == 0) { return rewardPerTokenStored; } return rewardPerTokenStored + (rewardRate * (lastTimeRewardApplicable() - updatedAt) * 1e18) / totalSupply; } function resetToken(address _stakingToken, address _rewardToken) public onlyOwner{ stakingToken = IERC20(_stakingToken); rewardsToken = IERC20(_rewardToken); } function stake(uint _amount) external updateReward(msg.sender) { require(_amount > 0, "amount = 0"); userStakeTime[msg.sender] = block.timestamp; stakingToken.transferFrom(msg.sender, address(this), _amount); balanceOf[msg.sender] += _amount; totalSupply += _amount; } function withdraw(uint _amount) external updateReward(msg.sender) { require(_amount > 0, "amount = 0"); require(block.timestamp - userStakeTime[msg.sender] >= 86400 * 14,"require 14 day after stake "); //require(block.timestamp - userRequireUnlockStarTime[msg.sender],"require time not enought"); balanceOf[msg.sender] -= _amount; totalSupply -= _amount; stakingToken.transfer(msg.sender, _amount); } function earned(address _account) public view returns (uint) { return ((balanceOf[_account] * (rewardPerToken() - userRewardPerTokenPaid[_account])) / 1e18) + rewards[_account]; } function getReward() external updateReward(msg.sender) { require(starUserGetReward,"not star"); uint reward = rewards[msg.sender]; if (reward > 0) { rewards[msg.sender] = 0; rewardsToken.transfer(msg.sender, reward); } } //设置可以挖矿的时间,单位s function setRewardsDuration(uint _duration) external onlyOwner { require(finishAt < block.timestamp, "reward duration not finished"); duration = _duration; } //可获取的ERC20数量 function notifyRewardAmount( uint _amount ) external onlyOwner updateReward(address(0)) { if (block.timestamp >= finishAt) { rewardRate = _amount / duration; } else { uint remainingRewards = (finishAt - block.timestamp) * rewardRate; rewardRate = (_amount + remainingRewards) / duration; } require(rewardRate > 0, "reward rate = 0"); require( rewardRate * duration <= rewardsToken.balanceOf(address(this)), "reward amount > balance" ); finishAt = block.timestamp + duration; updatedAt = block.timestamp; } function _min(uint x, uint y) private pure returns (uint) { return x <= y ? x : y; } function getBalanceOfContract() public view returns (uint) { return rewardsToken.balanceOf(address(this)); } function withdrawRewardToken() external onlyOwner { require(block.timestamp >= finishAt, "still product rewardToken"); rewardsToken.transfer(msg.sender, getBalanceOfContract()); } function withdrawEth()external onlyOwner { address payable caller = payable ( msg.sender); caller.transfer(address(this).balance); } function withdrawErc20Token(address _erc20) external onlyOwner { //require(block.timestamp >= finishAt, "still product rewardToken"); IERC20 erc20 = IERC20(_erc20); erc20.transfer(msg.sender, erc20.balanceOf(address(this))); } } interface IERC20 { function totalSupply() external view returns (uint); function balanceOf(address account) external view returns (uint); function transfer(address recipient, uint amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint amount) external returns (bool); function transferFrom( address sender, address recipient, uint amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint value); event Approval(address indexed owner, address indexed spender, uint value); }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_stakingToken","type":"address"},{"internalType":"address","name":"_rewardToken","type":"address"}],"stateMutability":"payable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"duration","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"}],"name":"earned","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"finishAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBalanceOfContract","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"lastTimeRewardApplicable","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"notifyRewardAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_stakingToken","type":"address"},{"internalType":"address","name":"_rewardToken","type":"address"}],"name":"resetToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rewardPerToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardPerTokenStored","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"rewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardsToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_duration","type":"uint256"}],"name":"setRewardsDuration","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setStarGetReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"stake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stakingToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"updatedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"userRequireUnlockStarTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"userRewardPerTokenPaid","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"userStakeTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_erc20","type":"address"}],"name":"withdrawErc20Token","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawRewardToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526040516111db3803806111db83398101604081905261002291610078565b600280546001600160a01b031990811633179091555f80546001600160a01b03948516908316179055600180549290931691161790556100a9565b80516001600160a01b0381168114610073575f80fd5b919050565b5f8060408385031215610089575f80fd5b6100928361005d565b91506100a06020840161005d565b90509250929050565b611125806100b65f395ff3fe6080604052600436106101a1575f3560e01c80638aea7fd0116100df578063b80a6e1d11610083578063d1af0c7d11610060578063d1af0c7d14610478578063df136d6514610497578063f2c259ff146104ac578063fed2b05e146104c057005b8063b80a6e1d1461041a578063cc1a378f14610445578063cd3daf9d1461046457005b80639c3f09be116100bc5780639c3f09be146103b4578063a0ef91df146103d3578063a694fc3a146103e7578063aa7a07e91461040657005b80638aea7fd01461034b5780638b8763471461036a5780638da5cb5b1461039557005b80633d18b9121161014657806372f702f31161012357806372f702f3146102d75780637519ab501461030d5780637b0a47ee1461032257806380faa57d1461033757005b80633d18b9121461028357806367d3b4881461029757806370a08231146102ac57005b806318160ddd1161017f57806318160ddd1461021c57806322968885146102315780632e1a7d4d146102455780633c6b16ab1461026457005b80628cc262146101aa5780630700037d146101dc5780630fb5a6b41461020757005b366101a857005b005b3480156101b5575f80fd5b506101c96101c4366004610fc0565b6104eb565b6040519081526020015b60405180910390f35b3480156101e7575f80fd5b506101c96101f6366004610fc0565b60096020525f908152604090205481565b348015610212575f80fd5b506101c960035481565b348015610227575f80fd5b506101c9600a5481565b34801561023c575f80fd5b506101c9610566565b348015610250575f80fd5b506101a861025f366004610fd9565b6105d5565b34801561026f575f80fd5b506101a861027e366004610fd9565b61078e565b34801561028e575f80fd5b506101a861098e565b3480156102a2575f80fd5b506101c960045481565b3480156102b7575f80fd5b506101c96102c6366004610fc0565b600b6020525f908152604090205481565b3480156102e2575f80fd5b505f546102f5906001600160a01b031681565b6040516001600160a01b0390911681526020016101d3565b348015610318575f80fd5b506101c960055481565b34801561032d575f80fd5b506101c960065481565b348015610342575f80fd5b506101c9610a87565b348015610356575f80fd5b506101a8610365366004610fc0565b610a94565b348015610375575f80fd5b506101c9610384366004610fc0565b60086020525f908152604090205481565b3480156103a0575f80fd5b506002546102f5906001600160a01b031681565b3480156103bf575f80fd5b506101a86103ce366004610ff0565b610b61565b3480156103de575f80fd5b506101a8610bb8565b3480156103f2575f80fd5b506101a8610401366004610fd9565b610c0d565b348015610411575f80fd5b506101a8610d6b565b348015610425575f80fd5b506101c9610434366004610fc0565b600d6020525f908152604090205481565b348015610450575f80fd5b506101a861045f366004610fd9565b610e70565b34801561046f575f80fd5b506101c9610ef0565b348015610483575f80fd5b506001546102f5906001600160a01b031681565b3480156104a2575f80fd5b506101c960075481565b3480156104b7575f80fd5b506101a8610f4f565b3480156104cb575f80fd5b506101c96104da366004610fc0565b600e6020525f908152604090205481565b6001600160a01b0381165f908152600960209081526040808320546008909252822054670de0b6b3a764000090610520610ef0565b61052a9190611035565b6001600160a01b0385165f908152600b602052604090205461054c9190611048565b610556919061105f565b610560919061107e565b92915050565b6001546040516370a0823160e01b81523060048201525f916001600160a01b0316906370a0823190602401602060405180830381865afa1580156105ac573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d09190611091565b905090565b336105de610ef0565b6007556105e9610a87565b6005556001600160a01b0381161561062f57610604816104eb565b6001600160a01b0382165f908152600960209081526040808320939093556007546008909152919020555b5f82116106705760405162461bcd60e51b815260206004820152600a6024820152690616d6f756e74203d20360b41b60448201526064015b60405180910390fd5b335f908152600e6020526040902054621275009061068e9042611035565b10156106dc5760405162461bcd60e51b815260206004820152601b60248201527f7265717569726520313420646179206166746572207374616b652000000000006044820152606401610667565b335f908152600b6020526040812080548492906106fa908490611035565b9250508190555081600a5f8282546107129190611035565b90915550505f5460405163a9059cbb60e01b8152336004820152602481018490526001600160a01b039091169063a9059cbb906044015b6020604051808303815f875af1158015610765573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061078991906110a8565b505050565b6002546001600160a01b031633146107b85760405162461bcd60e51b8152600401610667906110c7565b5f6107c1610ef0565b6007556107cc610a87565b6005556001600160a01b03811615610812576107e7816104eb565b6001600160a01b0382165f908152600960209081526040808320939093556007546008909152919020555b600454421061083057600354610828908361105f565b60065561086b565b5f600654426004546108429190611035565b61084c9190611048565b60035490915061085c828561107e565b610866919061105f565b600655505b5f600654116108ae5760405162461bcd60e51b815260206004820152600f60248201526e07265776172642072617465203d203608c1b6044820152606401610667565b6001546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa1580156108f4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109189190611091565b6003546006546109289190611048565b11156109765760405162461bcd60e51b815260206004820152601760248201527f72657761726420616d6f756e74203e2062616c616e63650000000000000000006044820152606401610667565b600354610983904261107e565b600455505042600555565b33610997610ef0565b6007556109a2610a87565b6005556001600160a01b038116156109e8576109bd816104eb565b6001600160a01b0382165f908152600960209081526040808320939093556007546008909152919020555b600c5460ff16610a255760405162461bcd60e51b81526020600482015260086024820152673737ba1039ba30b960c11b6044820152606401610667565b335f908152600960205260409020548015610a8357335f8181526009602052604080822091909155600154905163a9059cbb60e01b81526004810192909252602482018390526001600160a01b03169063a9059cbb90604401610749565b5050565b5f6105d060045442610f8d565b6002546001600160a01b03163314610abe5760405162461bcd60e51b8152600401610667906110c7565b6040516370a0823160e01b815230600482015281906001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610b0c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b309190611091565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401610749565b6002546001600160a01b03163314610b8b5760405162461bcd60e51b8152600401610667906110c7565b5f80546001600160a01b039384166001600160a01b03199182161790915560018054929093169116179055565b6002546001600160a01b03163314610be25760405162461bcd60e51b8152600401610667906110c7565b604051339081904780156108fc02915f818181858888f19350505050158015610a83573d5f803e3d5ffd5b33610c16610ef0565b600755610c21610a87565b6005556001600160a01b03811615610c6757610c3c816104eb565b6001600160a01b0382165f908152600960209081526040808320939093556007546008909152919020555b5f8211610ca35760405162461bcd60e51b815260206004820152600a6024820152690616d6f756e74203d20360b41b6044820152606401610667565b335f818152600e6020526040808220429055905490516323b872dd60e01b81526004810192909252306024830152604482018490526001600160a01b0316906323b872dd906064016020604051808303815f875af1158015610d07573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d2b91906110a8565b50335f908152600b602052604081208054849290610d4a90849061107e565b9250508190555081600a5f828254610d62919061107e565b90915550505050565b6002546001600160a01b03163314610d955760405162461bcd60e51b8152600401610667906110c7565b600454421015610de75760405162461bcd60e51b815260206004820152601960248201527f7374696c6c2070726f6475637420726577617264546f6b656e000000000000006044820152606401610667565b6001546001600160a01b031663a9059cbb33610e01610566565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303815f875af1158015610e49573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e6d91906110a8565b50565b6002546001600160a01b03163314610e9a5760405162461bcd60e51b8152600401610667906110c7565b4260045410610eeb5760405162461bcd60e51b815260206004820152601c60248201527f726577617264206475726174696f6e206e6f742066696e6973686564000000006044820152606401610667565b600355565b5f600a545f03610f01575060075490565b600a54600554610f0f610a87565b610f199190611035565b600654610f269190611048565b610f3890670de0b6b3a7640000611048565b610f42919061105f565b6007546105d0919061107e565b6002546001600160a01b03163314610f795760405162461bcd60e51b8152600401610667906110c7565b600c805460ff19811660ff90911615179055565b5f81831115610f9c5781610f9e565b825b9392505050565b80356001600160a01b0381168114610fbb575f80fd5b919050565b5f60208284031215610fd0575f80fd5b610f9e82610fa5565b5f60208284031215610fe9575f80fd5b5035919050565b5f8060408385031215611001575f80fd5b61100a83610fa5565b915061101860208401610fa5565b90509250929050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561056057610560611021565b808202811582820484141761056057610560611021565b5f8261107957634e487b7160e01b5f52601260045260245ffd5b500490565b8082018082111561056057610560611021565b5f602082840312156110a1575f80fd5b5051919050565b5f602082840312156110b8575f80fd5b81518015158114610f9e575f80fd5b6020808252600e908201526d1b9bdd08185d5d1a1bdc9a5e995960921b60408201526060019056fea26469706673582212201bb43528106ffd24d858863796d2f0d7c13779e37940167eac12f8875a61aab464736f6c63430008150033000000000000000000000000989436e4194af162546f595afc6336a15b3dca7d000000000000000000000000989436e4194af162546f595afc6336a15b3dca7d
Deployed Bytecode
0x6080604052600436106101a1575f3560e01c80638aea7fd0116100df578063b80a6e1d11610083578063d1af0c7d11610060578063d1af0c7d14610478578063df136d6514610497578063f2c259ff146104ac578063fed2b05e146104c057005b8063b80a6e1d1461041a578063cc1a378f14610445578063cd3daf9d1461046457005b80639c3f09be116100bc5780639c3f09be146103b4578063a0ef91df146103d3578063a694fc3a146103e7578063aa7a07e91461040657005b80638aea7fd01461034b5780638b8763471461036a5780638da5cb5b1461039557005b80633d18b9121161014657806372f702f31161012357806372f702f3146102d75780637519ab501461030d5780637b0a47ee1461032257806380faa57d1461033757005b80633d18b9121461028357806367d3b4881461029757806370a08231146102ac57005b806318160ddd1161017f57806318160ddd1461021c57806322968885146102315780632e1a7d4d146102455780633c6b16ab1461026457005b80628cc262146101aa5780630700037d146101dc5780630fb5a6b41461020757005b366101a857005b005b3480156101b5575f80fd5b506101c96101c4366004610fc0565b6104eb565b6040519081526020015b60405180910390f35b3480156101e7575f80fd5b506101c96101f6366004610fc0565b60096020525f908152604090205481565b348015610212575f80fd5b506101c960035481565b348015610227575f80fd5b506101c9600a5481565b34801561023c575f80fd5b506101c9610566565b348015610250575f80fd5b506101a861025f366004610fd9565b6105d5565b34801561026f575f80fd5b506101a861027e366004610fd9565b61078e565b34801561028e575f80fd5b506101a861098e565b3480156102a2575f80fd5b506101c960045481565b3480156102b7575f80fd5b506101c96102c6366004610fc0565b600b6020525f908152604090205481565b3480156102e2575f80fd5b505f546102f5906001600160a01b031681565b6040516001600160a01b0390911681526020016101d3565b348015610318575f80fd5b506101c960055481565b34801561032d575f80fd5b506101c960065481565b348015610342575f80fd5b506101c9610a87565b348015610356575f80fd5b506101a8610365366004610fc0565b610a94565b348015610375575f80fd5b506101c9610384366004610fc0565b60086020525f908152604090205481565b3480156103a0575f80fd5b506002546102f5906001600160a01b031681565b3480156103bf575f80fd5b506101a86103ce366004610ff0565b610b61565b3480156103de575f80fd5b506101a8610bb8565b3480156103f2575f80fd5b506101a8610401366004610fd9565b610c0d565b348015610411575f80fd5b506101a8610d6b565b348015610425575f80fd5b506101c9610434366004610fc0565b600d6020525f908152604090205481565b348015610450575f80fd5b506101a861045f366004610fd9565b610e70565b34801561046f575f80fd5b506101c9610ef0565b348015610483575f80fd5b506001546102f5906001600160a01b031681565b3480156104a2575f80fd5b506101c960075481565b3480156104b7575f80fd5b506101a8610f4f565b3480156104cb575f80fd5b506101c96104da366004610fc0565b600e6020525f908152604090205481565b6001600160a01b0381165f908152600960209081526040808320546008909252822054670de0b6b3a764000090610520610ef0565b61052a9190611035565b6001600160a01b0385165f908152600b602052604090205461054c9190611048565b610556919061105f565b610560919061107e565b92915050565b6001546040516370a0823160e01b81523060048201525f916001600160a01b0316906370a0823190602401602060405180830381865afa1580156105ac573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d09190611091565b905090565b336105de610ef0565b6007556105e9610a87565b6005556001600160a01b0381161561062f57610604816104eb565b6001600160a01b0382165f908152600960209081526040808320939093556007546008909152919020555b5f82116106705760405162461bcd60e51b815260206004820152600a6024820152690616d6f756e74203d20360b41b60448201526064015b60405180910390fd5b335f908152600e6020526040902054621275009061068e9042611035565b10156106dc5760405162461bcd60e51b815260206004820152601b60248201527f7265717569726520313420646179206166746572207374616b652000000000006044820152606401610667565b335f908152600b6020526040812080548492906106fa908490611035565b9250508190555081600a5f8282546107129190611035565b90915550505f5460405163a9059cbb60e01b8152336004820152602481018490526001600160a01b039091169063a9059cbb906044015b6020604051808303815f875af1158015610765573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061078991906110a8565b505050565b6002546001600160a01b031633146107b85760405162461bcd60e51b8152600401610667906110c7565b5f6107c1610ef0565b6007556107cc610a87565b6005556001600160a01b03811615610812576107e7816104eb565b6001600160a01b0382165f908152600960209081526040808320939093556007546008909152919020555b600454421061083057600354610828908361105f565b60065561086b565b5f600654426004546108429190611035565b61084c9190611048565b60035490915061085c828561107e565b610866919061105f565b600655505b5f600654116108ae5760405162461bcd60e51b815260206004820152600f60248201526e07265776172642072617465203d203608c1b6044820152606401610667565b6001546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa1580156108f4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109189190611091565b6003546006546109289190611048565b11156109765760405162461bcd60e51b815260206004820152601760248201527f72657761726420616d6f756e74203e2062616c616e63650000000000000000006044820152606401610667565b600354610983904261107e565b600455505042600555565b33610997610ef0565b6007556109a2610a87565b6005556001600160a01b038116156109e8576109bd816104eb565b6001600160a01b0382165f908152600960209081526040808320939093556007546008909152919020555b600c5460ff16610a255760405162461bcd60e51b81526020600482015260086024820152673737ba1039ba30b960c11b6044820152606401610667565b335f908152600960205260409020548015610a8357335f8181526009602052604080822091909155600154905163a9059cbb60e01b81526004810192909252602482018390526001600160a01b03169063a9059cbb90604401610749565b5050565b5f6105d060045442610f8d565b6002546001600160a01b03163314610abe5760405162461bcd60e51b8152600401610667906110c7565b6040516370a0823160e01b815230600482015281906001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610b0c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b309190611091565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401610749565b6002546001600160a01b03163314610b8b5760405162461bcd60e51b8152600401610667906110c7565b5f80546001600160a01b039384166001600160a01b03199182161790915560018054929093169116179055565b6002546001600160a01b03163314610be25760405162461bcd60e51b8152600401610667906110c7565b604051339081904780156108fc02915f818181858888f19350505050158015610a83573d5f803e3d5ffd5b33610c16610ef0565b600755610c21610a87565b6005556001600160a01b03811615610c6757610c3c816104eb565b6001600160a01b0382165f908152600960209081526040808320939093556007546008909152919020555b5f8211610ca35760405162461bcd60e51b815260206004820152600a6024820152690616d6f756e74203d20360b41b6044820152606401610667565b335f818152600e6020526040808220429055905490516323b872dd60e01b81526004810192909252306024830152604482018490526001600160a01b0316906323b872dd906064016020604051808303815f875af1158015610d07573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d2b91906110a8565b50335f908152600b602052604081208054849290610d4a90849061107e565b9250508190555081600a5f828254610d62919061107e565b90915550505050565b6002546001600160a01b03163314610d955760405162461bcd60e51b8152600401610667906110c7565b600454421015610de75760405162461bcd60e51b815260206004820152601960248201527f7374696c6c2070726f6475637420726577617264546f6b656e000000000000006044820152606401610667565b6001546001600160a01b031663a9059cbb33610e01610566565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303815f875af1158015610e49573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e6d91906110a8565b50565b6002546001600160a01b03163314610e9a5760405162461bcd60e51b8152600401610667906110c7565b4260045410610eeb5760405162461bcd60e51b815260206004820152601c60248201527f726577617264206475726174696f6e206e6f742066696e6973686564000000006044820152606401610667565b600355565b5f600a545f03610f01575060075490565b600a54600554610f0f610a87565b610f199190611035565b600654610f269190611048565b610f3890670de0b6b3a7640000611048565b610f42919061105f565b6007546105d0919061107e565b6002546001600160a01b03163314610f795760405162461bcd60e51b8152600401610667906110c7565b600c805460ff19811660ff90911615179055565b5f81831115610f9c5781610f9e565b825b9392505050565b80356001600160a01b0381168114610fbb575f80fd5b919050565b5f60208284031215610fd0575f80fd5b610f9e82610fa5565b5f60208284031215610fe9575f80fd5b5035919050565b5f8060408385031215611001575f80fd5b61100a83610fa5565b915061101860208401610fa5565b90509250929050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561056057610560611021565b808202811582820484141761056057610560611021565b5f8261107957634e487b7160e01b5f52601260045260245ffd5b500490565b8082018082111561056057610560611021565b5f602082840312156110a1575f80fd5b5051919050565b5f602082840312156110b8575f80fd5b81518015158114610f9e575f80fd5b6020808252600e908201526d1b9bdd08185d5d1a1bdc9a5e995960921b60408201526060019056fea26469706673582212201bb43528106ffd24d858863796d2f0d7c13779e37940167eac12f8875a61aab464736f6c63430008150033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000989436e4194af162546f595afc6336a15b3dca7d000000000000000000000000989436e4194af162546f595afc6336a15b3dca7d
-----Decoded View---------------
Arg [0] : _stakingToken (address): 0x989436e4194af162546F595Afc6336A15b3DCa7d
Arg [1] : _rewardToken (address): 0x989436e4194af162546F595Afc6336A15b3DCa7d
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000989436e4194af162546f595afc6336a15b3dca7d
Arg [1] : 000000000000000000000000989436e4194af162546f595afc6336a15b3dca7d
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.