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
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
KEYSDistributor
Compiler Version
v0.8.14+commit.80d49f37
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-08-17 */ //SPDX-License-Identifier: MIT pragma solidity 0.8.14; interface IERC20 { function totalSupply() external view returns (uint256); function symbol() external view returns(string memory); function name() external view returns(string memory); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Returns the number of decimal places */ function decimals() external view returns (uint8); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); } /** * @title Owner * @dev Set & change owner */ contract Ownable { address private owner; // event for EVM logging event OwnerSet(address indexed oldOwner, address indexed newOwner); // modifier to check if caller is owner modifier onlyOwner() { // If the first argument of 'require' evaluates to 'false', execution terminates and all // changes to the state and to Ether balances are reverted. // This used to consume all gas in old EVM versions, but not anymore. // It is often a good idea to use 'require' to check if functions are called correctly. // As a second argument, you can also provide an explanation about what went wrong. require(msg.sender == owner, "Caller is not owner"); _; } /** * @dev Set contract deployer as owner */ constructor() { owner = msg.sender; // 'msg.sender' is sender of current call, contract deployer for a constructor emit OwnerSet(address(0), owner); } /** * @dev Change owner * @param newOwner address of new owner */ function changeOwner(address newOwner) public onlyOwner { emit OwnerSet(owner, newOwner); owner = newOwner; } /** * @dev Return owner address * @return address of owner */ function getOwner() external view returns (address) { return owner; } } interface IKeysFarming { function deposit(uint256 amount) external; } interface ILoyalKeyDatabase { function getLoyalKeyRank(address user) external view returns (uint256); } /** * * KEYS Funding Receiver * Will Allocate Funding To Different Sources * */ contract KEYSDistributor is Ownable { // KEYS address public constant KEYS = 0xe0a189C975e4928222978A74517442239a0b86ff; // LoyalKey Database ILoyalKeyDatabase public immutable loyalKey; // Max Int uint256 private constant MAX_INT = type(uint256).max; // Farming & Stake Manager address public farm; address public stake; // allocation to farm + stake uint256 public farmFee; uint256 public stakeFee; // farm fee + stake fee uint256 public feeDenom; // keys to distribute per second 0.385802469 => 1,000,000 keys per month (30 days) uint256 public keysPerSecond = 385802469; // last second to distribute keys uint256 public lastSecond; // minimum to distribute keys uint256 public distributionMinimum = 1 * 10**9; // tracks total rewards uint256 public totalRewards; uint256 public totalBounties; // Bounty Percent Out Of 1,000 uint256 public constant Default_Bounty_Percent = 10; // 1% uint256 private constant Bounty_Denom = 1000; mapping ( uint256 => uint256 ) public loyalKeyRankToBountyPercent; constructor(uint256 stakePercent, uint256 farmPercent, address loyalKeyDB) { loyalKey = ILoyalKeyDatabase(loyalKeyDB); farm = 0x810487135d29f35f06f1075b48D5978F1791d743; stake = 0x73940d8E53b3cF00D92e3EBFfa33b4d54626306D; stakeFee = stakePercent; farmFee = farmPercent; feeDenom = stakePercent + farmPercent; loyalKeyRankToBountyPercent[0] = 10; // 1.0% for zero rank loyalKeyRankToBountyPercent[1] = 16; // 1.6% for first rank loyalKeyRankToBountyPercent[2] = 20; // 2.0% for second rank loyalKeyRankToBountyPercent[3] = 24; // 2.4% for third rank loyalKeyRankToBountyPercent[4] = 28; // 2.8% for forth rank loyalKeyRankToBountyPercent[5] = 32; // 3.2% for fifth rank loyalKeyRankToBountyPercent[6] = 36; // 3.6% for sixth rank loyalKeyRankToBountyPercent[7] = 40; // 4.0% for seventh rank lastSecond = block.timestamp; IERC20(KEYS).approve(farm, MAX_INT); } // Events event ResetRewardTimer(); event SetFarm(address farm); event SetStaker(address staker); event TokenWithdrawal(uint256 amount); event SetKeysPerSecond(uint256 keysPerSec); event SetDistributionMinimum(uint256 minKeys); event SetBountyPercent(uint256 loyalKeyRank, uint256 newBounty); event SetFundPercents(uint256 farmPercentage, uint256 stakePercent); function setKeysPerSecond(uint256 keysPerSec) external onlyOwner { keysPerSecond = keysPerSec; emit SetKeysPerSecond(keysPerSec); } function setDistributionMinimum(uint256 minKeys) external onlyOwner { distributionMinimum = minKeys; emit SetDistributionMinimum(minKeys); } function resetRewardTimer() external onlyOwner { lastSecond = block.timestamp; emit ResetRewardTimer(); } function setFarm(address _farm) external onlyOwner { farm = _farm; emit SetFarm(_farm); } function setStake(address _stake) external onlyOwner { stake = _stake; emit SetStaker(_stake); } function setBountyPercentForLoyalKeyRank(uint256 loyalKeyRank, uint256 newBountyPercent) external onlyOwner { require( newBountyPercent < Bounty_Denom, 'Bounty Too High' ); loyalKeyRankToBountyPercent[loyalKeyRank] = newBountyPercent; emit SetBountyPercent(loyalKeyRank, newBountyPercent); } function setFundPercents(uint256 farmPercentage, uint256 stakePercentage) external onlyOwner { farmFee = farmPercentage; stakeFee = stakePercentage; feeDenom = farmPercentage + stakePercentage; emit SetFundPercents(farmPercentage, stakePercentage); } function withdrawToken(address token) external onlyOwner { uint256 bal = IERC20(token).balanceOf(address(this)); IERC20(token).transfer(msg.sender, bal); emit TokenWithdrawal(bal); } function reApprove() external onlyOwner { IERC20(KEYS).approve(farm, MAX_INT); } // ONLY APPROVED function distribute() external { _distribute(); } receive() external payable { (bool s,) = payable(KEYS).call{value: address(this).balance}(""); require(s, 'Failure on Token Purchase'); _distribute(); } // INTERNAL function _distribute() internal { // pending keys for distribution uint pending = pendingKeys(); require( pending >= distributionMinimum, 'Min Distribution Not Met' ); // keys bounty uint256 bounty = calculateBounty(msg.sender, pending); // update timer lastSecond = block.timestamp; // send bounty to msg.sender if (bounty > 0) { IERC20(KEYS).transfer(msg.sender, bounty); pending = pending - bounty; } // Increment Total Rewards And Bounties unchecked { totalRewards += pending; totalBounties += bounty; } // divy up pending keys uint256 keysForFarming = (pending * farmFee) / feeDenom; uint256 keysForStaking = pending - keysForFarming; // deposit keys in farm as rewards - we have already pre-approved for max int IKeysFarming(farm).deposit(keysForFarming); // transfer rewards to Keys MAXI IERC20(KEYS).transfer(stake, keysForStaking); } // Read Functions function timeSince() public view returns (uint256) { return lastSecond >= block.timestamp ? 0 : block.timestamp - lastSecond; } function pendingKeys() public view returns (uint256) { uint pending = timeSince() * keysPerSecond; uint bal = balanceOf(); return pending < bal ? pending : bal; } function balanceOf() public view returns (uint256) { return IERC20(KEYS).balanceOf(address(this)); } function minBounty() public view returns (uint256) { return currentBounty(address(0)); } function currentBounty(address user) public view returns (uint256) { return ( pendingKeys() * getBountyPercent(user) ) / Bounty_Denom; } function calculateBounty(address user, uint256 pending) public view returns (uint256) { return ( pending * getBountyPercent(user) ) / Bounty_Denom; } function getBountyPercent(address user) public view returns (uint256) { uint percent = loyalKeyRankToBountyPercent[getLoyalKeyRank(user)]; return percent == 0 ? Default_Bounty_Percent : percent; } function getLoyalKeyRank(address user) public view returns (uint256) { if (user == address(0)) { return 0; } return loyalKey.getLoyalKeyRank(user); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"uint256","name":"stakePercent","type":"uint256"},{"internalType":"uint256","name":"farmPercent","type":"uint256"},{"internalType":"address","name":"loyalKeyDB","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnerSet","type":"event"},{"anonymous":false,"inputs":[],"name":"ResetRewardTimer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"loyalKeyRank","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newBounty","type":"uint256"}],"name":"SetBountyPercent","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"minKeys","type":"uint256"}],"name":"SetDistributionMinimum","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"farm","type":"address"}],"name":"SetFarm","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"farmPercentage","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"stakePercent","type":"uint256"}],"name":"SetFundPercents","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"keysPerSec","type":"uint256"}],"name":"SetKeysPerSecond","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"staker","type":"address"}],"name":"SetStaker","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenWithdrawal","type":"event"},{"inputs":[],"name":"Default_Bounty_Percent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"KEYS","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"pending","type":"uint256"}],"name":"calculateBounty","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"changeOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"currentBounty","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"distribute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"distributionMinimum","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"farm","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"farmFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeDenom","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getBountyPercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getLoyalKeyRank","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"keysPerSecond","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastSecond","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"loyalKey","outputs":[{"internalType":"contract ILoyalKeyDatabase","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"loyalKeyRankToBountyPercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minBounty","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pendingKeys","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"reApprove","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"resetRewardTimer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"loyalKeyRank","type":"uint256"},{"internalType":"uint256","name":"newBountyPercent","type":"uint256"}],"name":"setBountyPercentForLoyalKeyRank","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"minKeys","type":"uint256"}],"name":"setDistributionMinimum","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_farm","type":"address"}],"name":"setFarm","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"farmPercentage","type":"uint256"},{"internalType":"uint256","name":"stakePercentage","type":"uint256"}],"name":"setFundPercents","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"keysPerSec","type":"uint256"}],"name":"setKeysPerSecond","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_stake","type":"address"}],"name":"setStake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stake","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"stakeFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"timeSince","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalBounties","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"withdrawToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60a06040526316fee0e5600655633b9aca006008553480156200002157600080fd5b50604051620026d2380380620026d2833981810160405281019062000047919062000460565b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a38073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff168152505073810487135d29f35f06f1075b48d5978f1791d743600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507373940d8e53b3cf00d92e3ebffa33b4d54626306d600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600481905550816003819055508183620001fc9190620004eb565b600581905550600a600b6000808152602001908152602001600020819055506010600b600060018152602001908152602001600020819055506014600b600060028152602001908152602001600020819055506018600b60006003815260200190815260200160002081905550601c600b600060048152602001908152602001600020819055506020600b600060058152602001908152602001600020819055506024600b600060068152602001908152602001600020819055506028600b600060078152602001908152602001600020819055504260078190555073e0a189c975e4928222978a74517442239a0b86ff73ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016200036b9291906200056a565b6020604051808303816000875af11580156200038b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003b19190620005d4565b5050505062000606565b600080fd5b6000819050919050565b620003d581620003c0565b8114620003e157600080fd5b50565b600081519050620003f581620003ca565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200042882620003fb565b9050919050565b6200043a816200041b565b81146200044657600080fd5b50565b6000815190506200045a816200042f565b92915050565b6000806000606084860312156200047c576200047b620003bb565b5b60006200048c86828701620003e4565b93505060206200049f86828701620003e4565b9250506040620004b28682870162000449565b9150509250925092565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620004f882620003c0565b91506200050583620003c0565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156200053d576200053c620004bc565b5b828201905092915050565b62000553816200041b565b82525050565b6200056481620003c0565b82525050565b600060408201905062000581600083018562000548565b62000590602083018462000559565b9392505050565b60008115159050919050565b620005ae8162000597565b8114620005ba57600080fd5b50565b600081519050620005ce81620005a3565b92915050565b600060208284031215620005ed57620005ec620003bb565b5b6000620005fd84828501620005bd565b91505092915050565b6080516120a96200062960003960008181610e50015261191f01526120a96000f3fe6080604052600436106101fd5760003560e01c8063893d20e81161010d578063bb4fbf4c116100a0578063e2ea13191161006f578063e2ea1319146107d6578063e4fc6b6d146107ff578063f4068ae614610816578063f411d8dd1461082d578063f44c17aa14610858576102cc565b8063bb4fbf4c1461071a578063d439ef5514610745578063d4f26c5114610770578063e230e09614610799576102cc565b8063a35e912f116100dc578063a35e912f14610660578063a6f9dae114610689578063b6788acb146106b2578063ba26ef3c146106dd576102cc565b8063893d20e8146105b657806389476069146105e157806389b8db551461060a578063a24188ad14610635576102cc565b806336e9332d116101905780634e6ef4151161015f5780634e6ef415146104e1578063560a84701461050c578063722713f71461052357806374bd86251461054e57806385feeb231461058b576102cc565b806336e9332d146104375780633a4b66f1146104625780633f8faee01461048d57806348edf28c146104b8576102cc565b8063222c9777116101cc578063222c97771461038d5780632d7fe3bf146103b85780632ebe038f146103e35780633298423b1461040e576102cc565b80630e15561a146102d1578063108748bf146102fc578063182ee07f1461033957806319a8657714610362576102cc565b366102cc57600073e0a189c975e4928222978a74517442239a0b86ff73ffffffffffffffffffffffffffffffffffffffff164760405161023c906119f0565b60006040518083038185875af1925050503d8060008114610279576040519150601f19603f3d011682016040523d82523d6000602084013e61027e565b606091505b50509050806102c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102b990611a62565b60405180910390fd5b6102ca610895565b005b600080fd5b3480156102dd57600080fd5b506102e6610b3d565b6040516102f39190611a9b565b60405180910390f35b34801561030857600080fd5b50610323600480360381019061031e9190611ae7565b610b43565b6040516103309190611a9b565b60405180910390f35b34801561034557600080fd5b50610360600480360381019061035b9190611ae7565b610b5b565b005b34801561036e57600080fd5b50610377610c2a565b6040516103849190611a9b565b60405180910390f35b34801561039957600080fd5b506103a2610c30565b6040516103af9190611a9b565b60405180910390f35b3480156103c457600080fd5b506103cd610c36565b6040516103da9190611a9b565b60405180910390f35b3480156103ef57600080fd5b506103f8610c3c565b6040516104059190611a9b565b60405180910390f35b34801561041a57600080fd5b5061043560048036038101906104309190611b14565b610c42565b005b34801561044357600080fd5b5061044c610d2d565b6040516104599190611b95565b60405180910390f35b34801561046e57600080fd5b50610477610d53565b6040516104849190611b95565b60405180910390f35b34801561049957600080fd5b506104a2610d79565b6040516104af9190611a9b565b60405180910390f35b3480156104c457600080fd5b506104df60048036038101906104da9190611ae7565b610d7f565b005b3480156104ed57600080fd5b506104f6610e4e565b6040516105039190611c0f565b60405180910390f35b34801561051857600080fd5b50610521610e72565b005b34801561052f57600080fd5b50610538610fd7565b6040516105459190611a9b565b60405180910390f35b34801561055a57600080fd5b5061057560048036038101906105709190611c56565b61106c565b6040516105829190611a9b565b60405180910390f35b34801561059757600080fd5b506105a0611097565b6040516105ad9190611a9b565b60405180910390f35b3480156105c257600080fd5b506105cb61109d565b6040516105d89190611b95565b60405180910390f35b3480156105ed57600080fd5b5061060860048036038101906106039190611c96565b6110c6565b005b34801561061657600080fd5b5061061f61128c565b60405161062c9190611a9b565b60405180910390f35b34801561064157600080fd5b5061064a61129d565b6040516106579190611a9b565b60405180910390f35b34801561066c57600080fd5b5061068760048036038101906106829190611b14565b6112a2565b005b34801561069557600080fd5b506106b060048036038101906106ab9190611c96565b6113c9565b005b3480156106be57600080fd5b506106c7611514565b6040516106d49190611a9b565b60405180910390f35b3480156106e957600080fd5b5061070460048036038101906106ff9190611c96565b611550565b6040516107119190611a9b565b60405180910390f35b34801561072657600080fd5b5061072f611581565b60405161073c9190611a9b565b60405180910390f35b34801561075157600080fd5b5061075a6115a8565b6040516107679190611a9b565b60405180910390f35b34801561077c57600080fd5b5061079760048036038101906107929190611c96565b6115ae565b005b3480156107a557600080fd5b506107c060048036038101906107bb9190611c96565b6116b7565b6040516107cd9190611a9b565b60405180910390f35b3480156107e257600080fd5b506107fd60048036038101906107f89190611c96565b6116f1565b005b34801561080b57600080fd5b506108146117fa565b005b34801561082257600080fd5b5061082b611804565b005b34801561083957600080fd5b506108426118c7565b60405161084f9190611b95565b60405180910390f35b34801561086457600080fd5b5061087f600480360381019061087a9190611c96565b6118df565b60405161088c9190611a9b565b60405180910390f35b600061089f611514565b90506008548110156108e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108dd90611d0f565b60405180910390fd5b60006108f2338361106c565b90504260078190555060008111156109a65773e0a189c975e4928222978a74517442239a0b86ff73ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401610953929190611d2f565b6020604051808303816000875af1158015610972573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109969190611d90565b5080826109a39190611dec565b91505b8160096000828254019250508190555080600a600082825401925050819055506000600554600354846109d99190611e20565b6109e39190611ea9565b9050600081846109f39190611dec565b9050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b6b55f25836040518263ffffffff1660e01b8152600401610a509190611a9b565b600060405180830381600087803b158015610a6a57600080fd5b505af1158015610a7e573d6000803e3d6000fd5b5050505073e0a189c975e4928222978a74517442239a0b86ff73ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401610af3929190611d2f565b6020604051808303816000875af1158015610b12573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b369190611d90565b5050505050565b60095481565b600b6020528060005260406000206000915090505481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610be9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610be090611f26565b60405180910390fd5b806008819055507f5e079ef3d5af015de018fb8c1fad1bcd8cf66aab122dc1269db2fb4785b1811f81604051610c1f9190611a9b565b60405180910390a150565b60055481565b60045481565b60075481565b60065481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610cd0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc790611f26565b60405180910390fd5b81600381905550806004819055508082610cea9190611f46565b6005819055507f25eb0409f545cbd29198cbeb3fd730a538c8c4b74e0da846d0272b2c0fd7cd338282604051610d21929190611f9c565b60405180910390a15050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60035481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0490611f26565b60405180910390fd5b806006819055507fc54533fc3040b288366cad238f37db21b2d486ed132cb1fdfe6555a65801983f81604051610e439190611a9b565b60405180910390a150565b7f000000000000000000000000000000000000000000000000000000000000000081565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f00576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef790611f26565b60405180910390fd5b73e0a189c975e4928222978a74517442239a0b86ff73ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f91929190611d2f565b6020604051808303816000875af1158015610fb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fd49190611d90565b50565b600073e0a189c975e4928222978a74517442239a0b86ff73ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016110269190611b95565b602060405180830381865afa158015611043573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110679190611fda565b905090565b60006103e861107a846116b7565b836110859190611e20565b61108f9190611ea9565b905092915050565b600a5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611154576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114b90611f26565b60405180910390fd5b60008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161118f9190611b95565b602060405180830381865afa1580156111ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111d09190611fda565b90508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b815260040161120d929190611d2f565b6020604051808303816000875af115801561122c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112509190611d90565b507f0e266e8f38544aa1480d73762386eb10df55b1b8453d935762e891c44b69a1e6816040516112809190611a9b565b60405180910390a15050565b60006112986000611550565b905090565b600a81565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611330576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132790611f26565b60405180910390fd5b6103e88110611374576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136b90612053565b60405180910390fd5b80600b6000848152602001908152602001600020819055507f3c3675399ac391cbccfb69b9fc8345ff1d26c9b0954bebc1a7fb01dc832aa66c82826040516113bd929190611f9c565b60405180910390a15050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611457576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144e90611f26565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080600654611522611581565b61152c9190611e20565b90506000611538610fd7565b90508082106115475780611549565b815b9250505090565b60006103e861155e836116b7565b611566611514565b6115709190611e20565b61157a9190611ea9565b9050919050565b60004260075410156115a0576007544261159b9190611dec565b6115a3565b60005b905090565b60085481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461163c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163390611f26565b60405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fdc969223627a38b20c9a5c60ab6541958ffbaa8c3dea4bd5e5001a7b2646eb9f816040516116ac9190611b95565b60405180910390a150565b600080600b60006116c7856118df565b8152602001908152602001600020549050600081146116e657806116e9565b600a5b915050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461177f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177690611f26565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f6901da73a3480b0bbd7deb64f259ff29a76ce811c7a3e5cf495f0e1eb4fb4dfb816040516117ef9190611b95565b60405180910390a150565b611802610895565b565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611892576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188990611f26565b60405180910390fd5b426007819055507f3d22be56efb328ea7a1c3bc8216304c8b4276a7258674fe4516d98f2ad58dd6060405160405180910390a1565b73e0a189c975e4928222978a74517442239a0b86ff81565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361191d57600090506119ba565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f44c17aa836040518263ffffffff1660e01b81526004016119769190611b95565b602060405180830381865afa158015611993573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119b79190611fda565b90505b919050565b600081905092915050565b50565b60006119da6000836119bf565b91506119e5826119ca565b600082019050919050565b60006119fb826119cd565b9150819050919050565b600082825260208201905092915050565b7f4661696c757265206f6e20546f6b656e20507572636861736500000000000000600082015250565b6000611a4c601983611a05565b9150611a5782611a16565b602082019050919050565b60006020820190508181036000830152611a7b81611a3f565b9050919050565b6000819050919050565b611a9581611a82565b82525050565b6000602082019050611ab06000830184611a8c565b92915050565b600080fd5b611ac481611a82565b8114611acf57600080fd5b50565b600081359050611ae181611abb565b92915050565b600060208284031215611afd57611afc611ab6565b5b6000611b0b84828501611ad2565b91505092915050565b60008060408385031215611b2b57611b2a611ab6565b5b6000611b3985828601611ad2565b9250506020611b4a85828601611ad2565b9150509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611b7f82611b54565b9050919050565b611b8f81611b74565b82525050565b6000602082019050611baa6000830184611b86565b92915050565b6000819050919050565b6000611bd5611bd0611bcb84611b54565b611bb0565b611b54565b9050919050565b6000611be782611bba565b9050919050565b6000611bf982611bdc565b9050919050565b611c0981611bee565b82525050565b6000602082019050611c246000830184611c00565b92915050565b611c3381611b74565b8114611c3e57600080fd5b50565b600081359050611c5081611c2a565b92915050565b60008060408385031215611c6d57611c6c611ab6565b5b6000611c7b85828601611c41565b9250506020611c8c85828601611ad2565b9150509250929050565b600060208284031215611cac57611cab611ab6565b5b6000611cba84828501611c41565b91505092915050565b7f4d696e20446973747269627574696f6e204e6f74204d65740000000000000000600082015250565b6000611cf9601883611a05565b9150611d0482611cc3565b602082019050919050565b60006020820190508181036000830152611d2881611cec565b9050919050565b6000604082019050611d446000830185611b86565b611d516020830184611a8c565b9392505050565b60008115159050919050565b611d6d81611d58565b8114611d7857600080fd5b50565b600081519050611d8a81611d64565b92915050565b600060208284031215611da657611da5611ab6565b5b6000611db484828501611d7b565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611df782611a82565b9150611e0283611a82565b925082821015611e1557611e14611dbd565b5b828203905092915050565b6000611e2b82611a82565b9150611e3683611a82565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611e6f57611e6e611dbd565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611eb482611a82565b9150611ebf83611a82565b925082611ecf57611ece611e7a565b5b828204905092915050565b7f43616c6c6572206973206e6f74206f776e657200000000000000000000000000600082015250565b6000611f10601383611a05565b9150611f1b82611eda565b602082019050919050565b60006020820190508181036000830152611f3f81611f03565b9050919050565b6000611f5182611a82565b9150611f5c83611a82565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611f9157611f90611dbd565b5b828201905092915050565b6000604082019050611fb16000830185611a8c565b611fbe6020830184611a8c565b9392505050565b600081519050611fd481611abb565b92915050565b600060208284031215611ff057611fef611ab6565b5b6000611ffe84828501611fc5565b91505092915050565b7f426f756e747920546f6f20486967680000000000000000000000000000000000600082015250565b600061203d600f83611a05565b915061204882612007565b602082019050919050565b6000602082019050818103600083015261206c81612030565b905091905056fea26469706673582212206aee1976eddcf2cb2fde4042cc69969d24553b39dcc2d31082cff9fb9a7f02b064736f6c634300080e0033000000000000000000000000000000000000000000000000000000000000019000000000000000000000000000000000000000000000000000000000000002580000000000000000000000004072710ac0d71617f3e843bf90530b986c784672
Deployed Bytecode
0x6080604052600436106101fd5760003560e01c8063893d20e81161010d578063bb4fbf4c116100a0578063e2ea13191161006f578063e2ea1319146107d6578063e4fc6b6d146107ff578063f4068ae614610816578063f411d8dd1461082d578063f44c17aa14610858576102cc565b8063bb4fbf4c1461071a578063d439ef5514610745578063d4f26c5114610770578063e230e09614610799576102cc565b8063a35e912f116100dc578063a35e912f14610660578063a6f9dae114610689578063b6788acb146106b2578063ba26ef3c146106dd576102cc565b8063893d20e8146105b657806389476069146105e157806389b8db551461060a578063a24188ad14610635576102cc565b806336e9332d116101905780634e6ef4151161015f5780634e6ef415146104e1578063560a84701461050c578063722713f71461052357806374bd86251461054e57806385feeb231461058b576102cc565b806336e9332d146104375780633a4b66f1146104625780633f8faee01461048d57806348edf28c146104b8576102cc565b8063222c9777116101cc578063222c97771461038d5780632d7fe3bf146103b85780632ebe038f146103e35780633298423b1461040e576102cc565b80630e15561a146102d1578063108748bf146102fc578063182ee07f1461033957806319a8657714610362576102cc565b366102cc57600073e0a189c975e4928222978a74517442239a0b86ff73ffffffffffffffffffffffffffffffffffffffff164760405161023c906119f0565b60006040518083038185875af1925050503d8060008114610279576040519150601f19603f3d011682016040523d82523d6000602084013e61027e565b606091505b50509050806102c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102b990611a62565b60405180910390fd5b6102ca610895565b005b600080fd5b3480156102dd57600080fd5b506102e6610b3d565b6040516102f39190611a9b565b60405180910390f35b34801561030857600080fd5b50610323600480360381019061031e9190611ae7565b610b43565b6040516103309190611a9b565b60405180910390f35b34801561034557600080fd5b50610360600480360381019061035b9190611ae7565b610b5b565b005b34801561036e57600080fd5b50610377610c2a565b6040516103849190611a9b565b60405180910390f35b34801561039957600080fd5b506103a2610c30565b6040516103af9190611a9b565b60405180910390f35b3480156103c457600080fd5b506103cd610c36565b6040516103da9190611a9b565b60405180910390f35b3480156103ef57600080fd5b506103f8610c3c565b6040516104059190611a9b565b60405180910390f35b34801561041a57600080fd5b5061043560048036038101906104309190611b14565b610c42565b005b34801561044357600080fd5b5061044c610d2d565b6040516104599190611b95565b60405180910390f35b34801561046e57600080fd5b50610477610d53565b6040516104849190611b95565b60405180910390f35b34801561049957600080fd5b506104a2610d79565b6040516104af9190611a9b565b60405180910390f35b3480156104c457600080fd5b506104df60048036038101906104da9190611ae7565b610d7f565b005b3480156104ed57600080fd5b506104f6610e4e565b6040516105039190611c0f565b60405180910390f35b34801561051857600080fd5b50610521610e72565b005b34801561052f57600080fd5b50610538610fd7565b6040516105459190611a9b565b60405180910390f35b34801561055a57600080fd5b5061057560048036038101906105709190611c56565b61106c565b6040516105829190611a9b565b60405180910390f35b34801561059757600080fd5b506105a0611097565b6040516105ad9190611a9b565b60405180910390f35b3480156105c257600080fd5b506105cb61109d565b6040516105d89190611b95565b60405180910390f35b3480156105ed57600080fd5b5061060860048036038101906106039190611c96565b6110c6565b005b34801561061657600080fd5b5061061f61128c565b60405161062c9190611a9b565b60405180910390f35b34801561064157600080fd5b5061064a61129d565b6040516106579190611a9b565b60405180910390f35b34801561066c57600080fd5b5061068760048036038101906106829190611b14565b6112a2565b005b34801561069557600080fd5b506106b060048036038101906106ab9190611c96565b6113c9565b005b3480156106be57600080fd5b506106c7611514565b6040516106d49190611a9b565b60405180910390f35b3480156106e957600080fd5b5061070460048036038101906106ff9190611c96565b611550565b6040516107119190611a9b565b60405180910390f35b34801561072657600080fd5b5061072f611581565b60405161073c9190611a9b565b60405180910390f35b34801561075157600080fd5b5061075a6115a8565b6040516107679190611a9b565b60405180910390f35b34801561077c57600080fd5b5061079760048036038101906107929190611c96565b6115ae565b005b3480156107a557600080fd5b506107c060048036038101906107bb9190611c96565b6116b7565b6040516107cd9190611a9b565b60405180910390f35b3480156107e257600080fd5b506107fd60048036038101906107f89190611c96565b6116f1565b005b34801561080b57600080fd5b506108146117fa565b005b34801561082257600080fd5b5061082b611804565b005b34801561083957600080fd5b506108426118c7565b60405161084f9190611b95565b60405180910390f35b34801561086457600080fd5b5061087f600480360381019061087a9190611c96565b6118df565b60405161088c9190611a9b565b60405180910390f35b600061089f611514565b90506008548110156108e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108dd90611d0f565b60405180910390fd5b60006108f2338361106c565b90504260078190555060008111156109a65773e0a189c975e4928222978a74517442239a0b86ff73ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401610953929190611d2f565b6020604051808303816000875af1158015610972573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109969190611d90565b5080826109a39190611dec565b91505b8160096000828254019250508190555080600a600082825401925050819055506000600554600354846109d99190611e20565b6109e39190611ea9565b9050600081846109f39190611dec565b9050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b6b55f25836040518263ffffffff1660e01b8152600401610a509190611a9b565b600060405180830381600087803b158015610a6a57600080fd5b505af1158015610a7e573d6000803e3d6000fd5b5050505073e0a189c975e4928222978a74517442239a0b86ff73ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401610af3929190611d2f565b6020604051808303816000875af1158015610b12573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b369190611d90565b5050505050565b60095481565b600b6020528060005260406000206000915090505481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610be9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610be090611f26565b60405180910390fd5b806008819055507f5e079ef3d5af015de018fb8c1fad1bcd8cf66aab122dc1269db2fb4785b1811f81604051610c1f9190611a9b565b60405180910390a150565b60055481565b60045481565b60075481565b60065481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610cd0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc790611f26565b60405180910390fd5b81600381905550806004819055508082610cea9190611f46565b6005819055507f25eb0409f545cbd29198cbeb3fd730a538c8c4b74e0da846d0272b2c0fd7cd338282604051610d21929190611f9c565b60405180910390a15050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60035481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0490611f26565b60405180910390fd5b806006819055507fc54533fc3040b288366cad238f37db21b2d486ed132cb1fdfe6555a65801983f81604051610e439190611a9b565b60405180910390a150565b7f0000000000000000000000004072710ac0d71617f3e843bf90530b986c78467281565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f00576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef790611f26565b60405180910390fd5b73e0a189c975e4928222978a74517442239a0b86ff73ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610f91929190611d2f565b6020604051808303816000875af1158015610fb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fd49190611d90565b50565b600073e0a189c975e4928222978a74517442239a0b86ff73ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016110269190611b95565b602060405180830381865afa158015611043573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110679190611fda565b905090565b60006103e861107a846116b7565b836110859190611e20565b61108f9190611ea9565b905092915050565b600a5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611154576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114b90611f26565b60405180910390fd5b60008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161118f9190611b95565b602060405180830381865afa1580156111ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111d09190611fda565b90508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b815260040161120d929190611d2f565b6020604051808303816000875af115801561122c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112509190611d90565b507f0e266e8f38544aa1480d73762386eb10df55b1b8453d935762e891c44b69a1e6816040516112809190611a9b565b60405180910390a15050565b60006112986000611550565b905090565b600a81565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611330576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132790611f26565b60405180910390fd5b6103e88110611374576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136b90612053565b60405180910390fd5b80600b6000848152602001908152602001600020819055507f3c3675399ac391cbccfb69b9fc8345ff1d26c9b0954bebc1a7fb01dc832aa66c82826040516113bd929190611f9c565b60405180910390a15050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611457576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144e90611f26565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080600654611522611581565b61152c9190611e20565b90506000611538610fd7565b90508082106115475780611549565b815b9250505090565b60006103e861155e836116b7565b611566611514565b6115709190611e20565b61157a9190611ea9565b9050919050565b60004260075410156115a0576007544261159b9190611dec565b6115a3565b60005b905090565b60085481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461163c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163390611f26565b60405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fdc969223627a38b20c9a5c60ab6541958ffbaa8c3dea4bd5e5001a7b2646eb9f816040516116ac9190611b95565b60405180910390a150565b600080600b60006116c7856118df565b8152602001908152602001600020549050600081146116e657806116e9565b600a5b915050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461177f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177690611f26565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f6901da73a3480b0bbd7deb64f259ff29a76ce811c7a3e5cf495f0e1eb4fb4dfb816040516117ef9190611b95565b60405180910390a150565b611802610895565b565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611892576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188990611f26565b60405180910390fd5b426007819055507f3d22be56efb328ea7a1c3bc8216304c8b4276a7258674fe4516d98f2ad58dd6060405160405180910390a1565b73e0a189c975e4928222978a74517442239a0b86ff81565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361191d57600090506119ba565b7f0000000000000000000000004072710ac0d71617f3e843bf90530b986c78467273ffffffffffffffffffffffffffffffffffffffff1663f44c17aa836040518263ffffffff1660e01b81526004016119769190611b95565b602060405180830381865afa158015611993573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119b79190611fda565b90505b919050565b600081905092915050565b50565b60006119da6000836119bf565b91506119e5826119ca565b600082019050919050565b60006119fb826119cd565b9150819050919050565b600082825260208201905092915050565b7f4661696c757265206f6e20546f6b656e20507572636861736500000000000000600082015250565b6000611a4c601983611a05565b9150611a5782611a16565b602082019050919050565b60006020820190508181036000830152611a7b81611a3f565b9050919050565b6000819050919050565b611a9581611a82565b82525050565b6000602082019050611ab06000830184611a8c565b92915050565b600080fd5b611ac481611a82565b8114611acf57600080fd5b50565b600081359050611ae181611abb565b92915050565b600060208284031215611afd57611afc611ab6565b5b6000611b0b84828501611ad2565b91505092915050565b60008060408385031215611b2b57611b2a611ab6565b5b6000611b3985828601611ad2565b9250506020611b4a85828601611ad2565b9150509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611b7f82611b54565b9050919050565b611b8f81611b74565b82525050565b6000602082019050611baa6000830184611b86565b92915050565b6000819050919050565b6000611bd5611bd0611bcb84611b54565b611bb0565b611b54565b9050919050565b6000611be782611bba565b9050919050565b6000611bf982611bdc565b9050919050565b611c0981611bee565b82525050565b6000602082019050611c246000830184611c00565b92915050565b611c3381611b74565b8114611c3e57600080fd5b50565b600081359050611c5081611c2a565b92915050565b60008060408385031215611c6d57611c6c611ab6565b5b6000611c7b85828601611c41565b9250506020611c8c85828601611ad2565b9150509250929050565b600060208284031215611cac57611cab611ab6565b5b6000611cba84828501611c41565b91505092915050565b7f4d696e20446973747269627574696f6e204e6f74204d65740000000000000000600082015250565b6000611cf9601883611a05565b9150611d0482611cc3565b602082019050919050565b60006020820190508181036000830152611d2881611cec565b9050919050565b6000604082019050611d446000830185611b86565b611d516020830184611a8c565b9392505050565b60008115159050919050565b611d6d81611d58565b8114611d7857600080fd5b50565b600081519050611d8a81611d64565b92915050565b600060208284031215611da657611da5611ab6565b5b6000611db484828501611d7b565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611df782611a82565b9150611e0283611a82565b925082821015611e1557611e14611dbd565b5b828203905092915050565b6000611e2b82611a82565b9150611e3683611a82565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611e6f57611e6e611dbd565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611eb482611a82565b9150611ebf83611a82565b925082611ecf57611ece611e7a565b5b828204905092915050565b7f43616c6c6572206973206e6f74206f776e657200000000000000000000000000600082015250565b6000611f10601383611a05565b9150611f1b82611eda565b602082019050919050565b60006020820190508181036000830152611f3f81611f03565b9050919050565b6000611f5182611a82565b9150611f5c83611a82565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611f9157611f90611dbd565b5b828201905092915050565b6000604082019050611fb16000830185611a8c565b611fbe6020830184611a8c565b9392505050565b600081519050611fd481611abb565b92915050565b600060208284031215611ff057611fef611ab6565b5b6000611ffe84828501611fc5565b91505092915050565b7f426f756e747920546f6f20486967680000000000000000000000000000000000600082015250565b600061203d600f83611a05565b915061204882612007565b602082019050919050565b6000602082019050818103600083015261206c81612030565b905091905056fea26469706673582212206aee1976eddcf2cb2fde4042cc69969d24553b39dcc2d31082cff9fb9a7f02b064736f6c634300080e0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000019000000000000000000000000000000000000000000000000000000000000002580000000000000000000000004072710ac0d71617f3e843bf90530b986c784672
-----Decoded View---------------
Arg [0] : stakePercent (uint256): 400
Arg [1] : farmPercent (uint256): 600
Arg [2] : loyalKeyDB (address): 0x4072710Ac0d71617F3e843bf90530B986c784672
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000190
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000258
Arg [2] : 0000000000000000000000004072710ac0d71617f3e843bf90530b986c784672
Deployed Bytecode Sourcemap
4639:7185:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9127:6;4728:42;9138:18;;9164:21;9138:52;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9126:64;;;9209:1;9201:39;;;;;;;;;;;;:::i;:::-;;;;;;;;;9251:13;:11;:13::i;:::-;9115:161;4639:7185;;;;5511:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5735:65;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7422:163;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5150:23;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5089;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5358:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5270:40;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8354:291;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4966:19;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4992:20;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5060:22;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7260:154;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4805:43;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8883:94;;;;;;;;;;;;;:::i;:::-;;10839:114;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11229:163;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5545:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4266:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8657:214;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10961:102;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5618:51;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7984:358;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4040:132;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10637:194;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11071:150;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10488:141;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5427:46;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7733:112;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11400:219;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7857:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9017:63;;;;;;;;;;;;;:::i;:::-;;7597:128;;;;;;;;;;;;;:::i;:::-;;4697:73;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11627:194;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9307:1146;9394:12;9409:13;:11;:13::i;:::-;9394:28;;9466:19;;9455:7;:30;;9433:104;;;;;;;;;;;;:::i;:::-;;;;;;;;;9574:14;9591:36;9607:10;9619:7;9591:15;:36::i;:::-;9574:53;;9678:15;9665:10;:28;;;;9757:1;9748:6;:10;9744:129;;;4728:42;9775:21;;;9797:10;9809:6;9775:41;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9851:6;9841:7;:16;;;;:::i;:::-;9831:26;;9744:129;9975:7;9959:12;;:23;;;;;;;;;;;10014:6;9997:13;;:23;;;;;;;;;;;10085:22;10132:8;;10121:7;;10111;:17;;;;:::i;:::-;10110:30;;;;:::i;:::-;10085:55;;10151:22;10186:14;10176:7;:24;;;;:::i;:::-;10151:49;;10313:4;;;;;;;;;;;10300:26;;;10327:14;10300:42;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4728;10397:21;;;10419:5;;;;;;;;;;;10426:14;10397:44;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9339:1114;;;;9307:1146::o;5511:27::-;;;;:::o;5735:65::-;;;;;;;;;;;;;;;;;:::o;7422:163::-;3647:5;;;;;;;;;;3633:19;;:10;:19;;;3625:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;7523:7:::1;7501:19;:29;;;;7546:31;7569:7;7546:31;;;;;;:::i;:::-;;;;;;;;7422:163:::0;:::o;5150:23::-;;;;:::o;5089:::-;;;;:::o;5358:25::-;;;;:::o;5270:40::-;;;;:::o;8354:291::-;3647:5;;;;;;;;;;3633:19;;:10;:19;;;3625:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;8468:14:::1;8458:7;:24;;;;8504:15;8493:8;:26;;;;8558:15;8541:14;:32;;;;:::i;:::-;8530:8;:43;;;;8589:48;8605:14;8621:15;8589:48;;;;;;;:::i;:::-;;;;;;;;8354:291:::0;;:::o;4966:19::-;;;;;;;;;;;;;:::o;4992:20::-;;;;;;;;;;;;;:::o;5060:22::-;;;;:::o;7260:154::-;3647:5;;;;;;;;;;3633:19;;:10;:19;;;3625:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;7352:10:::1;7336:13;:26;;;;7378:28;7395:10;7378:28;;;;;;:::i;:::-;;;;;;;;7260:154:::0;:::o;4805:43::-;;;:::o;8883:94::-;3647:5;;;;;;;;;;3633:19;;:10;:19;;;3625:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;4728:42:::1;8934:20;;;8955:4;;;;;;;;;;;4908:17;8934:35;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8883:94::o:0;10839:114::-;10881:7;4728:42;10908:22;;;10939:4;10908:37;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10901:44;;10839:114;:::o;11229:163::-;11306:7;5722:4;11345:22;11362:4;11345:16;:22::i;:::-;11335:7;:32;;;;:::i;:::-;11333:51;;;;:::i;:::-;11326:58;;11229:163;;;;:::o;5545:28::-;;;;:::o;4266:83::-;4309:7;4336:5;;;;;;;;;;;4329:12;;4266:83;:::o;8657:214::-;3647:5;;;;;;;;;;3633:19;;:10;:19;;;3625:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;8725:11:::1;8746:5;8739:23;;;8771:4;8739:38;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8725:52;;8795:5;8788:22;;;8811:10;8823:3;8788:39;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8843:20;8859:3;8843:20;;;;;;:::i;:::-;;;;;;;;8714:157;8657:214:::0;:::o;10961:102::-;11003:7;11030:25;11052:1;11030:13;:25::i;:::-;11023:32;;10961:102;:::o;5618:51::-;5667:2;5618:51;:::o;7984:358::-;3647:5;;;;;;;;;;3633:19;;:10;:19;;;3625:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;5722:4:::1;8125:16;:31;8103:96;;;;;;;;;;;;:::i;:::-;;;;;;;;;8254:16;8210:27;:41;8238:12;8210:41;;;;;;;;;;;:60;;;;8286:48;8303:12;8317:16;8286:48;;;;;;;:::i;:::-;;;;;;;;7984:358:::0;;:::o;4040:132::-;3647:5;;;;;;;;;;3633:19;;:10;:19;;;3625:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;4128:8:::1;4112:25;;4121:5;::::0;::::1;;;;;;;;4112:25;;;;;;;;;;;;4156:8;4148:5;::::0;:16:::1;;;;;;;;;;;;;;;;;;4040:132:::0;:::o;10637:194::-;10681:7;10701:12;10730:13;;10716:11;:9;:11::i;:::-;:27;;;;:::i;:::-;10701:42;;10754:8;10765:11;:9;:11::i;:::-;10754:22;;10804:3;10794:7;:13;:29;;10820:3;10794:29;;;10810:7;10794:29;10787:36;;;;10637:194;:::o;11071:150::-;11129:7;5722:4;11174:22;11191:4;11174:16;:22::i;:::-;11158:13;:11;:13::i;:::-;:38;;;;:::i;:::-;11156:57;;;;:::i;:::-;11149:64;;11071:150;;;:::o;10488:141::-;10530:7;10571:15;10557:10;;:29;;:64;;10611:10;;10593:15;:28;;;;:::i;:::-;10557:64;;;10589:1;10557:64;10550:71;;10488:141;:::o;5427:46::-;;;;:::o;7733:112::-;3647:5;;;;;;;;;;3633:19;;:10;:19;;;3625:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;7802:5:::1;7795:4;;:12;;;;;;;;;;;;;;;;;;7823:14;7831:5;7823:14;;;;;;:::i;:::-;;;;;;;;7733:112:::0;:::o;11400:219::-;11461:7;11481:12;11496:27;:50;11524:21;11540:4;11524:15;:21::i;:::-;11496:50;;;;;;;;;;;;11481:65;;11575:1;11564:7;:12;:47;;11604:7;11564:47;;;5667:2;11564:47;11557:54;;;11400:219;;;:::o;7857:119::-;3647:5;;;;;;;;;;3633:19;;:10;:19;;;3625:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;7929:6:::1;7921:5;;:14;;;;;;;;;;;;;;;;;;7951:17;7961:6;7951:17;;;;;;:::i;:::-;;;;;;;;7857:119:::0;:::o;9017:63::-;9059:13;:11;:13::i;:::-;9017:63::o;7597:128::-;3647:5;;;;;;;;;;3633:19;;:10;:19;;;3625:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;7668:15:::1;7655:10;:28;;;;7699:18;;;;;;;;;;7597:128::o:0;4697:73::-;4728:42;4697:73;:::o;11627:194::-;11687:7;11727:1;11711:18;;:4;:18;;;11707:59;;11753:1;11746:8;;;;11707:59;11783:8;:24;;;11808:4;11783:30;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11776:37;;11627:194;;;;:::o;7:147:1:-;108:11;145:3;130:18;;7:147;;;;:::o;160:114::-;;:::o;280:398::-;439:3;460:83;541:1;536:3;460:83;:::i;:::-;453:90;;552:93;641:3;552:93;:::i;:::-;670:1;665:3;661:11;654:18;;280:398;;;:::o;684:379::-;868:3;890:147;1033:3;890:147;:::i;:::-;883:154;;1054:3;1047:10;;684:379;;;:::o;1069:169::-;1153:11;1187:6;1182:3;1175:19;1227:4;1222:3;1218:14;1203:29;;1069:169;;;;:::o;1244:175::-;1384:27;1380:1;1372:6;1368:14;1361:51;1244:175;:::o;1425:366::-;1567:3;1588:67;1652:2;1647:3;1588:67;:::i;:::-;1581:74;;1664:93;1753:3;1664:93;:::i;:::-;1782:2;1777:3;1773:12;1766:19;;1425:366;;;:::o;1797:419::-;1963:4;2001:2;1990:9;1986:18;1978:26;;2050:9;2044:4;2040:20;2036:1;2025:9;2021:17;2014:47;2078:131;2204:4;2078:131;:::i;:::-;2070:139;;1797:419;;;:::o;2222:77::-;2259:7;2288:5;2277:16;;2222:77;;;:::o;2305:118::-;2392:24;2410:5;2392:24;:::i;:::-;2387:3;2380:37;2305:118;;:::o;2429:222::-;2522:4;2560:2;2549:9;2545:18;2537:26;;2573:71;2641:1;2630:9;2626:17;2617:6;2573:71;:::i;:::-;2429:222;;;;:::o;2738:117::-;2847:1;2844;2837:12;2984:122;3057:24;3075:5;3057:24;:::i;:::-;3050:5;3047:35;3037:63;;3096:1;3093;3086:12;3037:63;2984:122;:::o;3112:139::-;3158:5;3196:6;3183:20;3174:29;;3212:33;3239:5;3212:33;:::i;:::-;3112:139;;;;:::o;3257:329::-;3316:6;3365:2;3353:9;3344:7;3340:23;3336:32;3333:119;;;3371:79;;:::i;:::-;3333:119;3491:1;3516:53;3561:7;3552:6;3541:9;3537:22;3516:53;:::i;:::-;3506:63;;3462:117;3257:329;;;;:::o;3592:474::-;3660:6;3668;3717:2;3705:9;3696:7;3692:23;3688:32;3685:119;;;3723:79;;:::i;:::-;3685:119;3843:1;3868:53;3913:7;3904:6;3893:9;3889:22;3868:53;:::i;:::-;3858:63;;3814:117;3970:2;3996:53;4041:7;4032:6;4021:9;4017:22;3996:53;:::i;:::-;3986:63;;3941:118;3592:474;;;;;:::o;4072:126::-;4109:7;4149:42;4142:5;4138:54;4127:65;;4072:126;;;:::o;4204:96::-;4241:7;4270:24;4288:5;4270:24;:::i;:::-;4259:35;;4204:96;;;:::o;4306:118::-;4393:24;4411:5;4393:24;:::i;:::-;4388:3;4381:37;4306:118;;:::o;4430:222::-;4523:4;4561:2;4550:9;4546:18;4538:26;;4574:71;4642:1;4631:9;4627:17;4618:6;4574:71;:::i;:::-;4430:222;;;;:::o;4658:60::-;4686:3;4707:5;4700:12;;4658:60;;;:::o;4724:142::-;4774:9;4807:53;4825:34;4834:24;4852:5;4834:24;:::i;:::-;4825:34;:::i;:::-;4807:53;:::i;:::-;4794:66;;4724:142;;;:::o;4872:126::-;4922:9;4955:37;4986:5;4955:37;:::i;:::-;4942:50;;4872:126;;;:::o;5004:151::-;5079:9;5112:37;5143:5;5112:37;:::i;:::-;5099:50;;5004:151;;;:::o;5161:181::-;5273:62;5329:5;5273:62;:::i;:::-;5268:3;5261:75;5161:181;;:::o;5348:272::-;5466:4;5504:2;5493:9;5489:18;5481:26;;5517:96;5610:1;5599:9;5595:17;5586:6;5517:96;:::i;:::-;5348:272;;;;:::o;5626:122::-;5699:24;5717:5;5699:24;:::i;:::-;5692:5;5689:35;5679:63;;5738:1;5735;5728:12;5679:63;5626:122;:::o;5754:139::-;5800:5;5838:6;5825:20;5816:29;;5854:33;5881:5;5854:33;:::i;:::-;5754:139;;;;:::o;5899:474::-;5967:6;5975;6024:2;6012:9;6003:7;5999:23;5995:32;5992:119;;;6030:79;;:::i;:::-;5992:119;6150:1;6175:53;6220:7;6211:6;6200:9;6196:22;6175:53;:::i;:::-;6165:63;;6121:117;6277:2;6303:53;6348:7;6339:6;6328:9;6324:22;6303:53;:::i;:::-;6293:63;;6248:118;5899:474;;;;;:::o;6379:329::-;6438:6;6487:2;6475:9;6466:7;6462:23;6458:32;6455:119;;;6493:79;;:::i;:::-;6455:119;6613:1;6638:53;6683:7;6674:6;6663:9;6659:22;6638:53;:::i;:::-;6628:63;;6584:117;6379:329;;;;:::o;6714:174::-;6854:26;6850:1;6842:6;6838:14;6831:50;6714:174;:::o;6894:366::-;7036:3;7057:67;7121:2;7116:3;7057:67;:::i;:::-;7050:74;;7133:93;7222:3;7133:93;:::i;:::-;7251:2;7246:3;7242:12;7235:19;;6894:366;;;:::o;7266:419::-;7432:4;7470:2;7459:9;7455:18;7447:26;;7519:9;7513:4;7509:20;7505:1;7494:9;7490:17;7483:47;7547:131;7673:4;7547:131;:::i;:::-;7539:139;;7266:419;;;:::o;7691:332::-;7812:4;7850:2;7839:9;7835:18;7827:26;;7863:71;7931:1;7920:9;7916:17;7907:6;7863:71;:::i;:::-;7944:72;8012:2;8001:9;7997:18;7988:6;7944:72;:::i;:::-;7691:332;;;;;:::o;8029:90::-;8063:7;8106:5;8099:13;8092:21;8081:32;;8029:90;;;:::o;8125:116::-;8195:21;8210:5;8195:21;:::i;:::-;8188:5;8185:32;8175:60;;8231:1;8228;8221:12;8175:60;8125:116;:::o;8247:137::-;8301:5;8332:6;8326:13;8317:22;;8348:30;8372:5;8348:30;:::i;:::-;8247:137;;;;:::o;8390:345::-;8457:6;8506:2;8494:9;8485:7;8481:23;8477:32;8474:119;;;8512:79;;:::i;:::-;8474:119;8632:1;8657:61;8710:7;8701:6;8690:9;8686:22;8657:61;:::i;:::-;8647:71;;8603:125;8390:345;;;;:::o;8741:180::-;8789:77;8786:1;8779:88;8886:4;8883:1;8876:15;8910:4;8907:1;8900:15;8927:191;8967:4;8987:20;9005:1;8987:20;:::i;:::-;8982:25;;9021:20;9039:1;9021:20;:::i;:::-;9016:25;;9060:1;9057;9054:8;9051:34;;;9065:18;;:::i;:::-;9051:34;9110:1;9107;9103:9;9095:17;;8927:191;;;;:::o;9124:348::-;9164:7;9187:20;9205:1;9187:20;:::i;:::-;9182:25;;9221:20;9239:1;9221:20;:::i;:::-;9216:25;;9409:1;9341:66;9337:74;9334:1;9331:81;9326:1;9319:9;9312:17;9308:105;9305:131;;;9416:18;;:::i;:::-;9305:131;9464:1;9461;9457:9;9446:20;;9124:348;;;;:::o;9478:180::-;9526:77;9523:1;9516:88;9623:4;9620:1;9613:15;9647:4;9644:1;9637:15;9664:185;9704:1;9721:20;9739:1;9721:20;:::i;:::-;9716:25;;9755:20;9773:1;9755:20;:::i;:::-;9750:25;;9794:1;9784:35;;9799:18;;:::i;:::-;9784:35;9841:1;9838;9834:9;9829:14;;9664:185;;;;:::o;9855:169::-;9995:21;9991:1;9983:6;9979:14;9972:45;9855:169;:::o;10030:366::-;10172:3;10193:67;10257:2;10252:3;10193:67;:::i;:::-;10186:74;;10269:93;10358:3;10269:93;:::i;:::-;10387:2;10382:3;10378:12;10371:19;;10030:366;;;:::o;10402:419::-;10568:4;10606:2;10595:9;10591:18;10583:26;;10655:9;10649:4;10645:20;10641:1;10630:9;10626:17;10619:47;10683:131;10809:4;10683:131;:::i;:::-;10675:139;;10402:419;;;:::o;10827:305::-;10867:3;10886:20;10904:1;10886:20;:::i;:::-;10881:25;;10920:20;10938:1;10920:20;:::i;:::-;10915:25;;11074:1;11006:66;11002:74;10999:1;10996:81;10993:107;;;11080:18;;:::i;:::-;10993:107;11124:1;11121;11117:9;11110:16;;10827:305;;;;:::o;11138:332::-;11259:4;11297:2;11286:9;11282:18;11274:26;;11310:71;11378:1;11367:9;11363:17;11354:6;11310:71;:::i;:::-;11391:72;11459:2;11448:9;11444:18;11435:6;11391:72;:::i;:::-;11138:332;;;;;:::o;11476:143::-;11533:5;11564:6;11558:13;11549:22;;11580:33;11607:5;11580:33;:::i;:::-;11476:143;;;;:::o;11625:351::-;11695:6;11744:2;11732:9;11723:7;11719:23;11715:32;11712:119;;;11750:79;;:::i;:::-;11712:119;11870:1;11895:64;11951:7;11942:6;11931:9;11927:22;11895:64;:::i;:::-;11885:74;;11841:128;11625:351;;;;:::o;11982:165::-;12122:17;12118:1;12110:6;12106:14;12099:41;11982:165;:::o;12153:366::-;12295:3;12316:67;12380:2;12375:3;12316:67;:::i;:::-;12309:74;;12392:93;12481:3;12392:93;:::i;:::-;12510:2;12505:3;12501:12;12494:19;;12153:366;;;:::o;12525:419::-;12691:4;12729:2;12718:9;12714:18;12706:26;;12778:9;12772:4;12768:20;12764:1;12753:9;12749:17;12742:47;12806:131;12932:4;12806:131;:::i;:::-;12798:139;;12525:419;;;:::o
Swarm Source
ipfs://6aee1976eddcf2cb2fde4042cc69969d24553b39dcc2d31082cff9fb9a7f02b0
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
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.