Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 3,154 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Withdraw All Rew... | 13329248 | 1150 days ago | IN | 0 ETH | 0.00389948 | ||||
Withdraw | 12879341 | 1219 days ago | IN | 0 ETH | 0.00047323 | ||||
Withdraw | 12879341 | 1219 days ago | IN | 0 ETH | 0.00128141 | ||||
Withdraw | 12488259 | 1280 days ago | IN | 0 ETH | 0.00201412 | ||||
Withdraw | 12322909 | 1306 days ago | IN | 0 ETH | 0.00381907 | ||||
Withdraw | 12308479 | 1308 days ago | IN | 0 ETH | 0.00252493 | ||||
Withdraw | 12216738 | 1322 days ago | IN | 0 ETH | 0.00490721 | ||||
Withdraw | 12178702 | 1328 days ago | IN | 0 ETH | 0.00710447 | ||||
Withdraw | 12019933 | 1353 days ago | IN | 0 ETH | 0.01194487 | ||||
Withdraw | 12019933 | 1353 days ago | IN | 0 ETH | 0.01772166 | ||||
Withdraw | 11999157 | 1356 days ago | IN | 0 ETH | 0.0073242 | ||||
Withdraw | 11918751 | 1368 days ago | IN | 0 ETH | 0.01142575 | ||||
Withdraw | 11883426 | 1374 days ago | IN | 0 ETH | 0.0109863 | ||||
Withdraw | 11863549 | 1377 days ago | IN | 0 ETH | 0.0082031 | ||||
Withdraw | 11793305 | 1387 days ago | IN | 0 ETH | 0.00878904 | ||||
Withdraw | 11769462 | 1391 days ago | IN | 0 ETH | 0.00262589 | ||||
Withdraw | 11769462 | 1391 days ago | IN | 0 ETH | 0.0062678 | ||||
Withdraw | 11766086 | 1392 days ago | IN | 0 ETH | 0.00699735 | ||||
Withdraw | 11764965 | 1392 days ago | IN | 0 ETH | 0.01023746 | ||||
Withdraw | 11759457 | 1393 days ago | IN | 0 ETH | 0.00776492 | ||||
Withdraw | 11751730 | 1394 days ago | IN | 0 ETH | 0.00791488 | ||||
Withdraw | 11751686 | 1394 days ago | IN | 0 ETH | 0.00553636 | ||||
Withdraw | 11750333 | 1394 days ago | IN | 0 ETH | 0.00214937 | ||||
Withdraw | 11750304 | 1394 days ago | IN | 0 ETH | 0.00549315 | ||||
Withdraw | 11724538 | 1398 days ago | IN | 0 ETH | 0.00373534 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
Staking
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity Multiple files format)Audit Report
//Be name khoda //si deus si DEA //SPDX-License-Identifier: UNLICENSED //single staking dea cooooommming pragma solidity 0.6.12; import "./SafeMath.sol"; import "./Ownable.sol"; interface StakedToken { function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); } interface RewardToken { function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); } contract Staking is Ownable { struct User { uint256 depositAmount; uint256 paidReward; } using SafeMath for uint256; mapping (address => User) public users; uint256 public rewardTillNowPerToken = 0; uint256 public lastUpdatedBlock; uint256 public rewardPerBlock; uint256 public scale = 1e18; uint256 public particleCollector = 0; uint256 public daoShare; uint256 public earlyFoundersShare; address public daoWallet; address public earlyFoundersWallet; // init with 1 instead of 0 to avoid division by zero uint256 public totalStakedToken = 1; StakedToken public stakedToken; RewardToken public rewardToken; event Deposit(address user, uint256 amount); event Withdraw(address user, uint256 amount); event EmergencyWithdraw(address user, uint256 amount); event RewardClaimed(address user, uint256 amount); event RewardPerBlockChanged(uint256 oldValue, uint256 newValue); constructor (address _stakedToken, address _rewardToken, uint256 _rewardPerBlock, uint256 _daoShare, uint256 _earlyFoundersShare) public { stakedToken = StakedToken(_stakedToken); rewardToken = RewardToken(_rewardToken); rewardPerBlock = _rewardPerBlock; daoShare = _daoShare; earlyFoundersShare = _earlyFoundersShare; lastUpdatedBlock = block.number; daoWallet = msg.sender; earlyFoundersWallet = msg.sender; } function setWallets(address _daoWallet, address _earlyFoundersWallet) public onlyOwner { daoWallet = _daoWallet; earlyFoundersWallet = _earlyFoundersWallet; } function setShares(uint256 _daoShare, uint256 _earlyFoundersShare) public onlyOwner { withdrawParticleCollector(); daoShare = _daoShare; earlyFoundersShare = _earlyFoundersShare; } function setRewardPerBlock(uint256 _rewardPerBlock) public onlyOwner { update(); emit RewardPerBlockChanged(rewardPerBlock, _rewardPerBlock); rewardPerBlock = _rewardPerBlock; } // Update reward variables of the pool to be up-to-date. function update() public { if (block.number <= lastUpdatedBlock) { return; } uint256 rewardAmount = (block.number - lastUpdatedBlock).mul(rewardPerBlock); rewardTillNowPerToken = rewardTillNowPerToken.add(rewardAmount.mul(scale).div(totalStakedToken)); lastUpdatedBlock = block.number; } // View function to see pending reward on frontend. function pendingReward(address _user) external view returns (uint256) { User storage user = users[_user]; uint256 accRewardPerToken = rewardTillNowPerToken; if (block.number > lastUpdatedBlock) { uint256 rewardAmount = (block.number - lastUpdatedBlock).mul(rewardPerBlock); accRewardPerToken = accRewardPerToken.add(rewardAmount.mul(scale).div(totalStakedToken)); } return user.depositAmount.mul(accRewardPerToken).div(scale).sub(user.paidReward); } function deposit(uint256 amount) public { User storage user = users[msg.sender]; update(); if (user.depositAmount > 0) { uint256 _pendingReward = user.depositAmount.mul(rewardTillNowPerToken).div(scale).sub(user.paidReward); rewardToken.transfer(msg.sender, _pendingReward); emit RewardClaimed(msg.sender, _pendingReward); } user.depositAmount = user.depositAmount.add(amount); user.paidReward = user.depositAmount.mul(rewardTillNowPerToken).div(scale); stakedToken.transferFrom(address(msg.sender), address(this), amount); totalStakedToken = totalStakedToken.add(amount); emit Deposit(msg.sender, amount); } function withdraw(uint256 amount) public { User storage user = users[msg.sender]; require(user.depositAmount >= amount, "withdraw amount exceeds deposited amount"); update(); uint256 _pendingReward = user.depositAmount.mul(rewardTillNowPerToken).div(scale).sub(user.paidReward); rewardToken.transfer(msg.sender, _pendingReward); emit RewardClaimed(msg.sender, _pendingReward); uint256 particleCollectorShare = _pendingReward.mul(daoShare.add(earlyFoundersShare)).div(scale); particleCollector = particleCollector.add(particleCollectorShare); if (amount > 0) { user.depositAmount = user.depositAmount.sub(amount); stakedToken.transfer(address(msg.sender), amount); totalStakedToken = totalStakedToken.sub(amount); emit Withdraw(msg.sender, amount); } user.paidReward = user.depositAmount.mul(rewardTillNowPerToken).div(scale); } function withdrawParticleCollector() public { uint256 _daoShare = particleCollector.mul(daoShare).div(daoShare.add(earlyFoundersShare)); rewardToken.transfer(daoWallet, _daoShare); uint256 _earlyFoundersShare = particleCollector.mul(earlyFoundersShare).div(daoShare.add(earlyFoundersShare)); rewardToken.transfer(earlyFoundersWallet, _earlyFoundersShare); particleCollector = 0; } // Withdraw without caring about rewards. EMERGENCY ONLY. function emergencyWithdraw() public { User storage user = users[msg.sender]; totalStakedToken = totalStakedToken.sub(user.depositAmount); stakedToken.transfer(msg.sender, user.depositAmount); emit EmergencyWithdraw(msg.sender, user.depositAmount); user.depositAmount = 0; user.paidReward = 0; } // Add temporary withdrawal functionality for owner(DAO) to transfer all tokens to a safe place. // Contract ownership will transfer to address(0x) after full auditing of codes. function withdrawAllRewardTokens(address to) public onlyOwner { uint256 totalRewardTokens = rewardToken.balanceOf(address(this)); rewardToken.transfer(to, totalRewardTokens); } // Add temporary withdrawal functionality for owner(DAO) to transfer all tokens to a safe place. // Contract ownership will transfer to address(0x) after full auditing of codes. function withdrawAllStakedtokens(address to) public onlyOwner { uint256 _totalStakedTokens = stakedToken.balanceOf(address(this)); stakedToken.transfer(to, _totalStakedTokens); } } //Dar panah khoda
// SPDX-License-Identifier: MIT pragma solidity ^0.6.0; /* * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with GSN meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return msg.sender; } function _msgData() internal view virtual returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.6.0; import "./Context.sol"; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor () internal { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } /** * @dev Returns the address of the current owner. */ function owner() public view returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.6.0; /** * @dev Wrappers over Solidity's arithmetic operations with added overflow * checks. * * Arithmetic operations in Solidity wrap on overflow. This can easily result * in bugs, because programmers usually assume that an overflow raises an * error, which is the standard behavior in high level programming languages. * `SafeMath` restores this intuition by reverting the transaction when an * operation overflows. * * Using this library instead of the unchecked operations eliminates an entire * class of bugs, so it's recommended to use it always. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. Reverts with custom message on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } }
Contract Security Audit
- Coinbae - December, 2020 - Security Audit Report
[{"inputs":[{"internalType":"address","name":"_stakedToken","type":"address"},{"internalType":"address","name":"_rewardToken","type":"address"},{"internalType":"uint256","name":"_rewardPerBlock","type":"uint256"},{"internalType":"uint256","name":"_daoShare","type":"uint256"},{"internalType":"uint256","name":"_earlyFoundersShare","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"EmergencyWithdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"RewardClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldValue","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newValue","type":"uint256"}],"name":"RewardPerBlockChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Withdraw","type":"event"},{"inputs":[],"name":"daoShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"daoWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"deposit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"earlyFoundersShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"earlyFoundersWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"emergencyWithdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"lastUpdatedBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"particleCollector","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"pendingReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rewardPerBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardTillNowPerToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardToken","outputs":[{"internalType":"contract RewardToken","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"scale","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_rewardPerBlock","type":"uint256"}],"name":"setRewardPerBlock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_daoShare","type":"uint256"},{"internalType":"uint256","name":"_earlyFoundersShare","type":"uint256"}],"name":"setShares","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_daoWallet","type":"address"},{"internalType":"address","name":"_earlyFoundersWallet","type":"address"}],"name":"setWallets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stakedToken","outputs":[{"internalType":"contract StakedToken","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalStakedToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"update","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"users","outputs":[{"internalType":"uint256","name":"depositAmount","type":"uint256"},{"internalType":"uint256","name":"paidReward","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"withdrawAllRewardTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"withdrawAllStakedtokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawParticleCollector","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040526000600255670de0b6b3a764000060055560006006556001600b5534801561002b57600080fd5b5060405161268e38038061268e833981810160405260a081101561004e57600080fd5b810190808051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190505050600061009761025f60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35084600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508260048190555081600781905550806008819055504360038190555033600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505050610267565b600033905090565b612418806102766000396000f3fe608060405234801561001057600080fd5b50600436106101a95760003560e01c8063a2e62045116100f9578063d3f6a15711610097578063f40f0f5211610071578063f40f0f52146105ab578063f51e181a14610603578063f7c618c114610621578063f90ce5ba14610655576101a9565b8063d3f6a157146104f9578063db2e21bc1461055d578063f2fde38b14610567576101a9565b8063bb872b4a116100d3578063bb872b4a14610435578063cb6d8ee614610463578063cc7a262e14610481578063cee66f63146104b5576101a9565b8063a2e620451461039e578063a87430ba146103a8578063b6b55f2514610407576101a9565b8063715018a6116101665780638ae39cac116101405780638ae39cac146103245780638da5cb5b146103425780639378c6d414610376578063995d9b6014610380576101a9565b8063715018a6146102b857806372d21c89146102c257806388d19f1b14610306576101a9565b8063079a5705146101ae5780632aca3e7d146101e25780632e1a7d4d1461021a578063481af4aa1461024857806360c6cdac14610266578063698a589714610284575b600080fd5b6101b6610673565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610218600480360360408110156101f857600080fd5b810190808035906020019092919080359060200190929190505050610699565b005b6102466004803603602081101561023057600080fd5b810190808035906020019092919050505061077b565b005b610250610b8d565b6040518082815260200191505060405180910390f35b61026e610b93565b6040518082815260200191505060405180910390f35b61028c610b99565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102c0610bbf565b005b610304600480360360208110156102d857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d45565b005b61030e610fa8565b6040518082815260200191505060405180910390f35b61032c610fae565b6040518082815260200191505060405180910390f35b61034a610fb4565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61037e610fdd565b005b610388611251565b6040518082815260200191505060405180910390f35b6103a6611257565b005b6103ea600480360360208110156103be57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112d0565b604051808381526020018281526020019250505060405180910390f35b6104336004803603602081101561041d57600080fd5b81019080803590602001909291905050506112f4565b005b6104616004803603602081101561044b57600080fd5b810190808035906020019092919050505061166e565b005b61046b611789565b6040518082815260200191505060405180910390f35b61048961178f565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104f7600480360360208110156104cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506117b5565b005b61055b6004803603604081101561050f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a18565b005b610565611b66565b005b6105a96004803603602081101561057d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d0b565b005b6105ed600480360360208110156105c157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f16565b6040518082815260200191505060405180910390f35b61060b612011565b6040518082815260200191505060405180910390f35b610629612017565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61065d61203d565b6040518082815260200191505060405180910390f35b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6106a1612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610761576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b610769610fdd565b81600781905550806008819055505050565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050818160000154101561081b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260288152602001806123746028913960400191505060405180910390fd5b610823611257565b6000610868826001015461085a60055461084c600254876000015461204b90919063ffffffff16565b6120d190919063ffffffff16565b61211b90919063ffffffff16565b9050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156108fd57600080fd5b505af1158015610911573d6000803e3d6000fd5b505050506040513d602081101561092757600080fd5b8101908080519060200190929190505050507f106f923f993c2149d49b4255ff723acafa1f2d94393f561d3eda32ae348f72413382604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a160006109cd6005546109bf6109b060085460075461216590919063ffffffff16565b8561204b90919063ffffffff16565b6120d190919063ffffffff16565b90506109e48160065461216590919063ffffffff16565b6006819055506000841115610b5257610a0a84846000015461211b90919063ffffffff16565b8360000181905550600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33866040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610aa557600080fd5b505af1158015610ab9573d6000803e3d6000fd5b505050506040513d6020811015610acf57600080fd5b810190808051906020019092919050505050610af684600b5461211b90919063ffffffff16565b600b819055507f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a94243643385604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15b610b7f600554610b71600254866000015461204b90919063ffffffff16565b6120d190919063ffffffff16565b836001018190555050505050565b60085481565b60025481565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610bc7612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c87576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610d4d612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e0d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610e9857600080fd5b505afa158015610eac573d6000803e3d6000fd5b505050506040513d6020811015610ec257600080fd5b81019080805190602001909291905050509050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610f6857600080fd5b505af1158015610f7c573d6000803e3d6000fd5b505050506040513d6020811015610f9257600080fd5b8101908080519060200190929190505050505050565b60075481565b60045481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600061101e610ff960085460075461216590919063ffffffff16565b61101060075460065461204b90919063ffffffff16565b6120d190919063ffffffff16565b9050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156110d557600080fd5b505af11580156110e9573d6000803e3d6000fd5b505050506040513d60208110156110ff57600080fd5b810190808051906020019092919050505050600061115261112d60085460075461216590919063ffffffff16565b61114460085460065461204b90919063ffffffff16565b6120d190919063ffffffff16565b9050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561120957600080fd5b505af115801561121d573d6000803e3d6000fd5b505050506040513d602081101561123357600080fd5b81019080805190602001909291905050505060006006819055505050565b60065481565b6003544311611265576112ce565b6000611280600454600354430361204b90919063ffffffff16565b90506112bf6112ae600b546112a06005548561204b90919063ffffffff16565b6120d190919063ffffffff16565b60025461216590919063ffffffff16565b60028190555043600381905550505b565b60016020528060005260406000206000915090508060000154908060010154905082565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905061133f611257565b6000816000015411156114b95760006113918260010154611383600554611375600254876000015461204b90919063ffffffff16565b6120d190919063ffffffff16565b61211b90919063ffffffff16565b9050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561142657600080fd5b505af115801561143a573d6000803e3d6000fd5b505050506040513d602081101561145057600080fd5b8101908080519060200190929190505050507f106f923f993c2149d49b4255ff723acafa1f2d94393f561d3eda32ae348f72413382604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1505b6114d082826000015461216590919063ffffffff16565b81600001819055506115056005546114f7600254846000015461204b90919063ffffffff16565b6120d190919063ffffffff16565b8160010181905550600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156115be57600080fd5b505af11580156115d2573d6000803e3d6000fd5b505050506040513d60208110156115e857600080fd5b81019080805190602001909291905050505061160f82600b5461216590919063ffffffff16565b600b819055507fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c3383604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15050565b611676612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611736576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b61173e611257565b7f79a5349732f93288abbb68e251c3dfc325bf3ee6fde7786d919155d39733e0f560045482604051808381526020018281526020019250505060405180910390a18060048190555050565b600b5481565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6117bd612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461187d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561190857600080fd5b505afa15801561191c573d6000803e3d6000fd5b505050506040513d602081101561193257600080fd5b81019080805190602001909291905050509050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156119d857600080fd5b505af11580156119ec573d6000803e3d6000fd5b505050506040513d6020811015611a0257600080fd5b8101908080519060200190929190505050505050565b611a20612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ae0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b81600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050611bc28160000154600b5461211b90919063ffffffff16565b600b81905550600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb3383600001546040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611c5f57600080fd5b505af1158015611c73573d6000803e3d6000fd5b505050506040513d6020811015611c8957600080fd5b8101908080519060200190929190505050507f5fafa99d0643513820be26656b45130b01e1c03062e1266bf36f88cbd3bd9695338260000154604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1600081600001819055506000816001018190555050565b611d13612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611dd3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611e59576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061239c6026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060006002549050600354431115611fc7576000611f86600454600354430361204b90919063ffffffff16565b9050611fc3611fb4600b54611fa66005548561204b90919063ffffffff16565b6120d190919063ffffffff16565b8361216590919063ffffffff16565b9150505b6120088260010154611ffa600554611fec85876000015461204b90919063ffffffff16565b6120d190919063ffffffff16565b61211b90919063ffffffff16565b92505050919050565b60055481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60035481565b600033905090565b60008083141561205e57600090506120cb565b600082840290508284828161206f57fe5b04146120c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806123c26021913960400191505060405180910390fd5b809150505b92915050565b600061211383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506121ed565b905092915050565b600061215d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506122b3565b905092915050565b6000808284019050838110156121e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60008083118290612299576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561225e578082015181840152602081019050612243565b50505050905090810190601f16801561228b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816122a557fe5b049050809150509392505050565b6000838311158290612360576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561232557808201518184015260208101905061230a565b50505050905090810190601f1680156123525780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838503905080915050939250505056fe776974686472617720616d6f756e742065786365656473206465706f736974656420616d6f756e744f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212206607ea760dc1d067371b1e69f86cd8c9ccef855eed569218d24af7a310376d3764736f6c634300060c003300000000000000000000000080ab141f324c3d6f2b18b030f1c4e95d4d65877800000000000000000000000080ab141f324c3d6f2b18b030f1c4e95d4d658778000000000000000000000000000000000000000000000000007ef9573445c00000000000000000000000000000000000000000000000000001f161421c8e0000000000000000000000000000000000000000000000000000008e1bc9bf040000
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101a95760003560e01c8063a2e62045116100f9578063d3f6a15711610097578063f40f0f5211610071578063f40f0f52146105ab578063f51e181a14610603578063f7c618c114610621578063f90ce5ba14610655576101a9565b8063d3f6a157146104f9578063db2e21bc1461055d578063f2fde38b14610567576101a9565b8063bb872b4a116100d3578063bb872b4a14610435578063cb6d8ee614610463578063cc7a262e14610481578063cee66f63146104b5576101a9565b8063a2e620451461039e578063a87430ba146103a8578063b6b55f2514610407576101a9565b8063715018a6116101665780638ae39cac116101405780638ae39cac146103245780638da5cb5b146103425780639378c6d414610376578063995d9b6014610380576101a9565b8063715018a6146102b857806372d21c89146102c257806388d19f1b14610306576101a9565b8063079a5705146101ae5780632aca3e7d146101e25780632e1a7d4d1461021a578063481af4aa1461024857806360c6cdac14610266578063698a589714610284575b600080fd5b6101b6610673565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610218600480360360408110156101f857600080fd5b810190808035906020019092919080359060200190929190505050610699565b005b6102466004803603602081101561023057600080fd5b810190808035906020019092919050505061077b565b005b610250610b8d565b6040518082815260200191505060405180910390f35b61026e610b93565b6040518082815260200191505060405180910390f35b61028c610b99565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102c0610bbf565b005b610304600480360360208110156102d857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d45565b005b61030e610fa8565b6040518082815260200191505060405180910390f35b61032c610fae565b6040518082815260200191505060405180910390f35b61034a610fb4565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61037e610fdd565b005b610388611251565b6040518082815260200191505060405180910390f35b6103a6611257565b005b6103ea600480360360208110156103be57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112d0565b604051808381526020018281526020019250505060405180910390f35b6104336004803603602081101561041d57600080fd5b81019080803590602001909291905050506112f4565b005b6104616004803603602081101561044b57600080fd5b810190808035906020019092919050505061166e565b005b61046b611789565b6040518082815260200191505060405180910390f35b61048961178f565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104f7600480360360208110156104cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506117b5565b005b61055b6004803603604081101561050f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a18565b005b610565611b66565b005b6105a96004803603602081101561057d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d0b565b005b6105ed600480360360208110156105c157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f16565b6040518082815260200191505060405180910390f35b61060b612011565b6040518082815260200191505060405180910390f35b610629612017565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61065d61203d565b6040518082815260200191505060405180910390f35b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6106a1612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610761576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b610769610fdd565b81600781905550806008819055505050565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050818160000154101561081b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260288152602001806123746028913960400191505060405180910390fd5b610823611257565b6000610868826001015461085a60055461084c600254876000015461204b90919063ffffffff16565b6120d190919063ffffffff16565b61211b90919063ffffffff16565b9050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156108fd57600080fd5b505af1158015610911573d6000803e3d6000fd5b505050506040513d602081101561092757600080fd5b8101908080519060200190929190505050507f106f923f993c2149d49b4255ff723acafa1f2d94393f561d3eda32ae348f72413382604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a160006109cd6005546109bf6109b060085460075461216590919063ffffffff16565b8561204b90919063ffffffff16565b6120d190919063ffffffff16565b90506109e48160065461216590919063ffffffff16565b6006819055506000841115610b5257610a0a84846000015461211b90919063ffffffff16565b8360000181905550600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33866040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610aa557600080fd5b505af1158015610ab9573d6000803e3d6000fd5b505050506040513d6020811015610acf57600080fd5b810190808051906020019092919050505050610af684600b5461211b90919063ffffffff16565b600b819055507f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a94243643385604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15b610b7f600554610b71600254866000015461204b90919063ffffffff16565b6120d190919063ffffffff16565b836001018190555050505050565b60085481565b60025481565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610bc7612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c87576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610d4d612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e0d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610e9857600080fd5b505afa158015610eac573d6000803e3d6000fd5b505050506040513d6020811015610ec257600080fd5b81019080805190602001909291905050509050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610f6857600080fd5b505af1158015610f7c573d6000803e3d6000fd5b505050506040513d6020811015610f9257600080fd5b8101908080519060200190929190505050505050565b60075481565b60045481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600061101e610ff960085460075461216590919063ffffffff16565b61101060075460065461204b90919063ffffffff16565b6120d190919063ffffffff16565b9050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156110d557600080fd5b505af11580156110e9573d6000803e3d6000fd5b505050506040513d60208110156110ff57600080fd5b810190808051906020019092919050505050600061115261112d60085460075461216590919063ffffffff16565b61114460085460065461204b90919063ffffffff16565b6120d190919063ffffffff16565b9050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561120957600080fd5b505af115801561121d573d6000803e3d6000fd5b505050506040513d602081101561123357600080fd5b81019080805190602001909291905050505060006006819055505050565b60065481565b6003544311611265576112ce565b6000611280600454600354430361204b90919063ffffffff16565b90506112bf6112ae600b546112a06005548561204b90919063ffffffff16565b6120d190919063ffffffff16565b60025461216590919063ffffffff16565b60028190555043600381905550505b565b60016020528060005260406000206000915090508060000154908060010154905082565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905061133f611257565b6000816000015411156114b95760006113918260010154611383600554611375600254876000015461204b90919063ffffffff16565b6120d190919063ffffffff16565b61211b90919063ffffffff16565b9050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561142657600080fd5b505af115801561143a573d6000803e3d6000fd5b505050506040513d602081101561145057600080fd5b8101908080519060200190929190505050507f106f923f993c2149d49b4255ff723acafa1f2d94393f561d3eda32ae348f72413382604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1505b6114d082826000015461216590919063ffffffff16565b81600001819055506115056005546114f7600254846000015461204b90919063ffffffff16565b6120d190919063ffffffff16565b8160010181905550600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156115be57600080fd5b505af11580156115d2573d6000803e3d6000fd5b505050506040513d60208110156115e857600080fd5b81019080805190602001909291905050505061160f82600b5461216590919063ffffffff16565b600b819055507fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c3383604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15050565b611676612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611736576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b61173e611257565b7f79a5349732f93288abbb68e251c3dfc325bf3ee6fde7786d919155d39733e0f560045482604051808381526020018281526020019250505060405180910390a18060048190555050565b600b5481565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6117bd612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461187d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561190857600080fd5b505afa15801561191c573d6000803e3d6000fd5b505050506040513d602081101561193257600080fd5b81019080805190602001909291905050509050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156119d857600080fd5b505af11580156119ec573d6000803e3d6000fd5b505050506040513d6020811015611a0257600080fd5b8101908080519060200190929190505050505050565b611a20612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ae0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b81600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050611bc28160000154600b5461211b90919063ffffffff16565b600b81905550600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb3383600001546040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611c5f57600080fd5b505af1158015611c73573d6000803e3d6000fd5b505050506040513d6020811015611c8957600080fd5b8101908080519060200190929190505050507f5fafa99d0643513820be26656b45130b01e1c03062e1266bf36f88cbd3bd9695338260000154604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1600081600001819055506000816001018190555050565b611d13612043565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611dd3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611e59576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061239c6026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060006002549050600354431115611fc7576000611f86600454600354430361204b90919063ffffffff16565b9050611fc3611fb4600b54611fa66005548561204b90919063ffffffff16565b6120d190919063ffffffff16565b8361216590919063ffffffff16565b9150505b6120088260010154611ffa600554611fec85876000015461204b90919063ffffffff16565b6120d190919063ffffffff16565b61211b90919063ffffffff16565b92505050919050565b60055481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60035481565b600033905090565b60008083141561205e57600090506120cb565b600082840290508284828161206f57fe5b04146120c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806123c26021913960400191505060405180910390fd5b809150505b92915050565b600061211383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506121ed565b905092915050565b600061215d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506122b3565b905092915050565b6000808284019050838110156121e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60008083118290612299576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561225e578082015181840152602081019050612243565b50505050905090810190601f16801561228b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816122a557fe5b049050809150509392505050565b6000838311158290612360576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561232557808201518184015260208101905061230a565b50505050905090810190601f1680156123525780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838503905080915050939250505056fe776974686472617720616d6f756e742065786365656473206465706f736974656420616d6f756e744f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212206607ea760dc1d067371b1e69f86cd8c9ccef855eed569218d24af7a310376d3764736f6c634300060c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000080ab141f324c3d6f2b18b030f1c4e95d4d65877800000000000000000000000080ab141f324c3d6f2b18b030f1c4e95d4d658778000000000000000000000000000000000000000000000000007ef9573445c00000000000000000000000000000000000000000000000000001f161421c8e0000000000000000000000000000000000000000000000000000008e1bc9bf040000
-----Decoded View---------------
Arg [0] : _stakedToken (address): 0x80aB141F324C3d6F2b18b030f1C4E95d4d658778
Arg [1] : _rewardToken (address): 0x80aB141F324C3d6F2b18b030f1C4E95d4d658778
Arg [2] : _rewardPerBlock (uint256): 35740000000000000
Arg [3] : _daoShare (uint256): 140000000000000000
Arg [4] : _earlyFoundersShare (uint256): 40000000000000000
-----Encoded View---------------
5 Constructor Arguments found :
Arg [0] : 00000000000000000000000080ab141f324c3d6f2b18b030f1c4e95d4d658778
Arg [1] : 00000000000000000000000080ab141f324c3d6f2b18b030f1c4e95d4d658778
Arg [2] : 000000000000000000000000000000000000000000000000007ef9573445c000
Arg [3] : 00000000000000000000000000000000000000000000000001f161421c8e0000
Arg [4] : 000000000000000000000000000000000000000000000000008e1bc9bf040000
Deployed Bytecode Sourcemap
674:6563:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1183:34;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2377:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4575:991;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1112:33;;;:::i;:::-;;;;;;;;;;;;;;;;;;;882:40;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1152:24;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1737:148:2;;;:::i;:::-;;6636:199:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1082:23;;;:::i;:::-;;;;;;;;;;;;;;;;;;;967:29;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1095:79:2;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;5574:434:1;;;:::i;:::-;;1039:36;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2876:352;;;:::i;:::-;;835:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;3828:739;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2597:209;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1283:35;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1327:30;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;7031:201;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2188:181;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6079:359;;;:::i;:::-;;2040:244:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3293:527:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1003:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1364:30;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;929:31;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1183:34;;;;;;;;;;;;;:::o;2377:212::-;1317:12:2;:10;:12::i;:::-;1307:22;;:6;;;;;;;;;;:22;;;1299:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2472:27:1::1;:25;:27::i;:::-;2521:9;2510:8;:20;;;;2562:19;2541:18;:40;;;;2377:212:::0;;:::o;4575:991::-;4627:17;4647:5;:17;4653:10;4647:17;;;;;;;;;;;;;;;4627:37;;4705:6;4683:4;:18;;;:28;;4675:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4767:8;:6;:8::i;:::-;4788:22;4813:77;4874:4;:15;;;4813:56;4863:5;;4813:45;4836:21;;4813:4;:18;;;:22;;:45;;;;:::i;:::-;:49;;:56;;;;:::i;:::-;:60;;:77;;;;:::i;:::-;4788:102;;4901:11;;;;;;;;;;;:20;;;4922:10;4934:14;4901:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4965:41;4979:10;4991:14;4965:41;;;;;;;;;;;;;;;;;;;;;;;;;;5019:30;5052:63;5109:5;;5052:52;5071:32;5084:18;;5071:8;;:12;;:32;;;;:::i;:::-;5052:14;:18;;:52;;;;:::i;:::-;:56;;:63;;;;:::i;:::-;5019:96;;5146:45;5168:22;5146:17;;:21;;:45;;;;:::i;:::-;5126:17;:65;;;;5217:1;5208:6;:10;5204:268;;;5256:30;5279:6;5256:4;:18;;;:22;;:30;;;;:::i;:::-;5235:4;:18;;:51;;;;5301:11;;;;;;;;;;;:20;;;5330:10;5343:6;5301:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5384:28;5405:6;5384:16;;:20;;:28;;;;:::i;:::-;5365:16;:47;;;;5432:28;5441:10;5453:6;5432:28;;;;;;;;;;;;;;;;;;;;;;;;;;5204:268;5502:56;5552:5;;5502:45;5525:21;;5502:4;:18;;;:22;;:45;;;;:::i;:::-;:49;;:56;;;;:::i;:::-;5484:4;:15;;:74;;;;4575:991;;;;:::o;1112:33::-;;;;:::o;882:40::-;;;;:::o;1152:24::-;;;;;;;;;;;;;:::o;1737:148:2:-;1317:12;:10;:12::i;:::-;1307:22;;:6;;;;;;;;;;:22;;;1299:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1844:1:::1;1807:40;;1828:6;::::0;::::1;;;;;;;;1807:40;;;;;;;;;;;;1875:1;1858:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;1737:148::o:0;6636:199:1:-;1317:12:2;:10;:12::i;:::-;1307:22;;:6;;;;;;;;;;:22;;;1299:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6709:25:1::1;6737:11;;;;;;;;;;;:21;;;6767:4;6737:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;6709:64;;6784:11;;;;;;;;;;;:20;;;6805:2;6809:17;6784:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;1377:1:2;6636:199:1::0;:::o;1082:23::-;;;;:::o;967:29::-;;;;:::o;1095:79:2:-;1133:7;1160:6;;;;;;;;;;;1153:13;;1095:79;:::o;5574:434:1:-;5629:17;5649:69;5685:32;5698:18;;5685:8;;:12;;:32;;;;:::i;:::-;5649:31;5671:8;;5649:17;;:21;;:31;;;;:::i;:::-;:35;;:69;;;;:::i;:::-;5629:89;;5729:11;;;;;;;;;;;:20;;;5750:9;;;;;;;;;;;5761;5729:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5784:27;5814:79;5860:32;5873:18;;5860:8;;:12;;:32;;;;:::i;:::-;5814:41;5836:18;;5814:17;;:21;;:41;;;;:::i;:::-;:45;;:79;;;;:::i;:::-;5784:109;;5904:11;;;;;;;;;;;:20;;;5925:19;;;;;;;;;;;5946;5904:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5999:1;5979:17;:21;;;;5574:434;;:::o;1039:36::-;;;;:::o;2876:352::-;2932:16;;2916:12;:32;2912:71;;2965:7;;2912:71;2993:20;3016:53;3054:14;;3032:16;;3017:12;:31;3016:37;;:53;;;;:::i;:::-;2993:76;;3106:72;3132:45;3160:16;;3132:23;3149:5;;3132:12;:16;;:23;;;;:::i;:::-;:27;;:45;;;;:::i;:::-;3106:21;;:25;;:72;;;;:::i;:::-;3082:21;:96;;;;3208:12;3189:16;:31;;;;2876:352;;:::o;835:38::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;3828:739::-;3879:17;3899:5;:17;3905:10;3899:17;;;;;;;;;;;;;;;3879:37;;3927:8;:6;:8::i;:::-;3973:1;3952:4;:18;;;:22;3948:281;;;3991:22;4016:77;4077:4;:15;;;4016:56;4066:5;;4016:45;4039:21;;4016:4;:18;;;:22;;:45;;;;:::i;:::-;:49;;:56;;;;:::i;:::-;:60;;:77;;;;:::i;:::-;3991:102;;4108:11;;;;;;;;;;;:20;;;4129:10;4141:14;4108:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4176:41;4190:10;4202:14;4176:41;;;;;;;;;;;;;;;;;;;;;;;;;;3948:281;;4262:30;4285:6;4262:4;:18;;;:22;;:30;;;;:::i;:::-;4241:4;:18;;:51;;;;4321:56;4371:5;;4321:45;4344:21;;4321:4;:18;;;:22;;:45;;;;:::i;:::-;:49;;:56;;;;:::i;:::-;4303:4;:15;;:74;;;;4390:11;;;;;;;;;;;:24;;;4423:10;4444:4;4451:6;4390:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4488:28;4509:6;4488:16;;:20;;:28;;;;:::i;:::-;4469:16;:47;;;;4532:27;4540:10;4552:6;4532:27;;;;;;;;;;;;;;;;;;;;;;;;;;3828:739;;:::o;2597:209::-;1317:12:2;:10;:12::i;:::-;1307:22;;:6;;;;;;;;;;:22;;;1299:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2677:8:1::1;:6;:8::i;:::-;2701:54;2723:14;;2739:15;2701:54;;;;;;;;;;;;;;;;;;;;;;;;2783:15;2766:14;:32;;;;2597:209:::0;:::o;1283:35::-;;;;:::o;1327:30::-;;;;;;;;;;;;;:::o;7031:201::-;1317:12:2;:10;:12::i;:::-;1307:22;;:6;;;;;;;;;;:22;;;1299:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7104:26:1::1;7133:11;;;;;;;;;;;:21;;;7163:4;7133:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;7104:65;;7180:11;;;;;;;;;;;:20;;;7201:2;7205:18;7180:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;1377:1:2;7031:201:1::0;:::o;2188:181::-;1317:12:2;:10;:12::i;:::-;1307:22;;:6;;;;;;;;;;:22;;;1299:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2298:10:1::1;2286:9;;:22;;;;;;;;;;;;;;;;;;2341:20;2319:19;;:42;;;;;;;;;;;;;;;;;;2188:181:::0;;:::o;6079:359::-;6126:17;6146:5;:17;6152:10;6146:17;;;;;;;;;;;;;;;6126:37;;6195:40;6216:4;:18;;;6195:16;;:20;;:40;;;;:::i;:::-;6176:16;:59;;;;6246:11;;;;;;;;;;;:20;;;6267:10;6279:4;:18;;;6246:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6316:49;6334:10;6346:4;:18;;;6316:49;;;;;;;;;;;;;;;;;;;;;;;;;;6399:1;6378:4;:18;;:22;;;;6429:1;6411:4;:15;;:19;;;;6079:359;:::o;2040:244:2:-;1317:12;:10;:12::i;:::-;1307:22;;:6;;;;;;;;;;:22;;;1299:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2149:1:::1;2129:22;;:8;:22;;;;2121:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2239:8;2210:38;;2231:6;::::0;::::1;;;;;;;;2210:38;;;;;;;;;;;;2268:8;2259:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;2040:244:::0;:::o;3293:527:1:-;3354:7;3374:17;3394:5;:12;3400:5;3394:12;;;;;;;;;;;;;;;3374:32;;3417:25;3445:21;;3417:49;;3498:16;;3483:12;:31;3479:243;;;3531:20;3554:53;3592:14;;3570:16;;3555:12;:31;3554:37;;:53;;;;:::i;:::-;3531:76;;3642:68;3664:45;3692:16;;3664:23;3681:5;;3664:12;:16;;:23;;;;:::i;:::-;:27;;:45;;;;:::i;:::-;3642:17;:21;;:68;;;;:::i;:::-;3622:88;;3479:243;;3739:73;3796:4;:15;;;3739:52;3785:5;;3739:41;3762:17;3739:4;:18;;;:22;;:41;;;;:::i;:::-;:45;;:52;;;;:::i;:::-;:56;;:73;;;;:::i;:::-;3732:80;;;;3293:527;;;:::o;1003:27::-;;;;:::o;1364:30::-;;;;;;;;;;;;;:::o;929:31::-;;;;:::o;605:106:0:-;658:15;693:10;686:17;;605:106;:::o;2256:471:3:-;2314:7;2564:1;2559;:6;2555:47;;;2589:1;2582:8;;;;2555:47;2614:9;2630:1;2626;:5;2614:17;;2659:1;2654;2650;:5;;;;;;:10;2642:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2718:1;2711:8;;;2256:471;;;;;:::o;3203:132::-;3261:7;3288:39;3292:1;3295;3288:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;3281:46;;3203:132;;;;:::o;1366:136::-;1424:7;1451:43;1455:1;1458;1451:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1444:50;;1366:136;;;;:::o;902:181::-;960:7;980:9;996:1;992;:5;980:17;;1021:1;1016;:6;;1008:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1074:1;1067:8;;;902:181;;;;:::o;3831:278::-;3917:7;3949:1;3945;:5;3952:12;3937:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3976:9;3992:1;3988;:5;;;;;;3976:17;;4100:1;4093:8;;;3831:278;;;;;:::o;1805:192::-;1891:7;1924:1;1919;:6;;1927:12;1911:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1951:9;1967:1;1963;:5;1951:17;;1988:1;1981:8;;;1805:192;;;;;:::o
Swarm Source
ipfs://6607ea760dc1d067371b1e69f86cd8c9ccef855eed569218d24af7a310376d37
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.