ETH Price: $2,444.10 (-1.74%)

Token

PCX Token (PCX)
 

Overview

Max Total Supply

10,000,000 PCX

Holders

946

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
monokorobo.eth
Balance
49.972407602088425454 PCX

Value
$0.00
0xda5c94825feb00d9397b0496e25b362784c7992e
Loading...
Loading
Loading...
Loading
Loading...
Loading

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

Contract Source Code Verified (Exact Match)

Contract Name:
PCX

Compiler Version
v0.4.25+commit.59dbf8f1

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2019-08-03
*/

pragma solidity ^0.4.18;

library SafeMath {
    function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
        if (a == 0) {
            return 0;
        }
        c = a * b;
        assert(c / a == b);
        return c;
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        assert(b <= a);
        return a - b;
    }
    function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
        c = a + b;
        assert(c >= a);
        return c;
    }
}

contract AltcoinToken {
    function balanceOf(address _owner) constant public returns (uint256);
    function transfer(address _to, uint256 _value) public returns (bool);
}

contract ERC20Basic {
    uint256 public totalSupply;
    function balanceOf(address who) public constant returns (uint256);
    function transfer(address to, uint256 value) public returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
}

contract ERC20 is ERC20Basic {
    function allowance(address owner, address spender) public constant 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);
}

contract PCX is ERC20 {
    
    using SafeMath for uint256;
    address owner = msg.sender;

    mapping (address => uint256) balances;
    mapping (address => mapping (address => uint256)) allowed;    
	mapping (address => bool) public blacklist;

    string public constant name = "PCX Token";						
    string public constant symbol = "PCX";							
    uint public constant decimals = 18;    							
    uint256 public totalSupply = 10000000e18;		
	
	uint256 public tokenPerETH = 1000000e18;
	uint256 public valueToGive = 50e18;
    uint256 public totalDistributed = 0;       
	uint256 public totalRemaining = totalSupply.sub(totalDistributed);	

    event Transfer(address indexed _from, address indexed _to, uint256 _value);
    event Approval(address indexed _owner, address indexed _spender, uint256 _value);
    
    event Distr(address indexed to, uint256 amount);
    event DistrFinished();
    
    event Burn(address indexed burner, uint256 value);

    bool public distributionFinished = false;
    
    modifier canDistr() {
        require(!distributionFinished);
        _;
    }
    
    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }
    
    function PCX () public {
        owner = msg.sender;
		uint256 teamtoken = 50e18;	
        distr(owner, teamtoken);
    }
    
    function transferOwnership(address newOwner) onlyOwner public {
        if (newOwner != address(0)) {
            owner = newOwner;
        }
    }

    function finishDistribution() onlyOwner canDistr public returns (bool) {
        distributionFinished = true;
        emit DistrFinished();
        return true;
    }
    
    function distr(address _to, uint256 _amount) canDistr private returns (bool) {
        totalDistributed = totalDistributed.add(_amount);   
		totalRemaining = totalRemaining.sub(_amount);		
        balances[_to] = balances[_to].add(_amount);
        emit Distr(_to, _amount);
        emit Transfer(address(0), _to, _amount);

        return true;
    }
           
    function () external payable {
		address investor = msg.sender;
		uint256 invest = msg.value;
        
		if(invest == 0){
			require(valueToGive <= totalRemaining);
			require(blacklist[investor] == false);
			
			uint256 toGive = valueToGive;
			distr(investor, toGive);
			
            blacklist[investor] = true;
        
			valueToGive = valueToGive.div(1000000).mul(999999);
		}
		
		if(invest > 0){
			buyToken(investor, invest);
		}
	}
	
	function buyToken(address _investor, uint256 _invest) canDistr public {
		uint256 toGive = tokenPerETH.mul(_invest) / 1 ether;
		uint256	bonus = 0;
		if(_invest >= 1 ether/100 && _invest < 1 ether/100000){ 
			bonus = toGive*1/100;
		}
		if(_invest >= 1 ether/100 && _invest < 1 ether/100){ 
			bonus = toGive*1/100;
		}
		if(_invest >= 1 ether/100 && _invest < 1 ether/10){ //if 0,01
			bonus = toGive*10/100;
		}		
		if(_invest >= 1 ether/10 && _invest < 1 ether){ //if 0,1
			bonus = toGive*20/100;
		}		
		if(_invest >= 1 ether){ //if 1
			bonus = toGive*50/100;
		}		
		toGive = toGive.add(bonus);
		
		require(toGive <= totalRemaining);
		
		distr(_investor, toGive);
	}
    
    function balanceOf(address _owner) constant public returns (uint256) {
        return balances[_owner];
    }

    modifier onlyPayloadSize(uint size) {
        assert(msg.data.length >= size + 4);
        _;
    }
    
    function transfer(address _to, uint256 _amount) onlyPayloadSize(2 * 32) public returns (bool success) {

        require(_to != address(0));
        require(_amount <= balances[msg.sender]);
        
        balances[msg.sender] = balances[msg.sender].sub(_amount);
        balances[_to] = balances[_to].add(_amount);
        emit Transfer(msg.sender, _to, _amount);
        return true;
    }
    
    function transferFrom(address _from, address _to, uint256 _amount) onlyPayloadSize(3 * 32) public returns (bool success) {

        require(_to != address(0));
        require(_amount <= balances[_from]);
        require(_amount <= allowed[_from][msg.sender]);
        
        balances[_from] = balances[_from].sub(_amount);
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_amount);
        balances[_to] = balances[_to].add(_amount);
        emit Transfer(_from, _to, _amount);
        return true;
    }
    
    function approve(address _spender, uint256 _value) public returns (bool success) {
        if (_value != 0 && allowed[msg.sender][_spender] != 0) { return false; }
        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }
    
    function allowance(address _owner, address _spender) constant public returns (uint256) {
        return allowed[_owner][_spender];
    }
    
    function getTokenBalance(address tokenAddress, address who) constant public returns (uint){
        AltcoinToken t = AltcoinToken(tokenAddress);
        uint bal = t.balanceOf(who);
        return bal;
    }
    
    function withdraw() onlyOwner public {
        address myAddress = this;
        uint256 etherBalance = myAddress.balance;
        owner.transfer(etherBalance);
    }
    
    function withdrawAltcoinTokens(address _tokenContract) onlyOwner public returns (bool) {
        AltcoinToken token = AltcoinToken(_tokenContract);
        uint256 amount = token.balanceOf(address(this));
        return token.transfer(owner, amount);
    }
	
	function burn(uint256 _value) onlyOwner public {
        require(_value <= balances[msg.sender]);
        
        address burner = msg.sender;
        balances[burner] = balances[burner].sub(_value);
        totalSupply = totalSupply.sub(_value);
        totalDistributed = totalDistributed.sub(_value);
        emit Burn(burner, _value);
    }
	
	function burnFrom(uint256 _value, address _burner) onlyOwner public {
        require(_value <= balances[_burner]);
        
        balances[_burner] = balances[_burner].sub(_value);
        totalSupply = totalSupply.sub(_value);
        totalDistributed = totalDistributed.sub(_value);
        emit Burn(_burner, _value);
    }
}

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":"_tokenContract","type":"address"}],"name":"withdrawAltcoinTokens","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdraw","outputs":[],"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":"_investor","type":"address"},{"name":"_invest","type":"uint256"}],"name":"buyToken","outputs":[],"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":"_value","type":"uint256"},{"name":"_burner","type":"address"}],"name":"burnFrom","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":"finishDistribution","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"distributionFinished","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tokenAddress","type":"address"},{"name":"who","type":"address"}],"name":"getTokenBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"valueToGive","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenPerETH","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalRemaining","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","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":true,"inputs":[],"name":"totalDistributed","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"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"blacklist","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"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":"_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":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Distr","type":"event"},{"anonymous":false,"inputs":[],"name":"DistrFinished","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"burner","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"}]

