ETH Price: $2,420.11 (-0.01%)

Token

0xchan ICO (ZCI)
 

Overview

Max Total Supply

3,624,832.5 ZCI

Holders

131

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
15,000 ZCI

Value
$0.00
0x912c9ef92b1e2ba3c6c3334f9d1d9c7903b91bb5
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xA7F7831a...65448B2A5
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
ICOToken

Compiler Version
v0.5.2+commit.1df8f40c

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2019-01-02
*/

pragma solidity ^0.5.2;

interface ERC223Handler { 
    function tokenFallback(address _from, uint _value, bytes calldata _data) external;
}

interface ICOStickers {
    function giveSticker(address _to, uint256 _property) external;
}


contract ICOToken{
    using SafeMath for uint256;
    using SafeMath for uint;
    
	modifier onlyOwner {
		require(msg.sender == owner);
		_;
	}
    
    constructor(address _s) public{
        stickers = ICOStickers(_s);
        totalSupply = 0;
        owner = msg.sender;
    }
	address owner;
	address newOwner;
    
    uint256 constant internal MAX_UINT256 = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff;
    uint256 constant internal TOKEN_PRICE = 0.0001 ether;
    uint256 constant public fundingCap = 2000 ether;

    uint256 constant public IcoStartTime = 1546628400; // Jan 04 2019 20:00:00 GMT+0100
    uint256 constant public IcoEndTime = 1550084400; // Feb 13 2019 20:00:00 GMT+0100


    ICOStickers internal stickers;
    mapping(address => uint256) internal beneficiaryWithdrawAmount;
    mapping(address => uint256) public beneficiaryShares;
    uint256 public beneficiaryTotalShares;
    uint256 public beneficiaryPayoutPerShare;
    uint256 public icoFunding;
    
    mapping(address => uint256) public balanceOf;
    mapping(address => uint256) public etherSpent;
    mapping(address => mapping (address => uint256)) internal allowances;
    string constant public name = "0xchan ICO";
    string constant public symbol = "ZCI";
    uint8 constant public decimals = 18;
    uint256 public totalSupply;
    
    // --Events
    event Approval(address indexed tokenOwner, address indexed spender, uint tokens);
    event Transfer(address indexed from, address indexed to, uint value);
    event Transfer(address indexed from, address indexed to, uint value, bytes indexed data);
    
    event onICOBuy(address indexed from, uint256 tokens, uint256 bonusTokens);
    // --Events--
    
    // --Owner only functions
    function setNewOwner(address o) public onlyOwner {
		newOwner = o;
	}

	function acceptNewOwner() public {
		require(msg.sender == newOwner);
		owner = msg.sender;
	}
	
    // For the 0xchan ICO, the following beneficieries will be added.
    // 3 - Aritz
    // 3 - Sumpunk
    // 2 - Multisig wallet for bounties/audit payments
	function addBeneficiary(address b, uint256 shares) public onlyOwner {
	   require(block.timestamp < IcoStartTime, "ICO has started");
	   require(beneficiaryWithdrawAmount[b] == 0, "Already a beneficiary");
	   beneficiaryWithdrawAmount[b] = MAX_UINT256;
	   beneficiaryShares[b] = shares;
	   beneficiaryTotalShares += shares;
	}
	
	function removeBeneficiary(address b, uint256 shares) public onlyOwner {
	   require(block.timestamp < IcoStartTime, "ICO has started");
	   require(beneficiaryWithdrawAmount[b] != 0, "Not a beneficiary");
	   delete beneficiaryWithdrawAmount[b];
	   delete beneficiaryShares[b];
	   beneficiaryTotalShares -= shares;
	}
	
	// --Owner only functions--
    
    // --Public write functions
    function withdrawFunding(uint256 _amount) public {
        if (icoFunding == 0){
            require(address(this).balance >= fundingCap || block.timestamp >= IcoEndTime, "ICO hasn't ended");
            icoFunding = address(this).balance;
        }
        require(beneficiaryWithdrawAmount[msg.sender] > 0, "You're not a beneficiary");
        uint256 stash = beneficiaryStash(msg.sender);
        if (_amount >= stash){
            beneficiaryWithdrawAmount[msg.sender] = beneficiaryPayoutPerShare * beneficiaryShares[msg.sender];
            msg.sender.transfer(stash);
        }else{
            if (beneficiaryWithdrawAmount[msg.sender] == MAX_UINT256){
                beneficiaryWithdrawAmount[msg.sender] = _amount;
            }else{
                beneficiaryWithdrawAmount[msg.sender] += _amount;
            }
            msg.sender.transfer(_amount);
        }
    }
    
    function() payable external{
        require(block.timestamp >= IcoStartTime, "ICO hasn't started yet");
        require(icoFunding == 0 && block.timestamp < IcoEndTime, "ICO has ended");
        require(msg.value != 0 && ((msg.value % TOKEN_PRICE) == 0), "Must be a multiple of 0.0001 ETH");
        
        uint256 thisBalance = address(this).balance; 
        uint256 msgValue = msg.value;
        
        // While the extra ETH is appriciated, we set ourselves a hardcap and we're gonna stick to it!
        if (thisBalance > fundingCap){
            msgValue -= (thisBalance - fundingCap);
            require(msgValue != 0, "Funding cap has been reached");
            thisBalance = fundingCap;
        }
        
        uint256 oldBalance = thisBalance - msgValue;
        uint256 tokensToGive = (msgValue / TOKEN_PRICE) * 1e18;
        uint256 bonusTokens;
        
        uint256 difference;
        
        while (oldBalance < thisBalance){
            if (oldBalance < 500 ether){
                difference = min(500 ether, thisBalance) - oldBalance;
                bonusTokens += ((difference / TOKEN_PRICE) * 1e18) / 2;
                oldBalance += difference;
            }else if(oldBalance < 1250 ether){
                difference = min(1250 ether, thisBalance) - oldBalance;
                bonusTokens += ((difference / TOKEN_PRICE) * 1e18) / 5;
                oldBalance += difference;
            }else{
                difference = thisBalance - oldBalance;
                bonusTokens += ((difference / TOKEN_PRICE) * 1e18) / 10;
                oldBalance += difference;
            }
        }
        emit onICOBuy(msg.sender, tokensToGive, bonusTokens);
        
        tokensToGive += bonusTokens;
        balanceOf[msg.sender] += tokensToGive;
        totalSupply += tokensToGive;
        
        if (address(stickers) != address(0)){
            stickers.giveSticker(msg.sender, msgValue);
        }
        emit Transfer(address(this), msg.sender, tokensToGive, "");
        emit Transfer(address(this), msg.sender, tokensToGive);
        
        beneficiaryPayoutPerShare = thisBalance / beneficiaryTotalShares;
        etherSpent[msg.sender] += msgValue;
        if (msgValue != msg.value){
            // Finally return any extra ETH sent.
            msg.sender.transfer(msg.value - msgValue); 
        }
    }
    
    function transfer(address _to, uint _value, bytes memory _data, string memory _function) public returns(bool ok){
        actualTransfer(msg.sender, _to, _value, _data, _function, true);
        return true;
    }
    
    function transfer(address _to, uint _value, bytes memory _data) public returns(bool ok){
        actualTransfer(msg.sender, _to, _value, _data, "", true);
        return true;
    }
    function transfer(address _to, uint _value) public returns(bool ok){
        actualTransfer(msg.sender, _to, _value, "", "", true);
        return true;
    }
    
    function approve(address _spender, uint _value) public returns (bool success) {
        allowances[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }
    function transferFrom(address _from, address _to, uint _value) public returns (bool success) {
        uint256 _allowance = allowances[_from][msg.sender];
        require(_allowance > 0, "Not approved");
        require(_allowance >= _value, "Over spending limit");
        allowances[_from][msg.sender] = _allowance.sub(_value);
        actualTransfer(_from, _to, _value, "", "", false);
        return true;
    }
    
    // --Public write functions--
     
    // --Public read-only functions
    function beneficiaryStash(address b) public view returns (uint256){
        uint256 withdrawAmount = beneficiaryWithdrawAmount[b];
        if (withdrawAmount == 0){
            return 0;
        }
        if (withdrawAmount == MAX_UINT256){
            return beneficiaryPayoutPerShare * beneficiaryShares[b];
        }
        return (beneficiaryPayoutPerShare * beneficiaryShares[b]) - withdrawAmount;
    }
    
    function allowance(address _sugardaddy, address _spender) public view returns (uint remaining) {
        return allowances[_sugardaddy][_spender];
    }
    
    // --Public read-only functions--
    
    
    
    // Internal functions
    
    function actualTransfer (address _from, address _to, uint _value, bytes memory _data, string memory _function, bool _careAboutHumanity) private {
        // You can only transfer this token after the ICO has ended.
        require(icoFunding != 0 || address(this).balance >= fundingCap || block.timestamp >= IcoEndTime, "ICO hasn't ended");
        require(balanceOf[_from] >= _value, "Insufficient balance");
        require(_to != address(this), "You can't sell back your tokens");
        
        // Throwing an exception undos all changes. Otherwise changing the balance now would be a shitshow
        balanceOf[_from] = balanceOf[_from].sub(_value);
        balanceOf[_to] = balanceOf[_to].add(_value);
        
        if(_careAboutHumanity && isContract(_to)) {
            if (bytes(_function).length == 0){
                ERC223Handler receiver = ERC223Handler(_to);
                receiver.tokenFallback(_from, _value, _data);
            }else{
                bool success;
                bytes memory returnData;
                (success, returnData) = _to.call.value(0)(abi.encodeWithSignature(_function, _from, _value, _data));
                assert(success);
            }
        }
        emit Transfer(_from, _to, _value, _data);
        emit Transfer(_from, _to, _value);
    }
    
    //assemble the given address bytecode. If bytecode exists then the _addr is a contract.
    function isContract(address _addr) private view returns (bool is_contract) {
        uint length;
        assembly {
            //retrieve the size of the code on target address, this needs assembly
            length := extcodesize(_addr)
        }
        return (length>0);
    }
    
    function min(uint256 i1, uint256 i2) private pure returns (uint256) {
        if (i1 < i2){
            return i1;
        }
        return i2;
    }
}

/**
 * @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) {
        if (a == 0 || b == 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;
    }
}

Contract Security Audit

Contract ABI

[{"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":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"beneficiaryPayoutPerShare","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"withdrawFunding","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"etherSpent","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"b","type":"address"}],"name":"beneficiaryStash","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"b","type":"address"},{"name":"shares","type":"uint256"}],"name":"removeBeneficiary","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"b","type":"address"},{"name":"shares","type":"uint256"}],"name":"addBeneficiary","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"ok","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"transfer","outputs":[{"name":"ok","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"icoFunding","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"IcoEndTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"beneficiaryShares","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sugardaddy","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"beneficiaryTotalShares","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"fundingCap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"IcoStartTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptNewOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"o","type":"address"}],"name":"setNewOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"},{"name":"_function","type":"string"}],"name":"transfer","outputs":[{"name":"ok","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_s","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"tokenOwner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"tokens","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"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":true,"name":"data","type":"bytes"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"},{"indexed":false,"name":"bonusTokens","type":"uint256"}],"name":"onICOBuy","type":"event"}]

608060405234801561001057600080fd5b50604051602080611ae58339810180604052602081101561003057600080fd5b505160028054600160a060020a03909216600160a060020a03199283161790556000600b819055805490911633179055611a768061006f6000396000f3fe608060405260043610610183576000357c01000000000000000000000000000000000000000000000000000000009004806396074e70116100ee578063dd62ed3e116100a7578063ec6f509e11610081578063ec6f509e14610a89578063f05a781d14610a9e578063f5a1f5b414610ab3578063f6368f8a14610ae657610183565b8063dd62ed3e14610a24578063dd68620314610a5f578063e3b2594f14610a7457610183565b806396074e701461088d578063a9059cbb146108c6578063be45fd62146108ff578063c0a8d117146109c7578063c90f4999146109dc578063dbe6e987146109f157610183565b80633697f055116101405780633697f0551461077a5780635915b6df146107a6578063650944a6146107d957806370a082311461080c5780637ba64e401461083f57806395d89b411461087857610183565b806306fdde03146105f9578063095ea7b31461068357806318160ddd146106d057806323b872dd146106f757806325c0ce781461073a578063313ce5671461074f575b635c2fad304210156101df576040805160e560020a62461bcd02815260206004820152601660248201527f49434f206861736e277420737461727465642079657400000000000000000000604482015290519081900360640190fd5b6007541580156101f25750635c64693042105b1515610248576040805160e560020a62461bcd02815260206004820152600d60248201527f49434f2068617320656e64656400000000000000000000000000000000000000604482015290519081900360640190fd5b341580159061025d5750655af3107a40003406155b15156102b3576040805160e560020a62461bcd02815260206004820181905260248201527f4d7573742062652061206d756c7469706c65206f6620302e3030303120455448604482015290519081900360640190fd5b303134686c6b935b8bbd40000082111561033957819003686c6b935b8bbd4000000180151561032c576040805160e560020a62461bcd02815260206004820152601c60248201527f46756e64696e672063617020686173206265656e207265616368656400000000604482015290519081900360640190fd5b686c6b935b8bbd40000091505b808203670de0b6b3a7640000655af3107a40008304026000805b8584101561041157681b1ae4d6e2ef5000008410156103b15783610380681b1ae4d6e2ef50000088610c35565b0390506002655af3107a4000825b04670de0b6b3a7640000028115156103a257fe5b0482019150808401935061040c565b6843c33c1937564800008410156103e857836103d66843c33c19375648000088610c35565b0390506005655af3107a40008261038e565b50828503600a670de0b6b3a7640000655af3107a4000830402048201915080840193505b610353565b6040805184815260208101849052815133927f86e3ea821331e888de572e938c2a34a0a3c731a6b531e01d410c76a221ec0e04928290030190a233600090815260086020526040902080549383019384019055600b805484019055600254600160a060020a03161561050257600254604080517f589e74be000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051600160a060020a039092169163589e74be9160448082019260009290919082900301818387803b1580156104e957600080fd5b505af11580156104fd573d6000803e3d6000fd5b505050505b6040805184815290517fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47091339130917fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c16919081900360200190a4604080518481529051339130917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a3600554868115156105a057fe5b046006553360009081526009602052604090208054860190553485146105f15760405133903487900380156108fc02916000818181858888f193505050501580156105ef573d6000803e3d6000fd5b505b505050505050005b34801561060557600080fd5b5061060e610c4f565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610648578181015183820152602001610630565b50505050905090810190601f1680156106755780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561068f57600080fd5b506106bc600480360360408110156106a657600080fd5b50600160a060020a038135169060200135610c86565b604080519115158252519081900360200190f35b3480156106dc57600080fd5b506106e5610cec565b60408051918252519081900360200190f35b34801561070357600080fd5b506106bc6004803603606081101561071a57600080fd5b50600160a060020a03813581169160208101359091169060400135610cf2565b34801561074657600080fd5b506106e5610e2c565b34801561075b57600080fd5b50610764610e32565b6040805160ff9092168252519081900360200190f35b34801561078657600080fd5b506107a46004803603602081101561079d57600080fd5b5035610e37565b005b3480156107b257600080fd5b506106e5600480360360208110156107c957600080fd5b5035600160a060020a0316610ffc565b3480156107e557600080fd5b506106e5600480360360208110156107fc57600080fd5b5035600160a060020a031661100e565b34801561081857600080fd5b506106e56004803603602081101561082f57600080fd5b5035600160a060020a031661108c565b34801561084b57600080fd5b506107a46004803603604081101561086257600080fd5b50600160a060020a03813516906020013561109e565b34801561088457600080fd5b5061060e6111b2565b34801561089957600080fd5b506107a4600480360360408110156108b057600080fd5b50600160a060020a0381351690602001356111e9565b3480156108d257600080fd5b506106bc600480360360408110156108e957600080fd5b50600160a060020a0381351690602001356112ff565b34801561090b57600080fd5b506106bc6004803603606081101561092257600080fd5b600160a060020a038235169160208101359181019060608101604082013564010000000081111561095257600080fd5b82018360208201111561096457600080fd5b8035906020019184600183028401116401000000008311171561098657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611339945050505050565b3480156109d357600080fd5b506106e5611364565b3480156109e857600080fd5b506106e561136a565b3480156109fd57600080fd5b506106e560048036036020811015610a1457600080fd5b5035600160a060020a0316611372565b348015610a3057600080fd5b506106e560048036036040811015610a4757600080fd5b50600160a060020a0381358116916020013516611384565b348015610a6b57600080fd5b506106e56113af565b348015610a8057600080fd5b506106e56113b5565b348015610a9557600080fd5b506106e56113c2565b348015610aaa57600080fd5b506107a46113ca565b348015610abf57600080fd5b506107a460048036036020811015610ad657600080fd5b5035600160a060020a0316611402565b348015610af257600080fd5b506106bc60048036036080811015610b0957600080fd5b600160a060020a0382351691602081013591810190606081016040820135640100000000811115610b3957600080fd5b820183602082011115610b4b57600080fd5b80359060200191846001830284011164010000000083111715610b6d57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050640100000000811115610bc057600080fd5b820183602082011115610bd257600080fd5b80359060200191846001830284011164010000000083111715610bf457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611448945050505050565b600081831015610c46575081610c49565b50805b92915050565b60408051808201909152600a81527f30786368616e2049434f00000000000000000000000000000000000000000000602082015281565b336000818152600a60209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b600b5481565b600160a060020a0383166000908152600a60209081526040808320338452909152812054818111610d6d576040805160e560020a62461bcd02815260206004820152600c60248201527f4e6f7420617070726f7665640000000000000000000000000000000000000000604482015290519081900360640190fd5b82811015610dc5576040805160e560020a62461bcd02815260206004820152601360248201527f4f766572207370656e64696e67206c696d697400000000000000000000000000604482015290519081900360640190fd5b610dd5818463ffffffff61145916565b600160a060020a0386166000908152600a60209081526040808320338452825280832093909355825180820184528281528351918201909352818152610e21928892889288929161146b565b506001949350505050565b60065481565b601281565b6007541515610eb957686c6b935b8bbd4000003031101580610e5d5750635c6469304210155b1515610eb3576040805160e560020a62461bcd02815260206004820152601060248201527f49434f206861736e277420656e64656400000000000000000000000000000000604482015290519081900360640190fd5b30316007555b3360009081526003602052604081205411610f1e576040805160e560020a62461bcd02815260206004820152601860248201527f596f75277265206e6f7420612062656e65666963696172790000000000000000604482015290519081900360640190fd5b6000610f293361100e565b9050808210610f835733600081815260046020908152604080832054600654600390935281842092029091555183156108fc0291849190818181858888f19350505050158015610f7d573d6000803e3d6000fd5b50610ff8565b336000908152600360205260409020546000191415610fb357336000908152600360205260409020829055610fc9565b3360009081526003602052604090208054830190555b604051339083156108fc029084906000818181858888f19350505050158015610ff6573d6000803e3d6000fd5b505b5050565b60096020526000908152604090205481565b600160a060020a038116600090815260036020526040812054801515611038576000915050611087565b600019811415611066575050600160a060020a03811660009081526004602052604090205460065402611087565b600160a060020a038316600090815260046020526040902054600654020390505b919050565b60086020526000908152604090205481565b600054600160a060020a031633146110b557600080fd5b635c2fad304210611110576040805160e560020a62461bcd02815260206004820152600f60248201527f49434f2068617320737461727465640000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a038216600090815260036020526040902054151561117f576040805160e560020a62461bcd02815260206004820152601160248201527f4e6f7420612062656e6566696369617279000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a039091166000908152600360209081526040808320839055600490915281205560058054919091039055565b60408051808201909152600381527f5a43490000000000000000000000000000000000000000000000000000000000602082015281565b600054600160a060020a0316331461120057600080fd5b635c2fad30421061125b576040805160e560020a62461bcd02815260206004820152600f60248201527f49434f2068617320737461727465640000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a038216600090815260036020526040902054156112c9576040805160e560020a62461bcd02815260206004820152601560248201527f416c726561647920612062656e65666963696172790000000000000000000000604482015290519081900360640190fd5b600160a060020a039091166000908152600360209081526040808320600019905560049091529020819055600580549091019055565b600061133033848460206040519081016040528060008152506020604051908101604052806000815250600161146b565b50600192915050565b600061135a338585856020604051908101604052806000815250600161146b565b5060019392505050565b60075481565b635c64693081565b60046020526000908152604090205481565b600160a060020a039182166000908152600a6020908152604080832093909416825291909152205490565b60055481565b686c6b935b8bbd40000081565b635c2fad3081565b600154600160a060020a031633146113e157600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff191633179055565b600054600160a060020a0316331461141957600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000610e213386868686600161146b565b60008282111561146557fe5b50900390565b6007541515806114855750686c6b935b8bbd400000303110155b806114945750635c6469304210155b15156114ea576040805160e560020a62461bcd02815260206004820152601060248201527f49434f206861736e277420656e64656400000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a03861660009081526008602052604090205484111561155a576040805160e560020a62461bcd02815260206004820152601460248201527f496e73756666696369656e742062616c616e6365000000000000000000000000604482015290519081900360640190fd5b600160a060020a0385163014156115bb576040805160e560020a62461bcd02815260206004820152601f60248201527f596f752063616e27742073656c6c206261636b20796f757220746f6b656e7300604482015290519081900360640190fd5b600160a060020a0386166000908152600860205260409020546115e4908563ffffffff61145916565b600160a060020a038088166000908152600860205260408082209390935590871681522054611619908563ffffffff611a3516565b600160a060020a038616600090815260086020526040902055808015611643575061164385611a42565b156119495781511515611746576040517fc0ee0b8a000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483019081526024830187905260606044840190815286516064850152865189949385169363c0ee0b8a938c938b938b9360840190602085019080838360005b838110156116da5781810151838201526020016116c2565b50505050905090810190601f1680156117075780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561172857600080fd5b505af115801561173c573d6000803e3d6000fd5b5050505050611949565b6000606086600160a060020a03166000858a89896040516024018084600160a060020a0316600160a060020a0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156117b85781810151838201526020016117a0565b50505050905090810190601f1680156117e55780820380516001836020036101000a031916815260200191505b50945050505050604051602081830303815290604052906040518082805190602001908083835b6020831061182b5780518252601f19909201916020918201910161180c565b51815160001960209485036101000a01908116901991909116179052604080519490920184900390932092860180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090941693909317835251855190945084935090508083835b602083106118d05780518252601f1990920191602091820191016118b1565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114611932576040519150601f19603f3d011682016040523d82523d6000602084013e611937565b606091505b50909250905081151561194657fe5b50505b826040518082805190602001908083835b602083106119795780518252601f19909201916020918201910161195a565b51815160209384036101000a6000190180199092169116179052604080519290940182900382208a83529351939550600160a060020a038b811695508c16937fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c169350918290030190a484600160a060020a031686600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a3505050505050565b81810182811015610c4957fe5b6000903b119056fea165627a7a72305820c764b85cb4f8aaadac100943d3aefdee4864b76aaeef96ff6713832741165e8400290000000000000000000000007ea3243fda451d34fd1127add91a8e9a73168ff9

Deployed Bytecode

0x608060405260043610610183576000357c01000000000000000000000000000000000000000000000000000000009004806396074e70116100ee578063dd62ed3e116100a7578063ec6f509e11610081578063ec6f509e14610a89578063f05a781d14610a9e578063f5a1f5b414610ab3578063f6368f8a14610ae657610183565b8063dd62ed3e14610a24578063dd68620314610a5f578063e3b2594f14610a7457610183565b806396074e701461088d578063a9059cbb146108c6578063be45fd62146108ff578063c0a8d117146109c7578063c90f4999146109dc578063dbe6e987146109f157610183565b80633697f055116101405780633697f0551461077a5780635915b6df146107a6578063650944a6146107d957806370a082311461080c5780637ba64e401461083f57806395d89b411461087857610183565b806306fdde03146105f9578063095ea7b31461068357806318160ddd146106d057806323b872dd146106f757806325c0ce781461073a578063313ce5671461074f575b635c2fad304210156101df576040805160e560020a62461bcd02815260206004820152601660248201527f49434f206861736e277420737461727465642079657400000000000000000000604482015290519081900360640190fd5b6007541580156101f25750635c64693042105b1515610248576040805160e560020a62461bcd02815260206004820152600d60248201527f49434f2068617320656e64656400000000000000000000000000000000000000604482015290519081900360640190fd5b341580159061025d5750655af3107a40003406155b15156102b3576040805160e560020a62461bcd02815260206004820181905260248201527f4d7573742062652061206d756c7469706c65206f6620302e3030303120455448604482015290519081900360640190fd5b303134686c6b935b8bbd40000082111561033957819003686c6b935b8bbd4000000180151561032c576040805160e560020a62461bcd02815260206004820152601c60248201527f46756e64696e672063617020686173206265656e207265616368656400000000604482015290519081900360640190fd5b686c6b935b8bbd40000091505b808203670de0b6b3a7640000655af3107a40008304026000805b8584101561041157681b1ae4d6e2ef5000008410156103b15783610380681b1ae4d6e2ef50000088610c35565b0390506002655af3107a4000825b04670de0b6b3a7640000028115156103a257fe5b0482019150808401935061040c565b6843c33c1937564800008410156103e857836103d66843c33c19375648000088610c35565b0390506005655af3107a40008261038e565b50828503600a670de0b6b3a7640000655af3107a4000830402048201915080840193505b610353565b6040805184815260208101849052815133927f86e3ea821331e888de572e938c2a34a0a3c731a6b531e01d410c76a221ec0e04928290030190a233600090815260086020526040902080549383019384019055600b805484019055600254600160a060020a03161561050257600254604080517f589e74be000000000000000000000000000000000000000000000000000000008152336004820152602481018890529051600160a060020a039092169163589e74be9160448082019260009290919082900301818387803b1580156104e957600080fd5b505af11580156104fd573d6000803e3d6000fd5b505050505b6040805184815290517fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47091339130917fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c16919081900360200190a4604080518481529051339130917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a3600554868115156105a057fe5b046006553360009081526009602052604090208054860190553485146105f15760405133903487900380156108fc02916000818181858888f193505050501580156105ef573d6000803e3d6000fd5b505b505050505050005b34801561060557600080fd5b5061060e610c4f565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610648578181015183820152602001610630565b50505050905090810190601f1680156106755780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561068f57600080fd5b506106bc600480360360408110156106a657600080fd5b50600160a060020a038135169060200135610c86565b604080519115158252519081900360200190f35b3480156106dc57600080fd5b506106e5610cec565b60408051918252519081900360200190f35b34801561070357600080fd5b506106bc6004803603606081101561071a57600080fd5b50600160a060020a03813581169160208101359091169060400135610cf2565b34801561074657600080fd5b506106e5610e2c565b34801561075b57600080fd5b50610764610e32565b6040805160ff9092168252519081900360200190f35b34801561078657600080fd5b506107a46004803603602081101561079d57600080fd5b5035610e37565b005b3480156107b257600080fd5b506106e5600480360360208110156107c957600080fd5b5035600160a060020a0316610ffc565b3480156107e557600080fd5b506106e5600480360360208110156107fc57600080fd5b5035600160a060020a031661100e565b34801561081857600080fd5b506106e56004803603602081101561082f57600080fd5b5035600160a060020a031661108c565b34801561084b57600080fd5b506107a46004803603604081101561086257600080fd5b50600160a060020a03813516906020013561109e565b34801561088457600080fd5b5061060e6111b2565b34801561089957600080fd5b506107a4600480360360408110156108b057600080fd5b50600160a060020a0381351690602001356111e9565b3480156108d257600080fd5b506106bc600480360360408110156108e957600080fd5b50600160a060020a0381351690602001356112ff565b34801561090b57600080fd5b506106bc6004803603606081101561092257600080fd5b600160a060020a038235169160208101359181019060608101604082013564010000000081111561095257600080fd5b82018360208201111561096457600080fd5b8035906020019184600183028401116401000000008311171561098657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611339945050505050565b3480156109d357600080fd5b506106e5611364565b3480156109e857600080fd5b506106e561136a565b3480156109fd57600080fd5b506106e560048036036020811015610a1457600080fd5b5035600160a060020a0316611372565b348015610a3057600080fd5b506106e560048036036040811015610a4757600080fd5b50600160a060020a0381358116916020013516611384565b348015610a6b57600080fd5b506106e56113af565b348015610a8057600080fd5b506106e56113b5565b348015610a9557600080fd5b506106e56113c2565b348015610aaa57600080fd5b506107a46113ca565b348015610abf57600080fd5b506107a460048036036020811015610ad657600080fd5b5035600160a060020a0316611402565b348015610af257600080fd5b506106bc60048036036080811015610b0957600080fd5b600160a060020a0382351691602081013591810190606081016040820135640100000000811115610b3957600080fd5b820183602082011115610b4b57600080fd5b80359060200191846001830284011164010000000083111715610b6d57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050640100000000811115610bc057600080fd5b820183602082011115610bd257600080fd5b80359060200191846001830284011164010000000083111715610bf457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611448945050505050565b600081831015610c46575081610c49565b50805b92915050565b60408051808201909152600a81527f30786368616e2049434f00000000000000000000000000000000000000000000602082015281565b336000818152600a60209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b600b5481565b600160a060020a0383166000908152600a60209081526040808320338452909152812054818111610d6d576040805160e560020a62461bcd02815260206004820152600c60248201527f4e6f7420617070726f7665640000000000000000000000000000000000000000604482015290519081900360640190fd5b82811015610dc5576040805160e560020a62461bcd02815260206004820152601360248201527f4f766572207370656e64696e67206c696d697400000000000000000000000000604482015290519081900360640190fd5b610dd5818463ffffffff61145916565b600160a060020a0386166000908152600a60209081526040808320338452825280832093909355825180820184528281528351918201909352818152610e21928892889288929161146b565b506001949350505050565b60065481565b601281565b6007541515610eb957686c6b935b8bbd4000003031101580610e5d5750635c6469304210155b1515610eb3576040805160e560020a62461bcd02815260206004820152601060248201527f49434f206861736e277420656e64656400000000000000000000000000000000604482015290519081900360640190fd5b30316007555b3360009081526003602052604081205411610f1e576040805160e560020a62461bcd02815260206004820152601860248201527f596f75277265206e6f7420612062656e65666963696172790000000000000000604482015290519081900360640190fd5b6000610f293361100e565b9050808210610f835733600081815260046020908152604080832054600654600390935281842092029091555183156108fc0291849190818181858888f19350505050158015610f7d573d6000803e3d6000fd5b50610ff8565b336000908152600360205260409020546000191415610fb357336000908152600360205260409020829055610fc9565b3360009081526003602052604090208054830190555b604051339083156108fc029084906000818181858888f19350505050158015610ff6573d6000803e3d6000fd5b505b5050565b60096020526000908152604090205481565b600160a060020a038116600090815260036020526040812054801515611038576000915050611087565b600019811415611066575050600160a060020a03811660009081526004602052604090205460065402611087565b600160a060020a038316600090815260046020526040902054600654020390505b919050565b60086020526000908152604090205481565b600054600160a060020a031633146110b557600080fd5b635c2fad304210611110576040805160e560020a62461bcd02815260206004820152600f60248201527f49434f2068617320737461727465640000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a038216600090815260036020526040902054151561117f576040805160e560020a62461bcd02815260206004820152601160248201527f4e6f7420612062656e6566696369617279000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a039091166000908152600360209081526040808320839055600490915281205560058054919091039055565b60408051808201909152600381527f5a43490000000000000000000000000000000000000000000000000000000000602082015281565b600054600160a060020a0316331461120057600080fd5b635c2fad30421061125b576040805160e560020a62461bcd02815260206004820152600f60248201527f49434f2068617320737461727465640000000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a038216600090815260036020526040902054156112c9576040805160e560020a62461bcd02815260206004820152601560248201527f416c726561647920612062656e65666963696172790000000000000000000000604482015290519081900360640190fd5b600160a060020a039091166000908152600360209081526040808320600019905560049091529020819055600580549091019055565b600061133033848460206040519081016040528060008152506020604051908101604052806000815250600161146b565b50600192915050565b600061135a338585856020604051908101604052806000815250600161146b565b5060019392505050565b60075481565b635c64693081565b60046020526000908152604090205481565b600160a060020a039182166000908152600a6020908152604080832093909416825291909152205490565b60055481565b686c6b935b8bbd40000081565b635c2fad3081565b600154600160a060020a031633146113e157600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff191633179055565b600054600160a060020a0316331461141957600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000610e213386868686600161146b565b60008282111561146557fe5b50900390565b6007541515806114855750686c6b935b8bbd400000303110155b806114945750635c6469304210155b15156114ea576040805160e560020a62461bcd02815260206004820152601060248201527f49434f206861736e277420656e64656400000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a03861660009081526008602052604090205484111561155a576040805160e560020a62461bcd02815260206004820152601460248201527f496e73756666696369656e742062616c616e6365000000000000000000000000604482015290519081900360640190fd5b600160a060020a0385163014156115bb576040805160e560020a62461bcd02815260206004820152601f60248201527f596f752063616e27742073656c6c206261636b20796f757220746f6b656e7300604482015290519081900360640190fd5b600160a060020a0386166000908152600860205260409020546115e4908563ffffffff61145916565b600160a060020a038088166000908152600860205260408082209390935590871681522054611619908563ffffffff611a3516565b600160a060020a038616600090815260086020526040902055808015611643575061164385611a42565b156119495781511515611746576040517fc0ee0b8a000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483019081526024830187905260606044840190815286516064850152865189949385169363c0ee0b8a938c938b938b9360840190602085019080838360005b838110156116da5781810151838201526020016116c2565b50505050905090810190601f1680156117075780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561172857600080fd5b505af115801561173c573d6000803e3d6000fd5b5050505050611949565b6000606086600160a060020a03166000858a89896040516024018084600160a060020a0316600160a060020a0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156117b85781810151838201526020016117a0565b50505050905090810190601f1680156117e55780820380516001836020036101000a031916815260200191505b50945050505050604051602081830303815290604052906040518082805190602001908083835b6020831061182b5780518252601f19909201916020918201910161180c565b51815160001960209485036101000a01908116901991909116179052604080519490920184900390932092860180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090941693909317835251855190945084935090508083835b602083106118d05780518252601f1990920191602091820191016118b1565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114611932576040519150601f19603f3d011682016040523d82523d6000602084013e611937565b606091505b50909250905081151561194657fe5b50505b826040518082805190602001908083835b602083106119795780518252601f19909201916020918201910161195a565b51815160209384036101000a6000190180199092169116179052604080519290940182900382208a83529351939550600160a060020a038b811695508c16937fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c169350918290030190a484600160a060020a031686600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a3505050505050565b81810182811015610c4957fe5b6000903b119056fea165627a7a72305820c764b85cb4f8aaadac100943d3aefdee4864b76aaeef96ff6713832741165e840029

Swarm Source

bzzr://c764b85cb4f8aaadac100943d3aefdee4864b76aaeef96ff6713832741165e84
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.