More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 817 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Pause | 11255753 | 1562 days ago | IN | 0 ETH | 0.0005925 | ||||
Withdraw Ether | 11255750 | 1562 days ago | IN | 0 ETH | 0.00078005 | ||||
Withdraw Token | 11255735 | 1562 days ago | IN | 0 ETH | 0.00131823 | ||||
Transfer | 11246512 | 1564 days ago | IN | 0.1 ETH | 0.00400852 | ||||
Transfer | 11240958 | 1564 days ago | IN | 0.1 ETH | 0.00133277 | ||||
Transfer | 11229320 | 1566 days ago | IN | 0.1094 ETH | 0.00245097 | ||||
Withdraw Ether | 11227399 | 1567 days ago | IN | 0 ETH | 0.00196665 | ||||
Transfer | 11226900 | 1567 days ago | IN | 0.2 ETH | 0.00278129 | ||||
Transfer | 11226891 | 1567 days ago | IN | 0.2 ETH | 0.0007875 | ||||
Transfer | 11226869 | 1567 days ago | IN | 0.2 ETH | 0.0009575 | ||||
Transfer | 11224462 | 1567 days ago | IN | 0.1 ETH | 0.00535118 | ||||
Transfer | 11224432 | 1567 days ago | IN | 0.1 ETH | 0.00528512 | ||||
Transfer | 11223886 | 1567 days ago | IN | 1.058 ETH | 0.00179033 | ||||
Transfer | 11223638 | 1567 days ago | IN | 0.49 ETH | 0.00350799 | ||||
Transfer | 11223498 | 1567 days ago | IN | 0.1 ETH | 0.00185639 | ||||
Transfer | 11223347 | 1567 days ago | IN | 0.3 ETH | 0.00153192 | ||||
Transfer | 11223189 | 1567 days ago | IN | 0.1 ETH | 0.00264916 | ||||
Transfer | 11222717 | 1567 days ago | IN | 0.1098 ETH | 0.00174128 | ||||
Transfer | 11222697 | 1567 days ago | IN | 0.1 ETH | 0.00218671 | ||||
Transfer | 11222667 | 1567 days ago | IN | 1.0098 ETH | 0.00225278 | ||||
Transfer | 11222536 | 1567 days ago | IN | 1 ETH | 0.00284735 | ||||
Transfer | 11222328 | 1567 days ago | IN | 0.5 ETH | 0.0021735 | ||||
Transfer | 11222233 | 1567 days ago | IN | 0.2 ETH | 0.00184851 | ||||
Transfer | 11222201 | 1567 days ago | IN | 0.2 ETH | 0.0007775 | ||||
Transfer | 11222158 | 1567 days ago | IN | 0.1 ETH | 0.00174128 |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
FilescoinPresale
Compiler Version
v0.5.17+commit.d19bba13
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-11-05 */ pragma solidity ^0.5.5; // File: openzeppelin-solidity/contracts/token/ERC20/ERC20Basic.sol /** * @title ERC20Basic * @dev Simpler version of ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/179 */ contract ERC20Basic { function totalSupply() public view returns (uint256); function balanceOf(address who) public view returns (uint256); function transfer(address to, uint256 value) public returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); } /** * @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. * * _Available since v2.4.0._ */ 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. * * _Available since v2.4.0._ */ function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 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. * * _Available since v2.4.0._ */ function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } // File: openzeppelin-solidity/contracts/token/ERC20/ERC20.sol /** * @title ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ contract ERC20 is ERC20Basic { function allowance(address owner, address spender) public view returns (uint256); function transferFrom(address from, address to, uint256 value) public returns (bool); function approve(address spender, uint256 value) public returns (bool); function name() public view returns (string memory); function symbol() public view returns (string memory); function decimals() public view returns (uint8); event Approval(address indexed owner, address indexed spender, uint256 value); } // File: openzeppelin-solidity/contracts/ownership/Ownable.sol /** * @title Ownable * @dev The Ownable contract has an owner address, and provides basic authorization control * functions, this simplifies the implementation of "user permissions". */ contract Ownable { address public owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev The Ownable constructor sets the original `owner` of the contract to the sender * account. */ constructor() public { owner = msg.sender; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(msg.sender == owner); _; } /** * @dev Allows the current owner to transfer control of the contract to a newOwner. * @param newOwner The address to transfer ownership to. */ function transferOwnership(address newOwner) public onlyOwner { require(newOwner != address(0)); emit OwnershipTransferred(owner, newOwner); owner = newOwner; } } // File: openzeppelin-solidity/contracts/lifecycle/Pausable.sol /** * @title Pausable * @dev Base contract which allows children to implement an emergency stop mechanism. */ contract Pausable is Ownable { event Pause(); event Unpause(); bool public paused = false; /** * @dev Modifier to make a function callable only when the contract is not paused. */ modifier whenNotPaused() { require(!paused); _; } /** * @dev Modifier to make a function callable only when the contract is paused. */ modifier whenPaused() { require(paused); _; } /** * @dev called by the owner to pause, triggers stopped state */ function pause() onlyOwner whenNotPaused public { paused = true; emit Pause(); } /** * @dev called by the owner to unpause, returns to normal state */ function unpause() onlyOwner whenPaused public { paused = false; emit Unpause(); } } contract FilescoinPresale is Pausable { using SafeMath for uint256; enum PreSaleStage { One, Two, Three, Finished } ERC20 public token; uint256 public unit = 0; uint256 public PreSaleMinEther = 0.1 ether; uint256 public PreSaleMaxEther = 20 ether; uint256 public PreSaleStartTime = 1604750400; // 2020-11-07 12:00:00 UTC PreSaleStage public stage = PreSaleStage.One; uint256 public constant StageOneLimit = 1000 ether; uint256 public constant StageOneRatio = 3000; uint256 public StageOneCurrentSale = 0; uint256 public constant StageTwoLimit = 1000 ether; uint256 public constant StageTwoRatio = 2000; uint256 public StageTwoCurrentSale = 0; uint256 public constant StageThreeLimit = 1000 ether; uint256 public constant StageThreeRatio = 1000; uint256 public StageThreeCurrentSale = 0; constructor() public { address tokenAddress = 0xdf7795bF05e17c5c38E666d48b5fAC014DdFFF82; token = ERC20(tokenAddress); uint256 decimals = token.decimals(); unit = 1 ether / (10 ** decimals ); } function() payable external{ require(block.timestamp >= PreSaleStartTime,"Pre-sale has not started yet"); require(msg.value >= PreSaleMinEther,"Pre-sale value must be not less than 0.1 ether "); require(msg.value <= PreSaleMaxEther,"Pre-sale value must be no more than 20 ether "); preSale(); } function preSale() internal whenNotPaused { require(stage != PreSaleStage.Finished,"Pre-sale is over"); if(stage == PreSaleStage.One) { preSaleStageOne(msg.value); }else if(stage == PreSaleStage.Two){ preSaleStageTwo(msg.value); }else { preSaleStageThree(msg.value); } } function preSaleStageOne(uint256 value) internal { uint256 stageOneLeft = StageOneLimit.sub(StageOneCurrentSale); uint256 preSaleValue = stageOneLeft < value ? stageOneLeft : value; StageOneCurrentSale += preSaleValue; if(StageOneCurrentSale == StageOneLimit) { stage = PreSaleStage.Two; } uint256 sendToken = preSaleValue.div(unit).mul(StageOneRatio); require(token.transfer(msg.sender,sendToken)); if(value > preSaleValue) { preSaleStageTwo(value.sub(preSaleValue)); } } function preSaleStageTwo(uint256 value) internal { uint256 stageTwoLeft = StageTwoLimit.sub(StageTwoCurrentSale); uint256 preSaleValue = stageTwoLeft < value ? stageTwoLeft : value; StageTwoCurrentSale += preSaleValue; if(StageTwoCurrentSale == StageTwoLimit) { stage = PreSaleStage.Three; } uint256 sendToken = preSaleValue.div(unit).mul(StageTwoRatio); require(token.transfer(msg.sender,sendToken)); if(value > preSaleValue) { preSaleStageThree(value.sub(preSaleValue)); } } function preSaleStageThree(uint256 value) internal { uint256 stageThreeLeft = StageThreeLimit.sub(StageThreeCurrentSale); uint256 preSaleValue = stageThreeLeft < value ? stageThreeLeft : value; StageThreeCurrentSale += preSaleValue; if(StageThreeCurrentSale == StageThreeLimit) { stage = PreSaleStage.Finished; } uint256 sendToken = preSaleValue.div(unit).mul(StageThreeRatio); require(token.transfer(msg.sender,sendToken)); if(value > preSaleValue) { msg.sender.transfer(value.sub(preSaleValue)); } } function withdrawToken(address to,uint value) onlyOwner whenNotPaused external { uint256 balance = token.balanceOf(address(this)); require(balance >= value,"Token Balance is not enough"); require(token.transfer(to,value)); } function withdrawEther(address payable to,uint value) onlyOwner whenNotPaused external returns(bool) { require(to != address(0), "Receiver address must not be zero"); to.transfer(value); return true; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"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":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"constant":true,"inputs":[],"name":"PreSaleMaxEther","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PreSaleMinEther","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PreSaleStartTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"StageOneCurrentSale","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"StageOneLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"StageOneRatio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"StageThreeCurrentSale","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"StageThreeLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"StageThreeRatio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"StageTwoCurrentSale","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"StageTwoLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"StageTwoRatio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stage","outputs":[{"internalType":"enum FilescoinPresale.PreSaleStage","name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"internalType":"contract ERC20","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"unit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address payable","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"withdrawEther","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"withdrawToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040526000805460ff60a01b19168155600281905567016345785d8a00006003556801158e460913d00000600455635fa68c406005556006805460ff191690556007819055600881905560095534801561005a57600080fd5b50600080546001600160a01b0319908116331782556001805490911673df7795bf05e17c5c38e666d48b5fac014ddfff82908117918290556040805163313ce56760e01b815290519193926001600160a01b03169163313ce56791600480820192602092909190829003018186803b1580156100d557600080fd5b505afa1580156100e9573d6000803e3d6000fd5b505050506040513d60208110156100ff57600080fd5b505160ff169050600a81900a670de0b6b3a76400008161011b57fe5b046002555050610fc0806101306000396000f3fe6080604052600436106101355760003560e01c80638da5cb5b116100ab578063c040e6b81161006f578063c040e6b8146103c8578063d755a6f514610401578063f2fde38b14610416578063f62e6cb014610449578063f7f1fae11461045e578063fc0c546a1461047357610135565b80638da5cb5b14610334578063907af6c0146103655780639e281a981461037a578063b7e1e5fa146103b3578063b9b6307d1461023f57610135565b8063522f6815116100fd578063522f6815146102935780635c975abb146102e0578063647db9f2146102f5578063779607001461030a57806377fbd48b1461023f5780638456cb591461031f57610135565b8063314ed60d146102185780633e6a61141461023f5780633f4ba83a146102545780634adff02a146102695780634f2eebc31461027e575b60055442101561018c576040805162461bcd60e51b815260206004820152601c60248201527f5072652d73616c6520686173206e6f7420737461727465642079657400000000604482015290519081900360640190fd5b6003543410156101cd5760405162461bcd60e51b815260040180806020018281038252602f815260200180610f3c602f913960400191505060405180910390fd5b60045434111561020e5760405162461bcd60e51b815260040180806020018281038252602d815260200180610eee602d913960400191505060405180910390fd5b610216610488565b005b34801561022457600080fd5b5061022d61054c565b60408051918252519081900360200190f35b34801561024b57600080fd5b5061022d610552565b34801561026057600080fd5b5061021661055f565b34801561027557600080fd5b5061022d6105c2565b34801561028a57600080fd5b5061022d6105c8565b34801561029f57600080fd5b506102cc600480360360408110156102b657600080fd5b506001600160a01b0381351690602001356105ce565b604080519115158252519081900360200190f35b3480156102ec57600080fd5b506102cc610684565b34801561030157600080fd5b5061022d610694565b34801561031657600080fd5b5061022d61069a565b34801561032b57600080fd5b506102166106a0565b34801561034057600080fd5b5061034961070a565b604080516001600160a01b039092168252519081900360200190f35b34801561037157600080fd5b5061022d610719565b34801561038657600080fd5b506102166004803603604081101561039d57600080fd5b506001600160a01b03813516906020013561071f565b3480156103bf57600080fd5b5061022d6108ab565b3480156103d457600080fd5b506103dd6108b1565b604051808260038111156103ed57fe5b60ff16815260200191505060405180910390f35b34801561040d57600080fd5b5061022d6108ba565b34801561042257600080fd5b506102166004803603602081101561043957600080fd5b50356001600160a01b03166108c0565b34801561045557600080fd5b5061022d610945565b34801561046a57600080fd5b5061022d61094b565b34801561047f57600080fd5b50610349610951565b600054600160a01b900460ff161561049f57600080fd5b600360065460ff1660038111156104b257fe5b14156104f8576040805162461bcd60e51b815260206004820152601060248201526f28393296b9b0b6329034b99037bb32b960811b604482015290519081900360640190fd5b600060065460ff16600381111561050b57fe5b141561051f5761051a34610960565b61054a565b600160065460ff16600381111561053257fe5b14156105415761051a34610a99565b61054a34610bbb565b565b6107d081565b683635c9adc5dea0000081565b6000546001600160a01b0316331461057657600080fd5b600054600160a01b900460ff1661058c57600080fd5b6000805460ff60a01b191681556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b339190a1565b60045481565b60055481565b600080546001600160a01b031633146105e657600080fd5b600054600160a01b900460ff16156105fd57600080fd5b6001600160a01b0383166106425760405162461bcd60e51b8152600401808060200182810382526021815260200180610f1b6021913960400191505060405180910390fd5b6040516001600160a01b0384169083156108fc029084906000818181858888f19350505050158015610678573d6000803e3d6000fd5b50600190505b92915050565b600054600160a01b900460ff1681565b60035481565b60085481565b6000546001600160a01b031633146106b757600080fd5b600054600160a01b900460ff16156106ce57600080fd5b6000805460ff60a01b1916600160a01b1781556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff6259190a1565b6000546001600160a01b031681565b60025481565b6000546001600160a01b0316331461073657600080fd5b600054600160a01b900460ff161561074d57600080fd5b600154604080516370a0823160e01b815230600482015290516000926001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561079857600080fd5b505afa1580156107ac573d6000803e3d6000fd5b505050506040513d60208110156107c257600080fd5b505190508181101561081b576040805162461bcd60e51b815260206004820152601b60248201527f546f6b656e2042616c616e6365206973206e6f7420656e6f7567680000000000604482015290519081900360640190fd5b6001546040805163a9059cbb60e01b81526001600160a01b038681166004830152602482018690529151919092169163a9059cbb9160448083019260209291908290030181600087803b15801561087157600080fd5b505af1158015610885573d6000803e3d6000fd5b505050506040513d602081101561089b57600080fd5b50516108a657600080fd5b505050565b610bb881565b60065460ff1681565b60095481565b6000546001600160a01b031633146108d757600080fd5b6001600160a01b0381166108ea57600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6103e881565b60075481565b6001546001600160a01b031681565b6000610980600754683635c9adc5dea00000610d0d90919063ffffffff16565b905060008282106109915782610993565b815b60078054820190819055909150683635c9adc5dea0000014156109be576006805460ff191660011790555b60006109e7610bb86109db60025485610d5690919063ffffffff16565b9063ffffffff610d9816565b6001546040805163a9059cbb60e01b81523360048201526024810184905290519293506001600160a01b039091169163a9059cbb916044808201926020929091908290030181600087803b158015610a3e57600080fd5b505af1158015610a52573d6000803e3d6000fd5b505050506040513d6020811015610a6857600080fd5b5051610a7357600080fd5b81841115610a9357610a93610a8e858463ffffffff610d0d16565b610a99565b50505050565b6000610ab9600854683635c9adc5dea00000610d0d90919063ffffffff16565b90506000828210610aca5782610acc565b815b60088054820190819055909150683635c9adc5dea000001415610af7576006805460ff191660021790555b6000610b146107d06109db60025485610d5690919063ffffffff16565b6001546040805163a9059cbb60e01b81523360048201526024810184905290519293506001600160a01b039091169163a9059cbb916044808201926020929091908290030181600087803b158015610b6b57600080fd5b505af1158015610b7f573d6000803e3d6000fd5b505050506040513d6020811015610b9557600080fd5b5051610ba057600080fd5b81841115610a9357610a93610bbb858463ffffffff610d0d16565b6000610bdb600954683635c9adc5dea00000610d0d90919063ffffffff16565b90506000828210610bec5782610bee565b815b60098054820190819055909150683635c9adc5dea000001415610c19576006805460ff191660031790555b6000610c366103e86109db60025485610d5690919063ffffffff16565b6001546040805163a9059cbb60e01b81523360048201526024810184905290519293506001600160a01b039091169163a9059cbb916044808201926020929091908290030181600087803b158015610c8d57600080fd5b505af1158015610ca1573d6000803e3d6000fd5b505050506040513d6020811015610cb757600080fd5b5051610cc257600080fd5b81841115610a9357336108fc610cde868563ffffffff610d0d16565b6040518115909202916000818181858888f19350505050158015610d06573d6000803e3d6000fd5b5050505050565b6000610d4f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610df1565b9392505050565b6000610d4f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610e88565b600082610da75750600061067e565b82820282848281610db457fe5b0414610d4f5760405162461bcd60e51b8152600401808060200182810382526021815260200180610f6b6021913960400191505060405180910390fd5b60008184841115610e805760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610e45578181015183820152602001610e2d565b50505050905090810190601f168015610e725780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610ed75760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610e45578181015183820152602001610e2d565b506000838581610ee357fe5b049594505050505056fe5072652d73616c652076616c7565206d757374206265206e6f206d6f7265207468616e2032302065746865722052656365697665722061646472657373206d757374206e6f74206265207a65726f5072652d73616c652076616c7565206d757374206265206e6f74206c657373207468616e20302e3120657468657220536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a72315820e931dd7d0494f41b398e92381939af19c2a80afdfb8cea50ef368bdb1bc070fc64736f6c63430005110032
Deployed Bytecode
0x6080604052600436106101355760003560e01c80638da5cb5b116100ab578063c040e6b81161006f578063c040e6b8146103c8578063d755a6f514610401578063f2fde38b14610416578063f62e6cb014610449578063f7f1fae11461045e578063fc0c546a1461047357610135565b80638da5cb5b14610334578063907af6c0146103655780639e281a981461037a578063b7e1e5fa146103b3578063b9b6307d1461023f57610135565b8063522f6815116100fd578063522f6815146102935780635c975abb146102e0578063647db9f2146102f5578063779607001461030a57806377fbd48b1461023f5780638456cb591461031f57610135565b8063314ed60d146102185780633e6a61141461023f5780633f4ba83a146102545780634adff02a146102695780634f2eebc31461027e575b60055442101561018c576040805162461bcd60e51b815260206004820152601c60248201527f5072652d73616c6520686173206e6f7420737461727465642079657400000000604482015290519081900360640190fd5b6003543410156101cd5760405162461bcd60e51b815260040180806020018281038252602f815260200180610f3c602f913960400191505060405180910390fd5b60045434111561020e5760405162461bcd60e51b815260040180806020018281038252602d815260200180610eee602d913960400191505060405180910390fd5b610216610488565b005b34801561022457600080fd5b5061022d61054c565b60408051918252519081900360200190f35b34801561024b57600080fd5b5061022d610552565b34801561026057600080fd5b5061021661055f565b34801561027557600080fd5b5061022d6105c2565b34801561028a57600080fd5b5061022d6105c8565b34801561029f57600080fd5b506102cc600480360360408110156102b657600080fd5b506001600160a01b0381351690602001356105ce565b604080519115158252519081900360200190f35b3480156102ec57600080fd5b506102cc610684565b34801561030157600080fd5b5061022d610694565b34801561031657600080fd5b5061022d61069a565b34801561032b57600080fd5b506102166106a0565b34801561034057600080fd5b5061034961070a565b604080516001600160a01b039092168252519081900360200190f35b34801561037157600080fd5b5061022d610719565b34801561038657600080fd5b506102166004803603604081101561039d57600080fd5b506001600160a01b03813516906020013561071f565b3480156103bf57600080fd5b5061022d6108ab565b3480156103d457600080fd5b506103dd6108b1565b604051808260038111156103ed57fe5b60ff16815260200191505060405180910390f35b34801561040d57600080fd5b5061022d6108ba565b34801561042257600080fd5b506102166004803603602081101561043957600080fd5b50356001600160a01b03166108c0565b34801561045557600080fd5b5061022d610945565b34801561046a57600080fd5b5061022d61094b565b34801561047f57600080fd5b50610349610951565b600054600160a01b900460ff161561049f57600080fd5b600360065460ff1660038111156104b257fe5b14156104f8576040805162461bcd60e51b815260206004820152601060248201526f28393296b9b0b6329034b99037bb32b960811b604482015290519081900360640190fd5b600060065460ff16600381111561050b57fe5b141561051f5761051a34610960565b61054a565b600160065460ff16600381111561053257fe5b14156105415761051a34610a99565b61054a34610bbb565b565b6107d081565b683635c9adc5dea0000081565b6000546001600160a01b0316331461057657600080fd5b600054600160a01b900460ff1661058c57600080fd5b6000805460ff60a01b191681556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b339190a1565b60045481565b60055481565b600080546001600160a01b031633146105e657600080fd5b600054600160a01b900460ff16156105fd57600080fd5b6001600160a01b0383166106425760405162461bcd60e51b8152600401808060200182810382526021815260200180610f1b6021913960400191505060405180910390fd5b6040516001600160a01b0384169083156108fc029084906000818181858888f19350505050158015610678573d6000803e3d6000fd5b50600190505b92915050565b600054600160a01b900460ff1681565b60035481565b60085481565b6000546001600160a01b031633146106b757600080fd5b600054600160a01b900460ff16156106ce57600080fd5b6000805460ff60a01b1916600160a01b1781556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff6259190a1565b6000546001600160a01b031681565b60025481565b6000546001600160a01b0316331461073657600080fd5b600054600160a01b900460ff161561074d57600080fd5b600154604080516370a0823160e01b815230600482015290516000926001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561079857600080fd5b505afa1580156107ac573d6000803e3d6000fd5b505050506040513d60208110156107c257600080fd5b505190508181101561081b576040805162461bcd60e51b815260206004820152601b60248201527f546f6b656e2042616c616e6365206973206e6f7420656e6f7567680000000000604482015290519081900360640190fd5b6001546040805163a9059cbb60e01b81526001600160a01b038681166004830152602482018690529151919092169163a9059cbb9160448083019260209291908290030181600087803b15801561087157600080fd5b505af1158015610885573d6000803e3d6000fd5b505050506040513d602081101561089b57600080fd5b50516108a657600080fd5b505050565b610bb881565b60065460ff1681565b60095481565b6000546001600160a01b031633146108d757600080fd5b6001600160a01b0381166108ea57600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6103e881565b60075481565b6001546001600160a01b031681565b6000610980600754683635c9adc5dea00000610d0d90919063ffffffff16565b905060008282106109915782610993565b815b60078054820190819055909150683635c9adc5dea0000014156109be576006805460ff191660011790555b60006109e7610bb86109db60025485610d5690919063ffffffff16565b9063ffffffff610d9816565b6001546040805163a9059cbb60e01b81523360048201526024810184905290519293506001600160a01b039091169163a9059cbb916044808201926020929091908290030181600087803b158015610a3e57600080fd5b505af1158015610a52573d6000803e3d6000fd5b505050506040513d6020811015610a6857600080fd5b5051610a7357600080fd5b81841115610a9357610a93610a8e858463ffffffff610d0d16565b610a99565b50505050565b6000610ab9600854683635c9adc5dea00000610d0d90919063ffffffff16565b90506000828210610aca5782610acc565b815b60088054820190819055909150683635c9adc5dea000001415610af7576006805460ff191660021790555b6000610b146107d06109db60025485610d5690919063ffffffff16565b6001546040805163a9059cbb60e01b81523360048201526024810184905290519293506001600160a01b039091169163a9059cbb916044808201926020929091908290030181600087803b158015610b6b57600080fd5b505af1158015610b7f573d6000803e3d6000fd5b505050506040513d6020811015610b9557600080fd5b5051610ba057600080fd5b81841115610a9357610a93610bbb858463ffffffff610d0d16565b6000610bdb600954683635c9adc5dea00000610d0d90919063ffffffff16565b90506000828210610bec5782610bee565b815b60098054820190819055909150683635c9adc5dea000001415610c19576006805460ff191660031790555b6000610c366103e86109db60025485610d5690919063ffffffff16565b6001546040805163a9059cbb60e01b81523360048201526024810184905290519293506001600160a01b039091169163a9059cbb916044808201926020929091908290030181600087803b158015610c8d57600080fd5b505af1158015610ca1573d6000803e3d6000fd5b505050506040513d6020811015610cb757600080fd5b5051610cc257600080fd5b81841115610a9357336108fc610cde868563ffffffff610d0d16565b6040518115909202916000818181858888f19350505050158015610d06573d6000803e3d6000fd5b5050505050565b6000610d4f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610df1565b9392505050565b6000610d4f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610e88565b600082610da75750600061067e565b82820282848281610db457fe5b0414610d4f5760405162461bcd60e51b8152600401808060200182810382526021815260200180610f6b6021913960400191505060405180910390fd5b60008184841115610e805760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610e45578181015183820152602001610e2d565b50505050905090810190601f168015610e725780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610ed75760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610e45578181015183820152602001610e2d565b506000838581610ee357fe5b049594505050505056fe5072652d73616c652076616c7565206d757374206265206e6f206d6f7265207468616e2032302065746865722052656365697665722061646472657373206d757374206e6f74206265207a65726f5072652d73616c652076616c7565206d757374206265206e6f74206c657373207468616e20302e3120657468657220536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a72315820e931dd7d0494f41b398e92381939af19c2a80afdfb8cea50ef368bdb1bc070fc64736f6c63430005110032
Deployed Bytecode Sourcemap
8859:4164:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10065:16;;10046:15;:35;;10038:75;;;;;-1:-1:-1;;;10038:75:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10145:15;;10132:9;:28;;10124:87;;;;-1:-1:-1;;;10124:87:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10243:15;;10230:9;:28;;10222:85;;;;-1:-1:-1;;;10222:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10318:9;:7;:9::i;:::-;8859:4164;9495:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9495:44:0;;;:::i;:::-;;;;;;;;;;;;;;;;9595:52;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9595:52:0;;;:::i;8747:105::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8747:105:0;;;:::i;9102:41::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9102:41:0;;;:::i;9150:44::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9150:44:0;;;:::i;12785:233::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12785:233:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;12785:233:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;8072:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8072:26:0;;;:::i;9053:42::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9053:42:0;;;:::i;9546:38::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9546:38:0;;;:::i;8551:103::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8551:103:0;;;:::i;6960:20::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6960:20:0;;;:::i;:::-;;;;-1:-1:-1;;;;;6960:20:0;;;;;;;;;;;;;;9021:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9021:23:0;;;:::i;12521:256::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12521:256:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;12521:256:0;;;;;;;;:::i;9340:44::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9340:44:0;;;:::i;9230:::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9230:44:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9707:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9707:40:0;;;:::i;7609:192::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7609:192:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7609:192:0;-1:-1:-1;;;;;7609:192:0;;:::i;9654:46::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9654:46:0;;;:::i;9391:38::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9391:38:0;;;:::i;8996:18::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8996:18:0;;;:::i;10343:361::-;8258:6;;-1:-1:-1;;;8258:6:0;;;;8257:7;8249:16;;;;;;10413:21;10404:5;;;;:30;;;;;;;;;;10396:58;;;;;-1:-1:-1;;;10396:58:0;;;;;;;;;;;;-1:-1:-1;;;10396:58:0;;;;;;;;;;;;;;;10477:16;10468:5;;;;:25;;;;;;;;;10465:230;;;10510:26;10526:9;10510:15;:26::i;:::-;10465:230;;;10565:16;10556:5;;;;:25;;;;;;;;;10553:142;;;10597:26;10613:9;10597:15;:26::i;10553:142::-;10655:28;10673:9;10655:17;:28::i;:::-;10343:361::o;9495:44::-;9535:4;9495:44;:::o;9595:52::-;9637:10;9595:52;:::o;8747:105::-;7409:5;;-1:-1:-1;;;;;7409:5:0;7395:10;:19;7387:28;;;;;;8434:6;;-1:-1:-1;;;8434:6:0;;;;8426:15;;;;;;8814:5;8805:14;;-1:-1:-1;;;;8805:14:0;;;8835:9;;;;8814:5;8835:9;8747:105::o;9102:41::-;;;;:::o;9150:44::-;;;;:::o;12785:233::-;12880:4;7409:5;;-1:-1:-1;;;;;7409:5:0;7395:10;:19;7387:28;;;;;;8258:6;;-1:-1:-1;;;8258:6:0;;;;8257:7;8249:16;;;;;;-1:-1:-1;;;;;12905:16:0;;12897:62;;;;-1:-1:-1;;;12897:62:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12970:18;;-1:-1:-1;;;;;12970:11:0;;;:18;;;;;12982:5;;12970:18;;;;12982:5;12970:11;:18;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12970:18:0;13006:4;12999:11;;8276:1;12785:233;;;;:::o;8072:26::-;;;-1:-1:-1;;;8072:26:0;;;;;:::o;9053:42::-;;;;:::o;9546:38::-;;;;:::o;8551:103::-;7409:5;;-1:-1:-1;;;;;7409:5:0;7395:10;:19;7387:28;;;;;;8258:6;;-1:-1:-1;;;8258:6:0;;;;8257:7;8249:16;;;;;;8610:6;:13;;-1:-1:-1;;;;8610:13:0;-1:-1:-1;;;8610:13:0;;;8639:7;;;;8610:6;8639:7;8551:103::o;6960:20::-;;;-1:-1:-1;;;;;6960:20:0;;:::o;9021:23::-;;;;:::o;12521:256::-;7409:5;;-1:-1:-1;;;;;7409:5:0;7395:10;:19;7387:28;;;;;;8258:6;;-1:-1:-1;;;8258:6:0;;;;8257:7;8249:16;;;;;;12629:5;;:30;;;-1:-1:-1;;;12629:30:0;;12653:4;12629:30;;;;;;12611:15;;-1:-1:-1;;;;;12629:5:0;;:15;;:30;;;;;;;;;;;;;;:5;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;12629:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12629:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12629:30:0;;-1:-1:-1;12678:16:0;;;;12670:55;;;;;-1:-1:-1;;;12670:55:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;12744:5;;:24;;;-1:-1:-1;;;12744:24:0;;-1:-1:-1;;;;;12744:24:0;;;;;;;;;;;;;;;:5;;;;;:14;;:24;;;;;;;;;;;;;;:5;;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;12744:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12744:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12744:24:0;12736:33;;;;;;8276:1;12521:256;;:::o;9340:44::-;9380:4;9340:44;:::o;9230:::-;;;;;;:::o;9707:40::-;;;;:::o;7609:192::-;7409:5;;-1:-1:-1;;;;;7409:5:0;7395:10;:19;7387:28;;;;;;-1:-1:-1;;;;;7690:22:0;;7682:31;;;;;;7750:5;;;7729:37;;-1:-1:-1;;;;;7729:37:0;;;;7750:5;;;7729:37;;;7777:5;:16;;-1:-1:-1;;;;;;7777:16:0;-1:-1:-1;;;;;7777:16:0;;;;;;;;;;7609:192::o;9654:46::-;9696:4;9654:46;:::o;9391:38::-;;;;:::o;8996:18::-;;;-1:-1:-1;;;;;8996:18:0;;:::o;10712:584::-;10772:20;10795:38;10813:19;;9323:10;10795:17;;:38;;;;:::i;:::-;10772:61;;10844:20;10882:5;10867:12;:20;:43;;10905:5;10867:43;;;10890:12;10867:43;10921:19;:35;;;;;;;;10844:66;;-1:-1:-1;9323:10:0;10970:36;10967:92;;;11023:5;:24;;-1:-1:-1;;11023:24:0;11031:16;11023:24;;;10967:92;11069:17;11089:41;9380:4;11089:22;11106:4;;11089:12;:16;;:22;;;;:::i;:::-;:26;:41;:26;:41;:::i;:::-;11149:5;;:36;;;-1:-1:-1;;;11149:36:0;;11164:10;11149:36;;;;;;;;;;;;11069:61;;-1:-1:-1;;;;;;11149:5:0;;;;:14;;:36;;;;;;;;;;;;;;;:5;;:36;;;5:2:-1;;;;30:1;27;20:12;5:2;11149:36:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11149:36:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11149:36:0;11141:45;;;;;;11208:12;11200:5;:20;11197:92;;;11237:40;11253:23;:5;11263:12;11253:23;:9;:23;:::i;:::-;11237:15;:40::i;:::-;10712:584;;;;:::o;11304:588::-;11364:20;11387:38;11405:19;;9478:10;11387:17;;:38;;;;:::i;:::-;11364:61;;11436:20;11474:5;11459:12;:20;:43;;11497:5;11459:43;;;11482:12;11459:43;11513:19;:35;;;;;;;;11436:66;;-1:-1:-1;9478:10:0;11562:36;11559:94;;;11615:5;:26;;-1:-1:-1;;11615:26:0;11623:18;11615:26;;;11559:94;11663:17;11683:41;9535:4;11683:22;11700:4;;11683:12;:16;;:22;;;;:::i;:41::-;11743:5;;:36;;;-1:-1:-1;;;11743:36:0;;11758:10;11743:36;;;;;;;;;;;;11663:61;;-1:-1:-1;;;;;;11743:5:0;;;;:14;;:36;;;;;;;;;;;;;;;:5;;:36;;;5:2:-1;;;;30:1;27;20:12;5:2;11743:36:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11743:36:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11743:36:0;11735:45;;;;;;11802:12;11794:5;:20;11791:94;;;11831:42;11849:23;:5;11859:12;11849:23;:9;:23;:::i;:::-;11962:22;11987:42;12007:21;;9637:10;11987:19;;:42;;;;:::i;:::-;11962:67;;12040:20;12080:5;12063:14;:22;:47;;12105:5;12063:47;;;12088:14;12063:47;12121:21;:37;;;;;;;;12040:70;;-1:-1:-1;9637:10:0;12172:40;12169:101;;;12229:5;:29;;-1:-1:-1;;12229:29:0;12237:21;12229:29;;;12169:101;12280:17;12300:43;9696:4;12300:22;12317:4;;12300:12;:16;;:22;;;;:::i;:43::-;12362:5;;:36;;;-1:-1:-1;;;12362:36:0;;12377:10;12362:36;;;;;;;;;;;;12280:63;;-1:-1:-1;;;;;;12362:5:0;;;;:14;;:36;;;;;;;;;;;;;;;:5;;:36;;;5:2:-1;;;;30:1;27;20:12;5:2;12362:36:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12362:36:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12362:36:0;12354:45;;;;;;12421:12;12413:5;:20;12410:96;;;12450:10;:44;12470:23;:5;12480:12;12470:23;:9;:23;:::i;:::-;12450:44;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12450:44:0;11900:613;;;;:::o;1827:136::-;1885:7;1912:43;1916:1;1919;1912:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1905:50;1827:136;-1:-1:-1;;;1827:136:0:o;3682:132::-;3740:7;3767:39;3771:1;3774;3767:39;;;;;;;;;;;;;;;;;:3;:39::i;2743:471::-;2801:7;3046:6;3042:47;;-1:-1:-1;3076:1:0;3069:8;;3042:47;3113:5;;;3117:1;3113;:5;:1;3137:5;;;;;:10;3129:56;;;;-1:-1:-1;;;3129:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2300:192;2386:7;2422:12;2414:6;;;;2406:29;;;;-1:-1:-1;;;2406:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;2406:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;2458:5:0;;;2300:192::o;4344:345::-;4430:7;4532:12;4525:5;4517:28;;;;-1:-1:-1;;;4517:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27:10:-1;;8:100;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;4517:28:0;;4556:9;4572:1;4568;:5;;;;;;;4344:345;-1:-1:-1;;;;;4344:345:0:o
Swarm Source
bzzr://e931dd7d0494f41b398e92381939af19c2a80afdfb8cea50ef368bdb1bc070fc
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
[ 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.