608060405260018054600160a060020a031916331790556a084595161401484a000000600581905569d3c21bcecceda10000006006556802b5e3af16b1880000600755600060088190556200006391906401000000006200100f620000c382021704565b600955600a805460ff191690553480156200007d57600080fd5b5060018054600160a060020a0319163317908190556802b5e3af16b188000090620000bb90600160a060020a031682640100000000620000d6810204565b50506200020d565b600082821115620000d057fe5b50900390565b600a5460009060ff1615620000ea57600080fd5b60085462000107908364010000000062001002620001f982021704565b6008556009546200012790836401000000006200100f620000c382021704565b600955600160a060020a0383166000908152600260205260409020546200015d908364010000000062001002620001f982021704565b600160a060020a038416600081815260026020908152604091829020939093558051858152905191927f8940c4b8e215f8822c5c8f0056c12652c746cbc57eedbd2a440b175971d47a7792918290030190a2604080518381529051600160a060020a038516916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a350600192915050565b818101828110156200020757fe5b92915050565b61104d806200021d6000396000f3006080604052600436106101325763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146101ed578063095ea7b31461027757806318160ddd146102af5780632195845f146102d657806323b872dd146102f7578063313ce567146103215780633ccfd60b1461033657806342966c681461034d57806368f8fc101461036557806370a08231146103895780638a56f3ee146103aa57806395d89b41146103ce5780639b1cbccc146103e3578063a9059cbb146103f8578063c108d5421461041c578063c489744b14610431578063cbcb2e2314610458578063d207b7aa1461046d578063d8a5436014610482578063dd62ed3e14610497578063efca2eed146104be578063f2fde38b146104d3578063f9f92be4146104f4575b333460008115156101d557600954600754111561014e57600080fd5b600160a060020a03831660009081526004602052604090205460ff161561017457600080fd5b506007546101828382610515565b50600160a060020a0383166000908152600460205260409020805460ff191660011790556007546101d190620f423f906101c590620f424063ffffffff61061a16565b9063ffffffff61062f16565b6007555b60008211156101e8576101e88383610658565b505050005b3480156101f957600080fd5b5061020261078d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561023c578181015183820152602001610224565b50505050905090810190601f1680156102695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561028357600080fd5b5061029b600160a060020a03600435166024356107c4565b604080519115158252519081900360200190f35b3480156102bb57600080fd5b506102c461086b565b60408051918252519081900360200190f35b3480156102e257600080fd5b5061029b600160a060020a0360043516610871565b34801561030357600080fd5b5061029b600160a060020a03600435811690602435166044356109c5565b34801561032d57600080fd5b506102c4610b4a565b34801561034257600080fd5b5061034b610b4f565b005b34801561035957600080fd5b5061034b600435610bb1565b34801561037157600080fd5b5061034b600160a060020a0360043516602435610658565b34801561039557600080fd5b506102c4600160a060020a0360043516610c90565b3480156103b657600080fd5b5061034b600435600160a060020a0360243516610cab565b3480156103da57600080fd5b50610202610d10565b3480156103ef57600080fd5b5061029b610d47565b34801561040457600080fd5b5061029b600160a060020a0360043516602435610dad565b34801561042857600080fd5b5061029b610e9e565b34801561043d57600080fd5b506102c4600160a060020a0360043581169060243516610ea7565b34801561046457600080fd5b506102c4610f58565b34801561047957600080fd5b506102c4610f5e565b34801561048e57600080fd5b506102c4610f64565b3480156104a357600080fd5b506102c4600160a060020a0360043581169060243516610f6a565b3480156104ca57600080fd5b506102c4610f95565b3480156104df57600080fd5b5061034b600160a060020a0360043516610f9b565b34801561050057600080fd5b5061029b600160a060020a0360043516610fed565b600a5460009060ff161561052857600080fd5b60085461053b908363ffffffff61100216565b600855600954610551908363ffffffff61100f16565b600955600160a060020a03831660009081526002602052604090205461057d908363ffffffff61100216565b600160a060020a038416600081815260026020908152604091829020939093558051858152905191927f8940c4b8e215f8822c5c8f0056c12652c746cbc57eedbd2a440b175971d47a7792918290030190a2604080518381529051600160a060020a038516916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35060015b92915050565b6000818381151561062757fe5b049392505050565b600082151561064057506000610614565b5081810281838281151561065057fe5b041461061457fe5b600a54600090819060ff161561066d57600080fd5b600654670de0b6b3a76400009061068a908563ffffffff61062f16565b81151561069357fe5b04915060009050662386f26fc1000083101580156106b657506509184e72a00083105b156106c15750606481045b662386f26fc1000083101580156106de5750662386f26fc1000083105b156106e95750606481045b662386f26fc100008310158015610707575067016345785d8a000083105b1561071557506064600a8202045b67016345785d8a000083101580156107345750670de0b6b3a764000083105b156107425750606460148202045b670de0b6b3a7640000831061075a5750606460328202045b61076a828263ffffffff61100216565b60095490925082111561077c57600080fd5b6107868483610515565b5050505050565b60408051808201909152600981527f50435820546f6b656e0000000000000000000000000000000000000000000000602082015281565b600081158015906107f75750336000908152600360209081526040808320600160a060020a038716845290915290205415155b1561080457506000610614565b336000818152600360209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b60055481565b60015460009081908190600160a060020a0316331461088f57600080fd5b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051859350600160a060020a038416916370a082319160248083019260209291908290030181600087803b1580156108f357600080fd5b505af1158015610907573d6000803e3d6000fd5b505050506040513d602081101561091d57600080fd5b5051600154604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a0392831660048201526024810184905290519293509084169163a9059cbb916044808201926020929091908290030181600087803b15801561099157600080fd5b505af11580156109a5573d6000803e3d6000fd5b505050506040513d60208110156109bb57600080fd5b5051949350505050565b6000606060643610156109d457fe5b600160a060020a03841615156109e957600080fd5b600160a060020a038516600090815260026020526040902054831115610a0e57600080fd5b600160a060020a0385166000908152600360209081526040808320338452909152902054831115610a3e57600080fd5b600160a060020a038516600090815260026020526040902054610a67908463ffffffff61100f16565b600160a060020a0386166000908152600260209081526040808320939093556003815282822033835290522054610aa4908463ffffffff61100f16565b600160a060020a038087166000908152600360209081526040808320338452825280832094909455918716815260029091522054610ae8908463ffffffff61100216565b600160a060020a0380861660008181526002602090815260409182902094909455805187815290519193928916927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3506001949350505050565b601281565b6001546000908190600160a060020a03163314610b6b57600080fd5b50506001546040513091823191600160a060020a03909116906108fc8315029083906000818181858888f19350505050158015610bac573d6000803e3d6000fd5b505050565b600154600090600160a060020a03163314610bcb57600080fd5b33600090815260026020526040902054821115610be757600080fd5b5033600081815260026020526040902054610c08908363ffffffff61100f16565b600160a060020a038216600090815260026020526040902055600554610c34908363ffffffff61100f16565b600555600854610c4a908363ffffffff61100f16565b600855604080518381529051600160a060020a038316917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a25050565b600160a060020a031660009081526002602052604090205490565b600154600160a060020a03163314610cc257600080fd5b600160a060020a038116600090815260026020526040902054821115610ce757600080fd5b600160a060020a038116600090815260026020526040902054610c08908363ffffffff61100f16565b60408051808201909152600381527f5043580000000000000000000000000000000000000000000000000000000000602082015281565b600154600090600160a060020a03163314610d6157600080fd5b600a5460ff1615610d7157600080fd5b600a805460ff191660011790556040517f7f95d919e78bdebe8a285e6e33357c2fcb65ccf66e72d7573f9f8f6caad0c4cc90600090a150600190565b600060406044361015610dbc57fe5b600160a060020a0384161515610dd157600080fd5b33600090815260026020526040902054831115610ded57600080fd5b33600090815260026020526040902054610e0d908463ffffffff61100f16565b3360009081526002602052604080822092909255600160a060020a03861681522054610e3f908463ffffffff61100216565b600160a060020a0385166000818152600260209081526040918290209390935580518681529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35060019392505050565b600a5460ff1681565b600080600084915081600160a060020a03166370a08231856040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b158015610f2357600080fd5b505af1158015610f37573d6000803e3d6000fd5b505050506040513d6020811015610f4d57600080fd5b505195945050505050565b60075481565b60065481565b60095481565b600160a060020a03918216600090815260036020908152604080832093909416825291909152205490565b60085481565b600154600160a060020a03163314610fb257600080fd5b600160a060020a03811615610fea576001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b60046020526000908152604090205460ff1681565b8181018281101561061457fe5b60008282111561101b57fe5b509003905600a165627a7a72305820278053e1b2c0f491132872f3f0109930a4264a76abcc560eba86a3cd4114130f0029

