ERC-20
Overview
Max Total Supply
36,417.842251096588779244 CLC
Holders
649
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
3.419675155804250847 CLCValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
ClubToken
Compiler Version
v0.4.24+commit.e67f0147
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-08-16 */ // File: zeppelin-solidity/contracts/token/ERC20/ERC20Basic.sol pragma solidity ^0.4.24; /** * @title ERC20Basic * @dev Simpler version of ERC20 interface * 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); } // File: zeppelin-solidity/contracts/math/SafeMath.sol pragma solidity ^0.4.24; /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ library SafeMath { /** * @dev Multiplies two numbers, throws on overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256 c) { // Gas optimization: this is cheaper than asserting 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522 if (a == 0) { return 0; } c = a * b; assert(c / a == b); return c; } /** * @dev Integer division of two numbers, truncating the quotient. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { // assert(b > 0); // Solidity automatically throws when dividing by 0 // uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return a / b; } /** * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend). */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } /** * @dev Adds two numbers, throws on overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256 c) { c = a + b; assert(c >= a); return c; } } // File: zeppelin-solidity/contracts/token/ERC20/BasicToken.sol pragma solidity ^0.4.24; /** * @title Basic token * @dev Basic version of StandardToken, with no allowances. */ contract BasicToken is ERC20Basic { using SafeMath for uint256; mapping(address => uint256) balances; uint256 totalSupply_; /** * @dev Total number of tokens in existence */ function totalSupply() public view returns (uint256) { return totalSupply_; } /** * @dev Transfer token for a specified address * @param _to The address to transfer to. * @param _value The amount to be transferred. */ function transfer(address _to, uint256 _value) public returns (bool) { require(_to != address(0)); require(_value <= balances[msg.sender]); balances[msg.sender] = balances[msg.sender].sub(_value); balances[_to] = balances[_to].add(_value); emit Transfer(msg.sender, _to, _value); return true; } /** * @dev Gets the balance of the specified address. * @param _owner The address to query the the balance of. * @return An uint256 representing the amount owned by the passed address. */ function balanceOf(address _owner) public view returns (uint256) { return balances[_owner]; } } // File: zeppelin-solidity/contracts/token/ERC20/ERC20.sol pragma solidity ^0.4.24; /** * @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); event Approval( address indexed owner, address indexed spender, uint256 value ); } // File: zeppelin-solidity/contracts/token/ERC20/StandardToken.sol pragma solidity ^0.4.24; /** * @title Standard ERC20 token * * @dev Implementation of the basic standard token. * https://github.com/ethereum/EIPs/issues/20 * Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol */ contract StandardToken is ERC20, BasicToken { mapping (address => mapping (address => uint256)) internal allowed; /** * @dev Transfer tokens from one address to another * @param _from address The address which you want to send tokens from * @param _to address The address which you want to transfer to * @param _value uint256 the amount of tokens to be transferred */ function transferFrom( address _from, address _to, uint256 _value ) public returns (bool) { require(_to != address(0)); require(_value <= balances[_from]); require(_value <= allowed[_from][msg.sender]); balances[_from] = balances[_from].sub(_value); balances[_to] = balances[_to].add(_value); allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value); emit Transfer(_from, _to, _value); return true; } /** * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender. * 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 * @param _spender The address which will spend the funds. * @param _value The amount of tokens to be spent. */ function approve(address _spender, uint256 _value) public returns (bool) { allowed[msg.sender][_spender] = _value; emit Approval(msg.sender, _spender, _value); return true; } /** * @dev Function to check the amount of tokens that an owner allowed to a spender. * @param _owner address The address which owns the funds. * @param _spender address The address which will spend the funds. * @return A uint256 specifying the amount of tokens still available for the spender. */ function allowance( address _owner, address _spender ) public view returns (uint256) { return allowed[_owner][_spender]; } /** * @dev Increase the amount of tokens that an owner allowed to a spender. * approve should be called when allowed[_spender] == 0. To increment * allowed value is better to use this function to avoid 2 calls (and wait until * the first transaction is mined) * From MonolithDAO Token.sol * @param _spender The address which will spend the funds. * @param _addedValue The amount of tokens to increase the allowance by. */ function increaseApproval( address _spender, uint256 _addedValue ) public returns (bool) { allowed[msg.sender][_spender] = ( allowed[msg.sender][_spender].add(_addedValue)); emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); return true; } /** * @dev Decrease the amount of tokens that an owner allowed to a spender. * approve should be called when allowed[_spender] == 0. To decrement * allowed value is better to use this function to avoid 2 calls (and wait until * the first transaction is mined) * From MonolithDAO Token.sol * @param _spender The address which will spend the funds. * @param _subtractedValue The amount of tokens to decrease the allowance by. */ function decreaseApproval( address _spender, uint256 _subtractedValue ) public returns (bool) { uint256 oldValue = allowed[msg.sender][_spender]; if (_subtractedValue > oldValue) { allowed[msg.sender][_spender] = 0; } else { allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue); } emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); return true; } } // File: zeppelin-solidity/contracts/token/ERC20/DetailedERC20.sol pragma solidity ^0.4.24; /** * @title DetailedERC20 token * @dev The decimals are only for visualization purposes. * All the operations are done using the smallest and indivisible token unit, * just as on Ethereum all the operations are done in wei. */ contract DetailedERC20 is ERC20 { string public name; string public symbol; uint8 public decimals; constructor(string _name, string _symbol, uint8 _decimals) public { name = _name; symbol = _symbol; decimals = _decimals; } } // File: zeppelin-solidity/contracts/ownership/Ownable.sol pragma solidity ^0.4.24; /** * @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 OwnershipRenounced(address indexed previousOwner); 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 relinquish control of the contract. * @notice Renouncing to ownership will leave the contract without an owner. * It will not be possible to call the functions with the `onlyOwner` * modifier anymore. */ function renounceOwnership() public onlyOwner { emit OwnershipRenounced(owner); owner = address(0); } /** * @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 { _transferOwnership(_newOwner); } /** * @dev Transfers control of the contract to a newOwner. * @param _newOwner The address to transfer ownership to. */ function _transferOwnership(address _newOwner) internal { require(_newOwner != address(0)); emit OwnershipTransferred(owner, _newOwner); owner = _newOwner; } } // File: zeppelin-solidity/contracts/token/ERC20/MintableToken.sol pragma solidity ^0.4.24; /** * @title Mintable token * @dev Simple ERC20 Token example, with mintable token creation * Based on code by TokenMarketNet: https://github.com/TokenMarketNet/ico/blob/master/contracts/MintableToken.sol */ contract MintableToken is StandardToken, Ownable { event Mint(address indexed to, uint256 amount); event MintFinished(); bool public mintingFinished = false; modifier canMint() { require(!mintingFinished); _; } modifier hasMintPermission() { require(msg.sender == owner); _; } /** * @dev Function to mint tokens * @param _to The address that will receive the minted tokens. * @param _amount The amount of tokens to mint. * @return A boolean that indicates if the operation was successful. */ function mint( address _to, uint256 _amount ) hasMintPermission canMint public returns (bool) { totalSupply_ = totalSupply_.add(_amount); balances[_to] = balances[_to].add(_amount); emit Mint(_to, _amount); emit Transfer(address(0), _to, _amount); return true; } /** * @dev Function to stop minting new tokens. * @return True if the operation was successful. */ function finishMinting() onlyOwner canMint public returns (bool) { mintingFinished = true; emit MintFinished(); return true; } } // File: zeppelin-solidity/contracts/token/ERC20/BurnableToken.sol pragma solidity ^0.4.24; /** * @title Burnable Token * @dev Token that can be irreversibly burned (destroyed). */ contract BurnableToken is BasicToken { event Burn(address indexed burner, uint256 value); /** * @dev Burns a specific amount of tokens. * @param _value The amount of token to be burned. */ function burn(uint256 _value) public { _burn(msg.sender, _value); } function _burn(address _who, uint256 _value) internal { require(_value <= balances[_who]); // no need to require value <= totalSupply, since that would imply the // sender's balance is greater than the totalSupply, which *should* be an assertion failure balances[_who] = balances[_who].sub(_value); totalSupply_ = totalSupply_.sub(_value); emit Burn(_who, _value); emit Transfer(_who, address(0), _value); } } // File: contracts/ClubToken.sol pragma solidity ^0.4.18; /** * ClubToken adheres to ERC20 * it is a continuously mintable token administered by CloversController/ClubTokenController */ contract ClubToken is StandardToken, DetailedERC20, MintableToken, BurnableToken { address public cloversController; address public clubTokenController; modifier hasMintPermission() { require( msg.sender == clubTokenController || msg.sender == cloversController || msg.sender == owner ); _; } /** * @dev constructor for the ClubTokens contract * @param _name The name of the token * @param _symbol The symbol of the token * @param _decimals The decimals of the token */ constructor(string _name, string _symbol, uint8 _decimals) public DetailedERC20(_name, _symbol, _decimals) {} function () public payable {} function updateClubTokenControllerAddress(address _clubTokenController) public onlyOwner { require(_clubTokenController != 0); clubTokenController = _clubTokenController; } function updateCloversControllerAddress(address _cloversController) public onlyOwner { require(_cloversController != 0); cloversController = _cloversController; } /** * @dev Transfer tokens from one address to another * @param _from address The address which you want to send tokens from * @param _to address The address which you want to transfer to * @param _value uint256 the amount of tokens to be transferred */ function transferFrom( address _from, address _to, uint256 _value ) public returns (bool) { require(_to != address(0)); require(_value <= balances[_from]); if (msg.sender != cloversController && msg.sender != clubTokenController) { require(_value <= allowed[_from][msg.sender]); allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value); } balances[_from] = balances[_from].sub(_value); balances[_to] = balances[_to].add(_value); emit Transfer(_from, _to, _value); return true; } /** * @dev Burns a specific amount of tokens. * @param _value The amount of token to be burned. * NOTE: Disabled as tokens should not be burned under circumstances beside selling tokens. */ function burn(uint256 _value) public { _value; revert(); } /** * @dev Burns a specific amount of tokens. * @param _burner The address of the token holder burning their tokens. * @param _value The amount of token to be burned. */ function burn(address _burner, uint256 _value) public hasMintPermission { _burn(_burner, _value); } /** * @dev Moves Eth to a certain address for use in the ClubTokenController * @param _to The address to receive the Eth. * @param _amount The amount of Eth to be transferred. */ function moveEth(address _to, uint256 _amount) public hasMintPermission { require(this.balance >= _amount); _to.transfer(_amount); } /** * @dev Moves Tokens to a certain address for use in the ClubTokenController * @param _to The address to receive the Tokens. * @param _amount The amount of Tokens to be transferred. * @param _token The address of the relevant token contract. * @return bool Whether or not the move was successful */ function moveToken(address _to, uint256 _amount, address _token) public hasMintPermission returns (bool) { require(_amount <= StandardToken(_token).balanceOf(this)); return StandardToken(_token).transfer(_to, _amount); } /** * @dev Approves Tokens to a certain address for use in the ClubTokenController * @param _to The address to be approved. * @param _amount The amount of Tokens to be approved. * @param _token The address of the relevant token contract. * @return bool Whether or not the approval was successful */ function approveToken(address _to, uint256 _amount, address _token) public hasMintPermission returns (bool) { return StandardToken(_token).approve(_to, _amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_token","type":"address"}],"name":"moveToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"mintingFinished","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"cloversController","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"moveEth","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"finishMinting","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_cloversController","type":"address"}],"name":"updateCloversControllerAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_burner","type":"address"},{"name":"_value","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"clubTokenController","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_clubTokenController","type":"address"}],"name":"updateClubTokenControllerAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_token","type":"address"}],"name":"approveToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"burner","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[],"name":"MintFinished","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"}],"name":"OwnershipRenounced","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]
Contract Creation Code
60806040526005805460a860020a60ff02191690553480156200002157600080fd5b50604051620019e4380380620019e48339810160409081528151602080840151928401519184018051909493909301928491849184916200006891600391860190620000b0565b5081516200007e906004906020850190620000b0565b506005805460ff191660ff929092169190911761010060a860020a031916610100330217905550620001559350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620000f357805160ff191683800117855562000123565b8280016001018555821562000123579182015b828111156200012357825182559160200191906001019062000106565b506200013192915062000135565b5090565b6200015291905b808211156200013157600081556001016200013c565b90565b61187f80620001656000396000f3006080604052600436106101535763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663048e62ca811461015557806305d2035b146101a157806306fdde03146101b6578063095ea7b314610240578063124141981461027157806318160ddd146102af5780631cc1472d146102d657806323b872dd14610307578063313ce5671461033e57806340c10f191461036957806342966c681461039a57806366188463146103b257806370a08231146103e3578063715018a6146104115780637d64bcb4146104265780638a56a2261461043b5780638da5cb5b1461046957806395d89b411461047e5780639dc29fac14610493578063a89b55da146104c4578063a9059cbb146104d9578063a91cf1c51461050a578063c863bac114610538578063d73dd62314610570578063dd62ed3e146105a1578063f2fde38b146105d5575b005b34801561016157600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff6004358116906024359060443516610603565b604080519115158252519081900360200190f35b3480156101ad57600080fd5b5061018d6107f2565b3480156101c257600080fd5b506101cb610814565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102055781810151838201526020016101ed565b50505050905090810190601f1680156102325780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561024c57600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff600435166024356108c0565b34801561027d57600080fd5b50610286610933565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156102bb57600080fd5b506102c461094f565b60408051918252519081900360200190f35b3480156102e257600080fd5b5061015373ffffffffffffffffffffffffffffffffffffffff60043516602435610955565b34801561031357600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff60043581169060243516604435610a1a565b34801561034a57600080fd5b50610353610c49565b6040805160ff9092168252519081900360200190f35b34801561037557600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff60043516602435610c52565b3480156103a657600080fd5b50610153600435610ded565b3480156103be57600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff60043516602435610df2565b3480156103ef57600080fd5b506102c473ffffffffffffffffffffffffffffffffffffffff60043516610f16565b34801561041d57600080fd5b50610153610f3e565b34801561043257600080fd5b5061018d610fda565b34801561044757600080fd5b5061015373ffffffffffffffffffffffffffffffffffffffff6004351661109e565b34801561047557600080fd5b50610286611130565b34801561048a57600080fd5b506101cb611151565b34801561049f57600080fd5b5061015373ffffffffffffffffffffffffffffffffffffffff600435166024356111ca565b3480156104d057600080fd5b50610286611247565b3480156104e557600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff60043516602435611263565b34801561051657600080fd5b5061015373ffffffffffffffffffffffffffffffffffffffff6004351661136b565b34801561054457600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff60043581169060243590604435166113fd565b34801561057c57600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff60043516602435611512565b3480156105ad57600080fd5b506102c473ffffffffffffffffffffffffffffffffffffffff600435811690602435166115c5565b3480156105e157600080fd5b5061015373ffffffffffffffffffffffffffffffffffffffff600435166115fd565b60075460009073ffffffffffffffffffffffffffffffffffffffff16331480610643575060065473ffffffffffffffffffffffffffffffffffffffff1633145b8061066a5750600554610100900473ffffffffffffffffffffffffffffffffffffffff1633145b151561067557600080fd5b604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905173ffffffffffffffffffffffffffffffffffffffff8416916370a082319160248083019260209291908290030181600087803b1580156106e357600080fd5b505af11580156106f7573d6000803e3d6000fd5b505050506040513d602081101561070d57600080fd5b505183111561071b57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb85856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156107be57600080fd5b505af11580156107d2573d6000803e3d6000fd5b505050506040513d60208110156107e857600080fd5b5051949350505050565b6005547501000000000000000000000000000000000000000000900460ff1681565b6003805460408051602060026001851615610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190941693909304601f810184900484028201840190925281815292918301828280156108b85780601f1061088d576101008083540402835291602001916108b8565b820191906000526020600020905b81548152906001019060200180831161089b57829003601f168201915b505050505081565b33600081815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b60065473ffffffffffffffffffffffffffffffffffffffff1681565b60015490565b60075473ffffffffffffffffffffffffffffffffffffffff16331480610992575060065473ffffffffffffffffffffffffffffffffffffffff1633145b806109b95750600554610100900473ffffffffffffffffffffffffffffffffffffffff1633145b15156109c457600080fd5b30318111156109d257600080fd5b60405173ffffffffffffffffffffffffffffffffffffffff83169082156108fc029083906000818181858888f19350505050158015610a15573d6000803e3d6000fd5b505050565b600073ffffffffffffffffffffffffffffffffffffffff83161515610a3e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208190526040902054821115610a7057600080fd5b60065473ffffffffffffffffffffffffffffffffffffffff163314801590610ab0575060075473ffffffffffffffffffffffffffffffffffffffff163314155b15610b655773ffffffffffffffffffffffffffffffffffffffff84166000908152600260209081526040808320338452909152902054821115610af257600080fd5b73ffffffffffffffffffffffffffffffffffffffff84166000908152600260209081526040808320338452909152902054610b33908363ffffffff61163216565b73ffffffffffffffffffffffffffffffffffffffff851660009081526002602090815260408083203384529091529020555b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208190526040902054610b9b908363ffffffff61163216565b73ffffffffffffffffffffffffffffffffffffffff8086166000908152602081905260408082209390935590851681522054610bdd908363ffffffff61164416565b73ffffffffffffffffffffffffffffffffffffffff8085166000818152602081815260409182902094909455805186815290519193928816927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a35060019392505050565b60055460ff1681565b60075460009073ffffffffffffffffffffffffffffffffffffffff16331480610c92575060065473ffffffffffffffffffffffffffffffffffffffff1633145b80610cb95750600554610100900473ffffffffffffffffffffffffffffffffffffffff1633145b1515610cc457600080fd5b6005547501000000000000000000000000000000000000000000900460ff1615610ced57600080fd5b600154610d00908363ffffffff61164416565b60015573ffffffffffffffffffffffffffffffffffffffff8316600090815260208190526040902054610d39908363ffffffff61164416565b73ffffffffffffffffffffffffffffffffffffffff841660008181526020818152604091829020939093558051858152905191927f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688592918290030190a260408051838152905173ffffffffffffffffffffffffffffffffffffffff8516916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a350600192915050565b600080fd5b33600090815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff8616845290915281205480831115610e615733600090815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff88168452909152812055610ea3565b610e71818463ffffffff61163216565b33600090815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff891684529091529020555b33600081815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff89168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b600554610100900473ffffffffffffffffffffffffffffffffffffffff163314610f6757600080fd5b60055460405161010090910473ffffffffffffffffffffffffffffffffffffffff16907ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482090600090a2600580547fffffffffffffffffffffff0000000000000000000000000000000000000000ff169055565b600554600090610100900473ffffffffffffffffffffffffffffffffffffffff16331461100657600080fd5b6005547501000000000000000000000000000000000000000000900460ff161561102f57600080fd5b600580547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff1675010000000000000000000000000000000000000000001790556040517fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0890600090a150600190565b600554610100900473ffffffffffffffffffffffffffffffffffffffff1633146110c757600080fd5b73ffffffffffffffffffffffffffffffffffffffff811615156110e957600080fd5b600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600554610100900473ffffffffffffffffffffffffffffffffffffffff1681565b6004805460408051602060026001851615610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190941693909304601f810184900484028201840190925281815292918301828280156108b85780601f1061088d576101008083540402835291602001916108b8565b60075473ffffffffffffffffffffffffffffffffffffffff16331480611207575060065473ffffffffffffffffffffffffffffffffffffffff1633145b8061122e5750600554610100900473ffffffffffffffffffffffffffffffffffffffff1633145b151561123957600080fd5b6112438282611657565b5050565b60075473ffffffffffffffffffffffffffffffffffffffff1681565b600073ffffffffffffffffffffffffffffffffffffffff8316151561128757600080fd5b336000908152602081905260409020548211156112a357600080fd5b336000908152602081905260409020546112c3908363ffffffff61163216565b336000908152602081905260408082209290925573ffffffffffffffffffffffffffffffffffffffff851681522054611302908363ffffffff61164416565b73ffffffffffffffffffffffffffffffffffffffff8416600081815260208181526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b600554610100900473ffffffffffffffffffffffffffffffffffffffff16331461139457600080fd5b73ffffffffffffffffffffffffffffffffffffffff811615156113b657600080fd5b600780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60075460009073ffffffffffffffffffffffffffffffffffffffff1633148061143d575060065473ffffffffffffffffffffffffffffffffffffffff1633145b806114645750600554610100900473ffffffffffffffffffffffffffffffffffffffff1633145b151561146f57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff1663095ea7b385856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156107be57600080fd5b33600090815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff86168452909152812054611553908363ffffffff61164416565b33600081815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff89168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260026020908152604080832093909416825291909152205490565b600554610100900473ffffffffffffffffffffffffffffffffffffffff16331461162657600080fd5b61162f81611799565b50565b60008282111561163e57fe5b50900390565b8181018281101561165157fe5b92915050565b73ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604090205481111561168957600080fd5b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260409020546116bf908263ffffffff61163216565b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260409020556001546116f8908263ffffffff61163216565b60015560408051828152905173ffffffffffffffffffffffffffffffffffffffff8416917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a260408051828152905160009173ffffffffffffffffffffffffffffffffffffffff8516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b73ffffffffffffffffffffffffffffffffffffffff811615156117bb57600080fd5b60055460405173ffffffffffffffffffffffffffffffffffffffff80841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36005805473ffffffffffffffffffffffffffffffffffffffff909216610100027fffffffffffffffffffffff0000000000000000000000000000000000000000ff9092169190911790555600a165627a7a72305820474295f438dd471eec4077eecb7209fe347ce63fb62df81d199df4962afbab240029000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000a436c6f766572436f696e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003434c430000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x6080604052600436106101535763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663048e62ca811461015557806305d2035b146101a157806306fdde03146101b6578063095ea7b314610240578063124141981461027157806318160ddd146102af5780631cc1472d146102d657806323b872dd14610307578063313ce5671461033e57806340c10f191461036957806342966c681461039a57806366188463146103b257806370a08231146103e3578063715018a6146104115780637d64bcb4146104265780638a56a2261461043b5780638da5cb5b1461046957806395d89b411461047e5780639dc29fac14610493578063a89b55da146104c4578063a9059cbb146104d9578063a91cf1c51461050a578063c863bac114610538578063d73dd62314610570578063dd62ed3e146105a1578063f2fde38b146105d5575b005b34801561016157600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff6004358116906024359060443516610603565b604080519115158252519081900360200190f35b3480156101ad57600080fd5b5061018d6107f2565b3480156101c257600080fd5b506101cb610814565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102055781810151838201526020016101ed565b50505050905090810190601f1680156102325780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561024c57600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff600435166024356108c0565b34801561027d57600080fd5b50610286610933565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156102bb57600080fd5b506102c461094f565b60408051918252519081900360200190f35b3480156102e257600080fd5b5061015373ffffffffffffffffffffffffffffffffffffffff60043516602435610955565b34801561031357600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff60043581169060243516604435610a1a565b34801561034a57600080fd5b50610353610c49565b6040805160ff9092168252519081900360200190f35b34801561037557600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff60043516602435610c52565b3480156103a657600080fd5b50610153600435610ded565b3480156103be57600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff60043516602435610df2565b3480156103ef57600080fd5b506102c473ffffffffffffffffffffffffffffffffffffffff60043516610f16565b34801561041d57600080fd5b50610153610f3e565b34801561043257600080fd5b5061018d610fda565b34801561044757600080fd5b5061015373ffffffffffffffffffffffffffffffffffffffff6004351661109e565b34801561047557600080fd5b50610286611130565b34801561048a57600080fd5b506101cb611151565b34801561049f57600080fd5b5061015373ffffffffffffffffffffffffffffffffffffffff600435166024356111ca565b3480156104d057600080fd5b50610286611247565b3480156104e557600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff60043516602435611263565b34801561051657600080fd5b5061015373ffffffffffffffffffffffffffffffffffffffff6004351661136b565b34801561054457600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff60043581169060243590604435166113fd565b34801561057c57600080fd5b5061018d73ffffffffffffffffffffffffffffffffffffffff60043516602435611512565b3480156105ad57600080fd5b506102c473ffffffffffffffffffffffffffffffffffffffff600435811690602435166115c5565b3480156105e157600080fd5b5061015373ffffffffffffffffffffffffffffffffffffffff600435166115fd565b60075460009073ffffffffffffffffffffffffffffffffffffffff16331480610643575060065473ffffffffffffffffffffffffffffffffffffffff1633145b8061066a5750600554610100900473ffffffffffffffffffffffffffffffffffffffff1633145b151561067557600080fd5b604080517f70a08231000000000000000000000000000000000000000000000000000000008152306004820152905173ffffffffffffffffffffffffffffffffffffffff8416916370a082319160248083019260209291908290030181600087803b1580156106e357600080fd5b505af11580156106f7573d6000803e3d6000fd5b505050506040513d602081101561070d57600080fd5b505183111561071b57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb85856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156107be57600080fd5b505af11580156107d2573d6000803e3d6000fd5b505050506040513d60208110156107e857600080fd5b5051949350505050565b6005547501000000000000000000000000000000000000000000900460ff1681565b6003805460408051602060026001851615610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190941693909304601f810184900484028201840190925281815292918301828280156108b85780601f1061088d576101008083540402835291602001916108b8565b820191906000526020600020905b81548152906001019060200180831161089b57829003601f168201915b505050505081565b33600081815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b60065473ffffffffffffffffffffffffffffffffffffffff1681565b60015490565b60075473ffffffffffffffffffffffffffffffffffffffff16331480610992575060065473ffffffffffffffffffffffffffffffffffffffff1633145b806109b95750600554610100900473ffffffffffffffffffffffffffffffffffffffff1633145b15156109c457600080fd5b30318111156109d257600080fd5b60405173ffffffffffffffffffffffffffffffffffffffff83169082156108fc029083906000818181858888f19350505050158015610a15573d6000803e3d6000fd5b505050565b600073ffffffffffffffffffffffffffffffffffffffff83161515610a3e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208190526040902054821115610a7057600080fd5b60065473ffffffffffffffffffffffffffffffffffffffff163314801590610ab0575060075473ffffffffffffffffffffffffffffffffffffffff163314155b15610b655773ffffffffffffffffffffffffffffffffffffffff84166000908152600260209081526040808320338452909152902054821115610af257600080fd5b73ffffffffffffffffffffffffffffffffffffffff84166000908152600260209081526040808320338452909152902054610b33908363ffffffff61163216565b73ffffffffffffffffffffffffffffffffffffffff851660009081526002602090815260408083203384529091529020555b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208190526040902054610b9b908363ffffffff61163216565b73ffffffffffffffffffffffffffffffffffffffff8086166000908152602081905260408082209390935590851681522054610bdd908363ffffffff61164416565b73ffffffffffffffffffffffffffffffffffffffff8085166000818152602081815260409182902094909455805186815290519193928816927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a35060019392505050565b60055460ff1681565b60075460009073ffffffffffffffffffffffffffffffffffffffff16331480610c92575060065473ffffffffffffffffffffffffffffffffffffffff1633145b80610cb95750600554610100900473ffffffffffffffffffffffffffffffffffffffff1633145b1515610cc457600080fd5b6005547501000000000000000000000000000000000000000000900460ff1615610ced57600080fd5b600154610d00908363ffffffff61164416565b60015573ffffffffffffffffffffffffffffffffffffffff8316600090815260208190526040902054610d39908363ffffffff61164416565b73ffffffffffffffffffffffffffffffffffffffff841660008181526020818152604091829020939093558051858152905191927f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688592918290030190a260408051838152905173ffffffffffffffffffffffffffffffffffffffff8516916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a350600192915050565b600080fd5b33600090815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff8616845290915281205480831115610e615733600090815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff88168452909152812055610ea3565b610e71818463ffffffff61163216565b33600090815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff891684529091529020555b33600081815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff89168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b600554610100900473ffffffffffffffffffffffffffffffffffffffff163314610f6757600080fd5b60055460405161010090910473ffffffffffffffffffffffffffffffffffffffff16907ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482090600090a2600580547fffffffffffffffffffffff0000000000000000000000000000000000000000ff169055565b600554600090610100900473ffffffffffffffffffffffffffffffffffffffff16331461100657600080fd5b6005547501000000000000000000000000000000000000000000900460ff161561102f57600080fd5b600580547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff1675010000000000000000000000000000000000000000001790556040517fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0890600090a150600190565b600554610100900473ffffffffffffffffffffffffffffffffffffffff1633146110c757600080fd5b73ffffffffffffffffffffffffffffffffffffffff811615156110e957600080fd5b600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600554610100900473ffffffffffffffffffffffffffffffffffffffff1681565b6004805460408051602060026001851615610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190941693909304601f810184900484028201840190925281815292918301828280156108b85780601f1061088d576101008083540402835291602001916108b8565b60075473ffffffffffffffffffffffffffffffffffffffff16331480611207575060065473ffffffffffffffffffffffffffffffffffffffff1633145b8061122e5750600554610100900473ffffffffffffffffffffffffffffffffffffffff1633145b151561123957600080fd5b6112438282611657565b5050565b60075473ffffffffffffffffffffffffffffffffffffffff1681565b600073ffffffffffffffffffffffffffffffffffffffff8316151561128757600080fd5b336000908152602081905260409020548211156112a357600080fd5b336000908152602081905260409020546112c3908363ffffffff61163216565b336000908152602081905260408082209290925573ffffffffffffffffffffffffffffffffffffffff851681522054611302908363ffffffff61164416565b73ffffffffffffffffffffffffffffffffffffffff8416600081815260208181526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b600554610100900473ffffffffffffffffffffffffffffffffffffffff16331461139457600080fd5b73ffffffffffffffffffffffffffffffffffffffff811615156113b657600080fd5b600780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60075460009073ffffffffffffffffffffffffffffffffffffffff1633148061143d575060065473ffffffffffffffffffffffffffffffffffffffff1633145b806114645750600554610100900473ffffffffffffffffffffffffffffffffffffffff1633145b151561146f57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff1663095ea7b385856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156107be57600080fd5b33600090815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff86168452909152812054611553908363ffffffff61164416565b33600081815260026020908152604080832073ffffffffffffffffffffffffffffffffffffffff89168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260026020908152604080832093909416825291909152205490565b600554610100900473ffffffffffffffffffffffffffffffffffffffff16331461162657600080fd5b61162f81611799565b50565b60008282111561163e57fe5b50900390565b8181018281101561165157fe5b92915050565b73ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604090205481111561168957600080fd5b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260409020546116bf908263ffffffff61163216565b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260409020556001546116f8908263ffffffff61163216565b60015560408051828152905173ffffffffffffffffffffffffffffffffffffffff8416917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a260408051828152905160009173ffffffffffffffffffffffffffffffffffffffff8516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b73ffffffffffffffffffffffffffffffffffffffff811615156117bb57600080fd5b60055460405173ffffffffffffffffffffffffffffffffffffffff80841692610100900416907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36005805473ffffffffffffffffffffffffffffffffffffffff909216610100027fffffffffffffffffffffff0000000000000000000000000000000000000000ff9092169190911790555600a165627a7a72305820474295f438dd471eec4077eecb7209fe347ce63fb62df81d199df4962afbab240029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000a436c6f766572436f696e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003434c430000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : _name (string): CloverCoin
Arg [1] : _symbol (string): CLC
Arg [2] : _decimals (uint8): 18
-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 000000000000000000000000000000000000000000000000000000000000000a
Arg [4] : 436c6f766572436f696e00000000000000000000000000000000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [6] : 434c430000000000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
13174:4206:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16617:243;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;16617:243:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10984:35;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10984:35:0;;;;8493:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8493:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;8493:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5741:192;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5741:192:0;;;;;;;;;13264:32;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13264:32:0;;;;;;;;;;;;;;;;;;;;;;;2371:85;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2371:85:0;;;;;;;;;;;;;;;;;;;;16119:155;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;16119:155:0;;;;;;;;;14628:653;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14628:653:0;;;;;;;;;;;;;;8541:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8541:21:0;;;;;;;;;;;;;;;;;;;;;;;11421:326;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;11421:326:0;;;;;;;;;15508:81;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;15508:81:0;;;;;7660:446;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7660:446:0;;;;;;;;;3155:101;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3155:101:0;;;;;;;9821:114;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9821:114:0;;;;11867:144;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11867:144:0;;;;14130:185;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14130:185:0;;;;;;;9026:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9026:20:0;;;;8516;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8516:20:0;;;;15796:111;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;15796:111:0;;;;;;;;;13303:34;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13303:34:0;;;;2617:329;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2617:329:0;;;;;;;;;13927:195;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13927:195:0;;;;;;;17200:177;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;17200:177:0;;;;;;;;;;;;;;;6885:307;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6885:307:0;;;;;;;;;6260:162;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6260:162:0;;;;;;;;;;;;10103:105;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;10103:105:0;;;;;;;16617:243;13418:19;;16716:4;;13418:19;;13404:10;:33;;:79;;-1:-1:-1;13466:17:0;;;;13452:10;:31;13404:79;:113;;;-1:-1:-1;13512:5:0;;;;;;;13498:10;:19;13404:113;13384:142;;;;;;;;16752:37;;;;;;16784:4;16752:37;;;;;;:31;;;;;;:37;;;;;;;;;;;;;;-1:-1:-1;16752:31:0;:37;;;5:2:-1;;;;30:1;27;20:12;5:2;16752:37:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16752:37:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16752:37:0;16741:48;;;16733:57;;;;;;16822:6;16808:30;;;16839:3;16844:7;16808:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16808:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16808:44:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16808:44:0;;16617:243;-1:-1:-1;;;;16617:243:0:o;10984:35::-;;;;;;;;;:::o;8493:18::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5741:192::-;5829:10;5808:4;5821:19;;;:7;:19;;;;;;;;;:29;;;;;;;;;;;:38;;;5871;;;;;;;5808:4;;5821:29;;5829:10;;5871:38;;;;;;;;-1:-1:-1;5923:4:0;5741:192;;;;:::o;13264:32::-;;;;;;:::o;2371:85::-;2438:12;;2371:85;:::o;16119:155::-;13418:19;;;;13404:10;:33;;:79;;-1:-1:-1;13466:17:0;;;;13452:10;:31;13404:79;:113;;;-1:-1:-1;13512:5:0;;;;;;;13498:10;:19;13404:113;13384:142;;;;;;;;16210:4;:12;:23;-1:-1:-1;16210:23:0;16202:32;;;;;;16245:21;;:12;;;;:21;;;;;16258:7;;16245:21;;;;16258:7;16245:12;:21;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16245:21:0;16119:155;;:::o;14628:653::-;14764:4;14796:17;;;;;14788:26;;;;;;14843:15;;;:8;:15;;;;;;;;;;;14833:25;;;14825:34;;;;;;14888:17;;;;14874:10;:31;;;;:68;;-1:-1:-1;14923:19:0;;;;14909:10;:33;;14874:68;14870:228;;;14977:14;;;;;;;:7;:14;;;;;;;;14992:10;14977:26;;;;;;;;14967:36;;;14959:45;;;;;;15048:14;;;;;;;:7;:14;;;;;;;;15063:10;15048:26;;;;;;;;:38;;15079:6;15048:38;:30;:38;:::i;:::-;15019:14;;;;;;;:7;:14;;;;;;;;15034:10;15019:26;;;;;;;:67;14870:228;15126:15;;;:8;:15;;;;;;;;;;;:27;;15146:6;15126:27;:19;:27;:::i;:::-;15108:15;;;;:8;:15;;;;;;;;;;;:45;;;;15180:13;;;;;;;:25;;15198:6;15180:25;:17;:25;:::i;:::-;15164:13;;;;:8;:13;;;;;;;;;;;;:41;;;;15221:28;;;;;;;15164:13;;15221:28;;;;;;;;;;;;;-1:-1:-1;15267:4:0;14628:653;;;;;:::o;8541:21::-;;;;;;:::o;11421:326::-;13418:19;;11542:4;;13418:19;;13404:10;:33;;:79;;-1:-1:-1;13466:17:0;;;;13452:10;:31;13404:79;:113;;;-1:-1:-1;13512:5:0;;;;;;;13498:10;:19;13404:113;13384:142;;;;;;;;11063:15;;;;;;;11062:16;11054:25;;;;;;11573:12;;:25;;11590:7;11573:25;:16;:25;:::i;:::-;11558:12;:40;11621:13;;;:8;:13;;;;;;;;;;;:26;;11639:7;11621:26;:17;:26;:::i;:::-;11605:13;;;:8;:13;;;;;;;;;;;;:42;;;;11659:18;;;;;;;11605:13;;11659:18;;;;;;;;;11689:34;;;;;;;;;;;;11706:1;;11689:34;;;;;;;;;-1:-1:-1;11737:4:0;11421:326;;;;:::o;15508:81::-;15573:8;;;7660:446;7814:10;7771:4;7806:19;;;:7;:19;;;;;;;;;:29;;;;;;;;;;7846:27;;;7842:168;;;7892:10;7916:1;7884:19;;;:7;:19;;;;;;;;;:29;;;;;;;;;:33;7842:168;;;7972:30;:8;7985:16;7972:30;:12;:30;:::i;:::-;7948:10;7940:19;;;;:7;:19;;;;;;;;;:29;;;;;;;;;:62;7842:168;8030:10;8052:19;;;;:7;:19;;;;;;;;8021:61;;;8052:29;;;;;;;;;;;8021:61;;;;;;;;;8030:10;8021:61;;;;;;;;;;;-1:-1:-1;8096:4:0;;7660:446;-1:-1:-1;;;7660:446:0:o;3155:101::-;3234:16;;3211:7;3234:16;;;;;;;;;;;;3155:101::o;9821:114::-;9529:5;;;;;;;9515:10;:19;9507:28;;;;;;9898:5;;9879:25;;9898:5;;;;;;;9879:25;;;;;9911:5;:18;;;;;;9821:114::o;11867:144::-;9529:5;;11926:4;;9529:5;;;;;9515:10;:19;9507:28;;;;;;11063:15;;;;;;;11062:16;11054:25;;;;;;11939:15;:22;;;;;;;;11973:14;;;;11939:22;;11973:14;-1:-1:-1;12001:4:0;11867:144;:::o;14130:185::-;9529:5;;;;;;;9515:10;:19;9507:28;;;;;;14234:23;;;;;14226:32;;;;;;14269:17;:38;;;;;;;;;;;;;;;14130:185::o;9026:20::-;;;;;;;;;:::o;8516:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15796:111;13418:19;;;;13404:10;:33;;:79;;-1:-1:-1;13466:17:0;;;;13452:10;:31;13404:79;:113;;;-1:-1:-1;13512:5:0;;;;;;;13498:10;:19;13404:113;13384:142;;;;;;;;15877:22;15883:7;15892:6;15877:5;:22::i;:::-;15796:111;;:::o;13303:34::-;;;;;;:::o;2617:329::-;2680:4;2701:17;;;;;2693:26;;;;;;2753:10;2744:8;:20;;;;;;;;;;;2734:30;;;2726:39;;;;;;2806:10;2797:8;:20;;;;;;;;;;;:32;;2822:6;2797:32;:24;:32;:::i;:::-;2783:10;2774:8;:20;;;;;;;;;;;:55;;;;:20;2852:13;;;;;;:25;;2870:6;2852:25;:17;:25;:::i;:::-;2836:13;;;:8;:13;;;;;;;;;;;;:41;;;;2889:33;;;;;;;2836:13;;2898:10;;2889:33;;;;;;;;;;-1:-1:-1;2936:4:0;2617:329;;;;:::o;13927:195::-;9529:5;;;;;;;9515:10;:19;9507:28;;;;;;14035:25;;;;;14027:34;;;;;;14072:19;:42;;;;;;;;;;;;;;;13927:195::o;17200:177::-;13418:19;;17302:4;;13418:19;;13404:10;:33;;:79;;-1:-1:-1;13466:17:0;;;;13452:10;:31;13404:79;:113;;;-1:-1:-1;13512:5:0;;;;;;;13498:10;:19;13404:113;13384:142;;;;;;;;17340:6;17326:29;;;17356:3;17361:7;17326:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;6885:307:0;7056:10;6991:4;7048:19;;;:7;:19;;;;;;;;;:29;;;;;;;;;;:46;;7082:11;7048:46;:33;:46;:::i;:::-;7015:10;7007:19;;;;:7;:19;;;;;;;;;:29;;;;;;;;;;;;:88;;;7107:61;;;;;;7007:29;;7107:61;;;;;;;;;;;-1:-1:-1;7182:4:0;6885:307;;;;:::o;6260:162::-;6391:15;;;;6365:7;6391:15;;;:7;:15;;;;;;;;:25;;;;;;;;;;;;;6260:162::o;10103:105::-;9529:5;;;;;;;9515:10;:19;9507:28;;;;;;10173:29;10192:9;10173:18;:29::i;:::-;10103:105;:::o;1661:113::-;1719:7;1742:6;;;;1735:14;;;;-1:-1:-1;1763:5:0;;;1661:113::o;1841:127::-;1921:5;;;1940:6;;;;1933:14;;;;1841:127;;;;:::o;12511:447::-;12590:14;;;:8;:14;;;;;;;;;;;12580:24;;;12572:33;;;;;;12804:14;;;:8;:14;;;;;;;;;;;:26;;12823:6;12804:26;:18;:26;:::i;:::-;12787:14;;;:8;:14;;;;;;;;;;:43;12852:12;;:24;;12869:6;12852:24;:16;:24;:::i;:::-;12837:12;:39;12888:18;;;;;;;;;;;;;;;;;;;;;;12918:34;;;;;;;;12941:1;;12918:34;;;;;;;;;;;;;12511:447;;:::o;10349:175::-;10420:23;;;;;10412:32;;;;;;10477:5;;10456:38;;;;;;;10477:5;;;;;10456:38;;;;;10501:5;:17;;;;;;;;;;;;;;;;;;10349:175::o
Swarm Source
bzzr://474295f438dd471eec4077eecb7209fe347ce63fb62df81d199df4962afbab24
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.