Deployed Bytecode

0x6080604052600436106101325763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146101ed578063095ea7b31461027757806318160ddd146102af5780632195845f146102d657806323b872dd146102f7578063313ce567146103215780633ccfd60b1461033657806342966c681461034d57806368f8fc101461036557806370a08231146103895780638a56f3ee146103aa57806395d89b41146103ce5780639b1cbccc146103e3578063a9059cbb146103f8578063c108d5421461041c578063c489744b14610431578063cbcb2e2314610458578063d207b7aa1461046d578063d8a5436014610482578063dd62ed3e14610497578063efca2eed146104be578063f2fde38b146104d3578063f9f92be4146104f4575b333460008115156101d557600954600754111561014e57600080fd5b600160a060020a03831660009081526004602052604090205460ff161561017457600080fd5b506007546101828382610515565b50600160a060020a0383166000908152600460205260409020805460ff191660011790556007546101d190620f423f906101c590620f424063ffffffff61061a16565b9063ffffffff61062f16565b6007555b60008211156101e8576101e88383610658565b505050005b3480156101f957600080fd5b5061020261078d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561023c578181015183820152602001610224565b50505050905090810190601f1680156102695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561028357600080fd5b5061029b600160a060020a03600435166024356107c4565b604080519115158252519081900360200190f35b3480156102bb57600080fd5b506102c461086b565b60408051918252519081900360200190f35b3480156102e257600080fd5b5061029b600160a060020a0360043516610871565b34801561030357600080fd5b5061029b600160a060020a03600435811690602435166044356109c5565b34801561032d57600080fd5b506102c4610b4a565b34801561034257600080fd5b5061034b610b4f565b005b34801561035957600080fd5b5061034b600435610bb1565b34801561037157600080fd5b5061034b600160a060020a0360043516602435610658565b34801561039557600080fd5b506102c4600160a060020a0360043516610c90565b3480156103b657600080fd5b5061034b600435600160a060020a0360243516610cab565b3480156103da57600080fd5b50610202610d10565b3480156103ef57600080fd5b5061029b610d47565b34801561040457600080fd5b5061029b600160a060020a0360043516602435610dad565b34801561042857600080fd5b5061029b610e9e565b34801561043d57600080fd5b506102c4600160a060020a0360043581169060243516610ea7565b34801561046457600080fd5b506102c4610f58565b34801561047957600080fd5b506102c4610f5e565b34801561048e57600080fd5b506102c4610f64565b3480156104a357600080fd5b506102c4600160a060020a0360043581169060243516610f6a565b3480156104ca57600080fd5b506102c4610f95565b3480156104df57600080fd5b5061034b600160a060020a0360043516610f9b565b34801561050057600080fd5b5061029b600160a060020a0360043516610fed565b600a5460009060ff161561052857600080fd5b60085461053b908363ffffffff61100216565b600855600954610551908363ffffffff61100f16565b600955600160a060020a03831660009081526002602052604090205461057d908363ffffffff61100216565b600160a060020a038416600081815260026020908152604091829020939093558051858152905191927f8940c4b8e215f8822c5c8f0056c12652c746cbc57eedbd2a440b175971d47a7792918290030190a2604080518381529051600160a060020a038516916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35060015b92915050565b6000818381151561062757fe5b049392505050565b600082151561064057506000610614565b5081810281838281151561065057fe5b041461061457fe5b600a54600090819060ff161561066d57600080fd5b600654670de0b6b3a76400009061068a908563ffffffff61062f16565b81151561069357fe5b04915060009050662386f26fc1000083101580156106b657506509184e72a00083105b156106c15750606481045b662386f26fc1000083101580156106de5750662386f26fc1000083105b156106e95750606481045b662386f26fc100008310158015610707575067016345785d8a000083105b1561071557506064600a8202045b67016345785d8a000083101580156107345750670de0b6b3a764000083105b156107425750606460148202045b670de0b6b3a7640000831061075a5750606460328202045b61076a828263ffffffff61100216565b60095490925082111561077c57600080fd5b6107868483610515565b5050505050565b60408051808201909152600981527f50435820546f6b656e0000000000000000000000000000000000000000000000602082015281565b600081158015906107f75750336000908152600360209081526040808320600160a060020a038716845290915290205415155b1561080457506000610614565b336000818152600360209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b60055481565b60015460009081908190600160a060020a0316331461088f57600080fd5b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051859350600160a060020a038416916370a082319160248083019260209291908290030181600087803b1580156108f357600080fd5b505af1158015610907573d6000803e3d6000fd5b505050506040513d602081101561091d57600080fd5b5051600154604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a0392831660048201526024810184905290519293509084169163a9059cbb916044808201926020929091908290030181600087803b15801561099157600080fd5b505af11580156109a5573d6000803e3d6000fd5b505050506040513d60208110156109bb57600080fd5b5051949350505050565b6000606060643610156109d457fe5b600160a060020a03841615156109e957600080fd5b600160a060020a038516600090815260026020526040902054831115610a0e57600080fd5b600160a060020a0385166000908152600360209081526040808320338452909152902054831115610a3e57600080fd5b600160a060020a038516600090815260026020526040902054610a67908463ffffffff61100f16565b600160a060020a0386166000908152600260209081526040808320939093556003815282822033835290522054610aa4908463ffffffff61100f16565b600160a060020a038087166000908152600360209081526040808320338452825280832094909455918716815260029091522054610ae8908463ffffffff61100216565b600160a060020a0380861660008181526002602090815260409182902094909455805187815290519193928916927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3506001949350505050565b601281565b6001546000908190600160a060020a03163314610b6b57600080fd5b50506001546040513091823191600160a060020a03909116906108fc8315029083906000818181858888f19350505050158015610bac573d6000803e3d6000fd5b505050565b600154600090600160a060020a03163314610bcb57600080fd5b33600090815260026020526040902054821115610be757600080fd5b5033600081815260026020526040902054610c08908363ffffffff61100f16565b600160a060020a038216600090815260026020526040902055600554610c34908363ffffffff61100f16565b600555600854610c4a908363ffffffff61100f16565b600855604080518381529051600160a060020a038316917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a25050565b600160a060020a031660009081526002602052604090205490565b600154600160a060020a03163314610cc257600080fd5b600160a060020a038116600090815260026020526040902054821115610ce757600080fd5b600160a060020a038116600090815260026020526040902054610c08908363ffffffff61100f16565b60408051808201909152600381527f5043580000000000000000000000000000000000000000000000000000000000602082015281565b600154600090600160a060020a03163314610d6157600080fd5b600a5460ff1615610d7157600080fd5b600a805460ff191660011790556040517f7f95d919e78bdebe8a285e6e33357c2fcb65ccf66e72d7573f9f8f6caad0c4cc90600090a150600190565b600060406044361015610dbc57fe5b600160a060020a0384161515610dd157600080fd5b33600090815260026020526040902054831115610ded57600080fd5b33600090815260026020526040902054610e0d908463ffffffff61100f16565b3360009081526002602052604080822092909255600160a060020a03861681522054610e3f908463ffffffff61100216565b600160a060020a0385166000818152600260209081526040918290209390935580518681529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35060019392505050565b600a5460ff1681565b600080600084915081600160a060020a03166370a08231856040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082600160a060020a0316600160a060020a03168152602001915050602060405180830381600087803b158015610f2357600080fd5b505af1158015610f37573d6000803e3d6000fd5b505050506040513d6020811015610f4d57600080fd5b505195945050505050565b60075481565b60065481565b60095481565b600160a060020a03918216600090815260036020908152604080832093909416825291909152205490565b60085481565b600154600160a060020a03163314610fb257600080fd5b600160a060020a03811615610fea576001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b60046020526000908152604090205460ff1681565b8181018281101561061457fe5b60008282111561101b57fe5b509003905600a165627a7a72305820278053e1b2c0f491132872f3f0109930a4264a76abcc560eba86a3cd4114130f0029

Deployed Bytecode Sourcemap

1485:6290:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3627:10;3659:9;3608:16;3686:11;;3683:288;;;3727:14;;3712:11;;:29;;3704:38;;;;;;-1:-1:-1;;;;;3756:19:0;;;;;;:9;:19;;;;;;;;:28;3748:37;;;;;;-1:-1:-1;3813:11:0;;3830:23;3836:8;3813:11;3830:5;:23::i;:::-;-1:-1:-1;;;;;;3873:19:0;;;;;;:9;:19;;;;;:26;;-1:-1:-1;;3873:26:0;3895:4;3873:26;;;3929:11;;:36;;3958:6;;3929:24;;3945:7;3929:24;:15;:24;:::i;:::-;:28;:36;:28;:36;:::i;:::-;3915:11;:50;3683:288;3991:1;3982:6;:10;3979:52;;;3999:26;4008:8;4018:6;3999:8;:26::i;:::-;3574:461;;;1485:6290;1748:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1748:41: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;1748:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5948:296;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5948:296:0;-1:-1:-1;;;;;5948:296:0;;;;;;;;;;;;;;;;;;;;;;;;;1905:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1905:40:0;;;;;;;;;;;;;;;;;;;;6811:260;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6811:260:0;-1:-1:-1;;;;;6811:260:0;;;;;5399:537;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5399:537:0;-1:-1:-1;;;;;5399:537:0;;;;;;;;;;;;1853:34;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1853:34:0;;;;6629:170;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6629:170:0;;;;;;7077:353;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7077:353:0;;;;;4041:699;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4041:699:0;-1:-1:-1;;;;;4041:699:0;;;;;;;4752:111;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4752:111:0;-1:-1:-1;;;;;4752:111:0;;;;;7436:336;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7436:336:0;;;-1:-1:-1;;;;;7436:336:0;;;;;1802:37;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1802:37:0;;;;3013:170;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3013:170:0;;;;4985:402;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4985:402:0;-1:-1:-1;;;;;4985:402:0;;;;;;;2479:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2479:40:0;;;;6406:211;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6406:211:0;-1:-1:-1;;;;;6406:211:0;;;;;;;;;;1997:34;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1997:34:0;;;;1954:39;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1954:39:0;;;;2084:65;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2084:65:0;;;;6256:138;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6256:138:0;-1:-1:-1;;;;;6256:138:0;;;;;;;;;;2038:35;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2038:35:0;;;;2854:151;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2854:151:0;-1:-1:-1;;;;;2854:151:0;;;;;1697:42;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1697:42:0;-1:-1:-1;;;;;1697:42:0;;;;;3195:360;2572:20;;3266:4;;2572:20;;2571:21;2563:30;;;;;;3302:16;;:29;;3323:7;3302:29;:20;:29;:::i;:::-;3283:16;:48;3356:14;;:27;;3375:7;3356:27;:18;:27;:::i;:::-;3339:14;:44;-1:-1:-1;;;;;3412:13:0;;;;;;:8;:13;;;;;;:26;;3430:7;3412:26;:17;:26;:::i;:::-;-1:-1:-1;;;;;3396:13:0;;;;;;:8;:13;;;;;;;;;:42;;;;3454:19;;;;;;;3396:13;;3454:19;;;;;;;;;3489:34;;;;;;;;-1:-1:-1;;;;;3489:34:0;;;3506:1;;3489:34;;;;;;;;;-1:-1:-1;3543:4:0;2604:1;3195:360;;;;:::o;260:98::-;318:7;349:1;345;:5;;;;;;;;;260:98;-1:-1:-1;;;260:98:0:o;52:202::-;110:9;136:6;;132:47;;;-1:-1:-1;166:1:0;159:8;;132:47;-1:-1:-1;193:5:0;;;197:1;193;:5;216;;;;;;;;:10;209:18;;;4041:699;2572:20;;4116:14;;;;2572:20;;2571:21;2563:30;;;;;;4133:11;;4160:7;;4133:24;;4149:7;4133:24;:15;:24;:::i;:::-;:34;;;;;;;;4116:51;;4188:1;4172:17;;4208:11;4197:7;:22;;:50;;;;;4233:14;4223:7;:24;4197:50;4194:87;;;-1:-1:-1;4272:3:0;4263:12;;4194:87;4299:11;4288:7;:22;;:47;;;;;4324:11;4314:7;:21;4288:47;4285:84;;;-1:-1:-1;4360:3:0;4351:12;;4285:84;4387:11;4376:7;:22;;:46;;;;;4412:10;4402:7;:20;4376:46;4373:93;;;-1:-1:-1;4457:3:0;4454:2;4447:9;;:13;4373:93;4486:10;4475:7;:21;;:42;;;;;4510:7;4500;:17;4475:42;4472:88;;;-1:-1:-1;4551:3:0;4548:2;4541:9;;:13;4472:88;4580:7;4569:18;;4566:62;;-1:-1:-1;4619:3:0;4616:2;4609:9;;:13;4566:62;4643:17;:6;4654:5;4643:17;:10;:17;:::i;:::-;4687:14;;4634:26;;-1:-1:-1;4677:24:0;;;4669:33;;;;;;4711:24;4717:9;4728:6;4711:5;:24::i;:::-;;4041:699;;;;:::o;1748:41::-;;;;;;;;;;;;;;;;;;;:::o;5948:296::-;6015:12;6044:11;;;;;:49;;-1:-1:-1;6067:10:0;6059:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;6059:29:0;;;;;;;;;;:34;;6044:49;6040:72;;;-1:-1:-1;6104:5:0;6097:12;;6040:72;6130:10;6122:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;6122:29:0;;;;;;;;;;;;:38;;;6176;;;;;;;6122:29;;6130:10;6176:38;;;;;;;;;;;-1:-1:-1;6232:4:0;5948:296;;;;:::o;1905:40::-;;;;:::o;6811:260::-;2679:5;;6892:4;;;;;;-1:-1:-1;;;;;2679:5:0;2665:10;:19;2657:28;;;;;;6986:30;;;;;;7010:4;6986:30;;;;;;6943:14;;-1:-1:-1;;;;;;6986:15:0;;;;;:30;;;;;;;;;;;;;;-1:-1:-1;6986:15:0;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;6986:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6986:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6986:30:0;7049:5;;7034:29;;;;;;-1:-1:-1;;;;;7049:5:0;;;7034:29;;;;;;;;;;;;6986:30;;-1:-1:-1;7034:14:0;;;;;;:29;;;;;6986:30;;7034:29;;;;;;;;7049:5;7034:14;:29;;;5:2:-1;;;;30:1;27;20:12;5:2;7034:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7034:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7034:29:0;;6811:260;-1:-1:-1;;;;6811:260:0:o;5399:537::-;5506:12;5482:6;4944:8;4925;:27;;4918:35;;;;-1:-1:-1;;;;;5541:17:0;;;;5533:26;;;;;;-1:-1:-1;;;;;5589:15:0;;;;;;:8;:15;;;;;;5578:26;;;5570:35;;;;;;-1:-1:-1;;;;;5635:14:0;;;;;;:7;:14;;;;;;;;5650:10;5635:26;;;;;;;;5624:37;;;5616:46;;;;;;-1:-1:-1;;;;;5701:15:0;;;;;;:8;:15;;;;;;:28;;5721:7;5701:28;:19;:28;:::i;:::-;-1:-1:-1;;;;;5683:15:0;;;;;;:8;:15;;;;;;;;:46;;;;5769:7;:14;;;;;5784:10;5769:26;;;;;;:39;;5800:7;5769:39;:30;:39;:::i;:::-;-1:-1:-1;;;;;5740:14:0;;;;;;;:7;:14;;;;;;;;5755:10;5740:26;;;;;;;:68;;;;5835:13;;;;;:8;:13;;;;;:26;;5853:7;5835:26;:17;:26;:::i;:::-;-1:-1:-1;;;;;5819:13:0;;;;;;;:8;:13;;;;;;;;;:42;;;;5877:29;;;;;;;5819:13;;5877:29;;;;;;;;;;;;;-1:-1:-1;5924:4:0;;5399:537;-1:-1:-1;;;;5399:537:0:o;1853:34::-;1885:2;1853:34;:::o;6629:170::-;2679:5;;6677:17;;;;-1:-1:-1;;;;;2679:5:0;2665:10;:19;2657:28;;;;;;-1:-1:-1;;6763:5:0;;:28;;6697:4;;6735:17;;;-1:-1:-1;;;;;6763:5:0;;;;:28;;;;;6735:17;;6763:5;:28;:5;:28;6735:17;6763:5;:28;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6763:28:0;6629:170;;:::o;7077:353::-;2679:5;;7195:14;;-1:-1:-1;;;;;2679:5:0;2665:10;:19;2657:28;;;;;;7162:10;7153:20;;;;:8;:20;;;;;;7143:30;;;7135:39;;;;;;-1:-1:-1;7212:10:0;7252:16;;;;:8;:16;;;;;;:28;;7273:6;7252:28;:20;:28;:::i;:::-;-1:-1:-1;;;;;7233:16:0;;;;;;:8;:16;;;;;:47;7305:11;;:23;;7321:6;7305:23;:15;:23;:::i;:::-;7291:11;:37;7358:16;;:28;;7379:6;7358:28;:20;:28;:::i;:::-;7339:16;:47;7402:20;;;;;;;;-1:-1:-1;;;;;7402:20:0;;;;;;;;;;;;;7077:353;;:::o;4752:111::-;-1:-1:-1;;;;;4839:16:0;4812:7;4839:16;;;:8;:16;;;;;;;4752:111::o;7436:336::-;2679:5;;-1:-1:-1;;;;;2679:5:0;2665:10;:19;2657:28;;;;;;-1:-1:-1;;;;;7533:17:0;;;;;;:8;:17;;;;;;7523:27;;;7515:36;;;;;;-1:-1:-1;;;;;7592:17:0;;;;;;:8;:17;;;;;;:29;;7614:6;7592:29;:21;:29;:::i;1802:37::-;;;;;;;;;;;;;;;;;;;:::o;3013:170::-;2679:5;;3078:4;;-1:-1:-1;;;;;2679:5:0;2665:10;:19;2657:28;;;;;;2572:20;;;;2571:21;2563:30;;;;;;3095:20;:27;;-1:-1:-1;;3095:27:0;3118:4;3095:27;;;3138:15;;;;3095:20;;3138:15;-1:-1:-1;3171:4:0;3013:170;:::o;4985:402::-;5073:12;5049:6;4944:8;4925;:27;;4918:35;;;;-1:-1:-1;;;;;5108:17:0;;;;5100:26;;;;;;5165:10;5156:20;;;;:8;:20;;;;;;5145:31;;;5137:40;;;;;;5230:10;5221:20;;;;:8;:20;;;;;;:33;;5246:7;5221:33;:24;:33;:::i;:::-;5207:10;5198:20;;;;:8;:20;;;;;;:56;;;;-1:-1:-1;;;;;5281:13:0;;;;;;:26;;5299:7;5281:26;:17;:26;:::i;:::-;-1:-1:-1;;;;;5265:13:0;;;;;;:8;:13;;;;;;;;;:42;;;;5323:34;;;;;;;5265:13;;5332:10;;5323:34;;;;;;;;;;-1:-1:-1;5375:4:0;;4985:402;-1:-1:-1;;;4985:402:0:o;2479:40::-;;;;;;:::o;6406:211::-;6491:4;6507:14;6561:8;6537:12;6507:43;;6572:1;-1:-1:-1;;;;;6572:11:0;;6584:3;6572:16;;;;;;;;;;;;;-1:-1:-1;;;;;6572:16:0;-1:-1:-1;;;;;6572:16:0;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6572:16:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6572:16:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6572:16:0;;6406:211;-1:-1:-1;;;;;6406:211:0:o;1997:34::-;;;;:::o;1954:39::-;;;;:::o;2084:65::-;;;;:::o;6256:138::-;-1:-1:-1;;;;;6361:15:0;;;6334:7;6361:15;;;:7;:15;;;;;;;;:25;;;;;;;;;;;;;6256:138::o;2038:35::-;;;;:::o;2854:151::-;2679:5;;-1:-1:-1;;;;;2679:5:0;2665:10;:19;2657:28;;;;;;-1:-1:-1;;;;;2931:22:0;;;2927:71;;2970:5;:16;;-1:-1:-1;;2970:16:0;-1:-1:-1;;;;;2970:16:0;;;;;2927:71;2854:151;:::o;1697:42::-;;;;;;;;;;;;;;;:::o;493:141::-;577:5;;;600:6;;;;593:14;;;364:123;422:7;449:6;;;;442:14;;;;-1:-1:-1;474:5:0;;;364:123::o

Swarm Source

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