ETH Price: $3,473.22 (+5.33%)

Token

BLOCKCERT (BCERT)
 

Overview

Max Total Supply

2,100,000,000 BCERT

Holders

8 (0.00%)

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 0 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

BlockCerts offer tools to manage your life and business. A new world of cloud.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
BlockcertToken

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU GPLv3 license

Contract Source Code (Solidity Multiple files format)

File 1 of 5: BlockcertToken.sol
pragma solidity ^0.4.24;


import './Utils.sol';
import './IERC20Token.sol';
import './Owned.sol';


/**
    ERC20 Standard Token implementation
*/
contract BlockcertToken is IERC20Token, Owned, Utils {
	string public standard = 'Token 0.1';

	string public name = 'BLOCKCERT';

	string public symbol = 'BCERT';

	uint8 public decimals = 0;

	uint256 public totalSupply = 2100000000;

	mapping (address => uint256) public balanceOf;

	mapping (address => mapping (address => uint256)) public allowance;

	event Transfer(address indexed _from, address indexed _to, uint256 _value);

    event Convert(address indexed _from, address indexed _blockcertsAddress, uint256 _value);

	event Approval(address indexed _owner, address indexed _spender, uint256 _value);

	/**
		@dev constructor

		@param _presalePool         Presale Pool address
		@param _CCTPool             CCT Pool address
		@param _BCIDeveloperPool    BCI Developer pool address
		@param _TreasuryPool        Treasury pool address
	*/
    constructor (address _presalePool, address _CCTPool, address _BCIDeveloperPool, address _TreasuryPool)
	public
	validAddress(_presalePool)
	validAddress(_CCTPool)
	validAddress(_BCIDeveloperPool)
	validAddress(_TreasuryPool)
	{
		uint presalePoolBalance = 100000000;
		uint publicSalePoolBalance = 430860000;
		uint cctPoolBalance = 410000000;
		uint bciDeveloperPoolBalance = 300000000;
		uint treasuryPoolBalance = 859140000;

		balanceOf[msg.sender] = publicSalePoolBalance;
		emit Transfer(this, msg.sender, publicSalePoolBalance);
		balanceOf[_presalePool] = presalePoolBalance;
        emit Transfer(this, _presalePool, presalePoolBalance);
		balanceOf[_CCTPool] = cctPoolBalance;
        emit Transfer(this, _CCTPool, cctPoolBalance);
		balanceOf[_BCIDeveloperPool] = bciDeveloperPoolBalance;
        emit Transfer(this, _BCIDeveloperPool, bciDeveloperPoolBalance);
		balanceOf[_TreasuryPool] = treasuryPoolBalance;
        emit Transfer(this, _TreasuryPool, treasuryPoolBalance);
	}

	/**
		@dev send coins
		throws on any error rather then return a false flag to minimize user errors

		@param _to      target address
		@param _value   transfer amount

		@return true if the transfer was successful, false if it wasn't
	*/
	function transfer(address _to, uint256 _value)
	public
	validAddress(_to)
	returns (bool success)
	{
		balanceOf[msg.sender] = safeSub(balanceOf[msg.sender], _value);
		balanceOf[_to] = safeAdd(balanceOf[_to], _value);
        emit Transfer(msg.sender, _to, _value);
		return true;
	}

	/**
		@dev an account/contract attempts to get the coins
		throws on any error rather then return a false flag to minimize user errors

		@param _from    source address
		@param _to      target address
		@param _value   transfer amount

		@return true if the transfer was successful, false if it wasn't
	*/
	function transferFrom(address _from, address _to, uint256 _value)
	public
	validAddress(_from)
	validAddress(_to)
	returns (bool success)
	{
		allowance[_from][msg.sender] = safeSub(allowance[_from][msg.sender], _value);
		balanceOf[_from] = safeSub(balanceOf[_from], _value);
		balanceOf[_to] = safeAdd(balanceOf[_to], _value);
        emit Transfer(_from, _to, _value);
		return true;
	}

	/**
		@dev allow another account/contract to spend some tokens on your behalf
		throws on any error rather then return a false flag to minimize user errors

		also, to minimize the risk of the approve/transferFrom attack vector
		(see https://docs.google.com/document/d/1YLPtQxZu1UAvO9cZ1O2RPXBbT0mooh4DYKjA_jp-RLM/), approve has to be called twice
		in 2 separate transactions - once to change the allowance to 0 and secondly to change it to the new allowance value

		@param _spender approved address
		@param _value   allowance amount

		@return true if the approval was successful, false if it wasn't
	*/
	function approve(address _spender, uint256 _value)
	public
	validAddress(_spender)
	returns (bool success)
	{
		// if the allowance isn't 0, it can only be updated to 0 to prevent an allowance change immediately after withdrawal
		require(_value == 0 || allowance[msg.sender][_spender] == 0);

		allowance[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
		return true;
	}

	/**
		@dev removes tokens from an account and decreases the token supply
		can be called by the contract owner to destroy tokens from any account or by any holder to destroy tokens from his/her own account

		@param _from       account to remove the amount from
		@param _amount     amount to decrease the supply by
	*/
	function destroy(address _from, uint256 _amount) public {
		require(msg.sender == _from || msg.sender == owner);
		// validate input

		balanceOf[_from] = safeSub(balanceOf[_from], _amount);
		totalSupply = safeSub(totalSupply, _amount);

        emit Transfer(_from, this, _amount);
	}

    /**
        @dev converting tokens from the ethereum network to the blockcerts network by token holder

        @param _blockcertsAddress       blockcerts network account to which funds must be transferred
        @param _amount                  convert amount
    */
    function convert(address _blockcertsAddress, uint256 _amount) public returns (bool success) {
        return _convert(msg.sender, _blockcertsAddress, _amount);
    }

    /**
        @dev converting tokens from the ethereum network any account to the blockcerts network by contract owner

        @param _from                    account to convert the amount from
        @param _blockcertsAddress       blockcerts network account to which funds must be transferred
        @param _amount                  convert amount
    */
    function convertFrom(address _from, address _blockcertsAddress, uint256 _amount) public returns (bool success) {
        require(msg.sender == owner || _from == msg.sender);
        return _convert(_from, _blockcertsAddress, _amount);
    }

    /**
        @dev converting tokens from the blockcert network any account to the ethereum network by contract owner

        @param _to                      token receiver
        @param _amount                  convert amount
    */
    function mint(address _to, uint256 _amount) public ownerOnly returns (bool success) {
        balanceOf[_to] = safeAdd(balanceOf[_to], _amount);
        balanceOf[this] = safeSub(balanceOf[this], _amount);
        emit Transfer(this, _to, _amount);
//        totalSupply = safeAdd(totalSupply, _amount);
        return true;
    }

    /**
        @dev converting tokens from the ethereum network to the blockcerts network by contract owner

        @param _from                    account to convert the amount from
        @param _blockcertsAddress       blockcerts network account to which funds must be transferred
        @param _amount                  convert amount
    */
    function _convert(address _from, address _blockcertsAddress, uint256 _amount)
    private
    validAddress(_from)
    validAddress(_blockcertsAddress)
    returns (bool success)
    {
        balanceOf[_from] = safeSub(balanceOf[_from], _amount);
        balanceOf[this] = safeAdd(balanceOf[this], _amount);
        emit Transfer(_from, this, _amount);
        emit Convert(_from, _blockcertsAddress, _amount);
//        totalSupply = safeSub(totalSupply, _amount);
        return true;
    }
}

File 2 of 5: IERC20Token.sol
pragma solidity ^0.4.24;

/*
    ERC20 Standard Token interface
*/
contract IERC20Token {
    // these functions aren't abstract since the compiler emits automatically generated getter functions as external
    function name() public constant returns (string) {}
    function symbol() public constant returns (string) {}
    function decimals() public constant returns (uint8) {}
    function totalSupply() public constant returns (uint256) {}
    function balanceOf(address _owner) public constant returns (uint256) { _owner; }
    function allowance(address _owner, address _spender) public constant returns (uint256) { _owner; _spender; }

    function transfer(address _to, uint256 _value) public returns (bool success);
    function transferFrom(address _from, address _to, uint256 _value) public returns (bool success);
    function approve(address _spender, uint256 _value) public returns (bool success);
}

File 3 of 5: IOwned.sol
pragma solidity ^0.4.24;

/*
    Owned contract interface
*/
contract IOwned {
    // this function isn't abstract since the compiler emits automatically generated getter functions as external
    function owner() public constant returns (address) {}

    function transferOwnership(address _newOwner) public;
    function acceptOwnership() public;
}

File 4 of 5: Owned.sol
pragma solidity ^0.4.24;
import './IOwned.sol';

/*
    Provides support and utilities for contract ownership
*/
contract Owned is IOwned {
	address public owner;
	address public newOwner;

	event OwnerUpdate(address _prevOwner, address _newOwner);

	/**
		@dev constructor
	*/
	constructor () public {
		owner = msg.sender;
	}

	// allows execution by the owner only
	modifier ownerOnly {
		assert(msg.sender == owner);
		_;
	}

	/**
		@dev allows transferring the contract ownership
		the new owner still needs to accept the transfer
		can only be called by the contract owner

		@param _newOwner    new contract owner
	*/
	function transferOwnership(address _newOwner) public ownerOnly {
		require(_newOwner != owner);
		newOwner = _newOwner;
	}

	/**
		@dev used by a new owner to accept an ownership transfer
	*/
	function acceptOwnership() public {
		require(msg.sender == newOwner);
		emit OwnerUpdate(owner, newOwner);
		owner = newOwner;
		newOwner = 0x0;
	}
}

File 5 of 5: Utils.sol
pragma solidity ^0.4.24;

/*
    Utilities & Common Modifiers
*/
contract Utils {
    /**
        constructor
    */
    constructor () public {
    }

    // verifies that an amount is greater than zero
    modifier greaterThanZero(uint256 _amount) {
        require(_amount > 0);
        _;
    }

    // validates an address - currently only checks that it isn't null
    modifier validAddress(address _address) {
        require(_address != 0x0);
        _;
    }

    // verifies that the address is different than this contract address
    modifier notThis(address _address) {
        require(_address != address(this));
        _;
    }

    // Overflow protected math functions

    /**
        @dev returns the sum of _x and _y, asserts if the calculation overflows

        @param _x   value 1
        @param _y   value 2

        @return sum
    */
    function safeAdd(uint256 _x, uint256 _y) internal pure returns (uint256) {
        uint256 z = _x + _y;
        assert(z >= _x);
        return z;
    }

    /**
        @dev returns the difference of _x minus _y, asserts if the subtraction results in a negative number

        @param _x   minuend
        @param _y   subtrahend

        @return difference
    */
    function safeSub(uint256 _x, uint256 _y) internal pure returns (uint256) {
        assert(_x >= _y);
        return _x - _y;
    }

    /**
        @dev returns the product of multiplying _x by _y, asserts if the calculation overflows

        @param _x   factor 1
        @param _y   factor 2

        @return product
    */
    function safeMul(uint256 _x, uint256 _y) internal pure returns (uint256) {
        uint256 z = _x * _y;
        assert(_x == 0 || z / _x == _y);
        return z;
    }
}

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":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_blockcertsAddress","type":"address"},{"name":"_amount","type":"uint256"}],"name":"convertFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"standard","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_blockcertsAddress","type":"address"},{"name":"_amount","type":"uint256"}],"name":"convert","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","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":"_from","type":"address"},{"name":"_amount","type":"uint256"}],"name":"destroy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","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":"_presalePool","type":"address"},{"name":"_CCTPool","type":"address"},{"name":"_BCIDeveloperPool","type":"address"},{"name":"_TreasuryPool","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"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":"_blockcertsAddress","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Convert","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":false,"name":"_prevOwner","type":"address"},{"indexed":false,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}]

60806040526040805190810160405280600981526020017f546f6b656e20302e3100000000000000000000000000000000000000000000008152506002908051906020019062000051929190620005cc565b506040805190810160405280600981526020017f424c4f434b434552540000000000000000000000000000000000000000000000815250600390805190602001906200009f929190620005cc565b506040805190810160405280600581526020017f424345525400000000000000000000000000000000000000000000000000000081525060049080519060200190620000ed929190620005cc565b506000600560006101000a81548160ff021916908360ff160217905550637d2b75006006553480156200011f57600080fd5b50604051608080620020c0833981018060405281019080805190602001909291908051906020019092919080519060200190929190805190602001909291905050506000806000806000336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508860008173ffffffffffffffffffffffffffffffffffffffff1614151515620001d157600080fd5b8860008173ffffffffffffffffffffffffffffffffffffffff1614151515620001f957600080fd5b8860008173ffffffffffffffffffffffffffffffffffffffff16141515156200022157600080fd5b8860008173ffffffffffffffffffffffffffffffffffffffff16141515156200024957600080fd5b6305f5e10098506319ae66e097506318701a8096506311e1a30095506333356fa0945087600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8a6040518082815260200191505060405180910390a388600760008f73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508c73ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8b6040518082815260200191505060405180910390a386600760008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508b73ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef896040518082815260200191505060405180910390a385600760008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508a73ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef886040518082815260200191505060405180910390a384600760008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508973ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef876040518082815260200191505060405180910390a3505050505050505050505050506200067b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200060f57805160ff191683800117855562000640565b8280016001018555821562000640579182015b828111156200063f57825182559160200191906001019062000622565b5b5090506200064f919062000653565b5090565b6200067891905b80821115620006745760008160009055506001016200065a565b5090565b90565b611a35806200068b6000396000f3006080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610101578063095ea7b31461019157806318160ddd146101f657806323b872dd14610221578063313ce567146102a657806332ff99d1146102d757806340c10f191461035c5780635a3b7e42146103c157806367c6e39c1461045157806370a08231146104b657806379ba50971461050d5780638da5cb5b1461052457806395d89b411461057b578063a24835d11461060b578063a9059cbb14610658578063d4ee1d90146106bd578063dd62ed3e14610714578063f2fde38b1461078b575b600080fd5b34801561010d57600080fd5b506101166107ce565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561015657808201518184015260208101905061013b565b50505050905090810190601f1680156101835780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019d57600080fd5b506101dc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061086c565b604051808215151515815260200191505060405180910390f35b34801561020257600080fd5b5061020b610a1c565b6040518082815260200191505060405180910390f35b34801561022d57600080fd5b5061028c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a22565b604051808215151515815260200191505060405180910390f35b3480156102b257600080fd5b506102bb610d02565b604051808260ff1660ff16815260200191505060405180910390f35b3480156102e357600080fd5b50610342600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d15565b604051808215151515815260200191505060405180910390f35b34801561036857600080fd5b506103a7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610dbc565b604051808215151515815260200191505060405180910390f35b3480156103cd57600080fd5b506103d6610f9d565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104165780820151818401526020810190506103fb565b50505050905090810190601f1680156104435780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561045d57600080fd5b5061049c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061103b565b604051808215151515815260200191505060405180910390f35b3480156104c257600080fd5b506104f7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611050565b6040518082815260200191505060405180910390f35b34801561051957600080fd5b50610522611068565b005b34801561053057600080fd5b50610539611244565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561058757600080fd5b50610590611269565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105d05780820151818401526020810190506105b5565b50505050905090810190601f1680156105fd5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561061757600080fd5b50610656600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611307565b005b34801561066457600080fd5b506106a3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061149f565b604051808215151515815260200191505060405180910390f35b3480156106c957600080fd5b506106d2611650565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561072057600080fd5b50610775600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611676565b6040518082815260200191505060405180910390f35b34801561079757600080fd5b506107cc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061169b565b005b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108645780601f1061083957610100808354040283529160200191610864565b820191906000526020600020905b81548152906001019060200180831161084757829003601f168201915b505050505081565b60008260008173ffffffffffffffffffffffffffffffffffffffff161415151561089557600080fd5b600083148061092057506000600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b151561092b57600080fd5b82600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a3600191505092915050565b60065481565b60008360008173ffffffffffffffffffffffffffffffffffffffff1614151515610a4b57600080fd5b8360008173ffffffffffffffffffffffffffffffffffffffff1614151515610a7257600080fd5b610af8600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205485611793565b600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610bc1600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205485611793565b600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610c4d600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054856117ac565b600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a36001925050509392505050565b600560009054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610d9d57503373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b1515610da857600080fd5b610db38484846117ca565b90509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e1657fe5b610e5f600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836117ac565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610eeb600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611793565b600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110335780601f1061100857610100808354040283529160200191611033565b820191906000526020600020905b81548152906001019060200180831161101657829003601f168201915b505050505081565b60006110483384846117ca565b905092915050565b60076020528060005260406000206000915090505481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110c457600080fd5b7f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112ff5780601f106112d4576101008083540402835291602001916112ff565b820191906000526020600020905b8154815290600101906020018083116112e257829003601f168201915b505050505081565b8173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061138d57506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561139857600080fd5b6113e1600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611793565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061143060065482611793565b6006819055503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b60008260008173ffffffffffffffffffffffffffffffffffffffff16141515156114c857600080fd5b611511600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484611793565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061159d600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054846117ac565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505092915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6008602052816000526040600020602052806000526040600020600091509150505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116f357fe5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561174f57600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008183101515156117a157fe5b818303905092915050565b60008082840190508381101515156117c057fe5b8091505092915050565b60008360008173ffffffffffffffffffffffffffffffffffffffff16141515156117f357600080fd5b8360008173ffffffffffffffffffffffffffffffffffffffff161415151561181a57600080fd5b611863600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205485611793565b600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118ef600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054856117ac565b600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a38473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fccfaeb3043a96a967dc036ab72e078a9632af809671bc2a1ac30a8043645f89e866040518082815260200191505060405180910390a360019250505093925050505600a165627a7a72305820d658f27f06f433ab8c46a47682829d43fe36be83f10fef896697f0693ed8fcbd00290000000000000000000000006d8fade6d8e182fbd0a7dabb2f0b98edcc75a5f7000000000000000000000000e70a191f6c5e942d0461a3fd4958721eb3ed9e84000000000000000000000000765950cb48c69d9385e21cc85b395024eda27c8f0000000000000000000000008ed6aaddfc51643d3c18c5ee5f41999390930a1d

Deployed Bytecode

0x6080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610101578063095ea7b31461019157806318160ddd146101f657806323b872dd14610221578063313ce567146102a657806332ff99d1146102d757806340c10f191461035c5780635a3b7e42146103c157806367c6e39c1461045157806370a08231146104b657806379ba50971461050d5780638da5cb5b1461052457806395d89b411461057b578063a24835d11461060b578063a9059cbb14610658578063d4ee1d90146106bd578063dd62ed3e14610714578063f2fde38b1461078b575b600080fd5b34801561010d57600080fd5b506101166107ce565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561015657808201518184015260208101905061013b565b50505050905090810190601f1680156101835780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019d57600080fd5b506101dc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061086c565b604051808215151515815260200191505060405180910390f35b34801561020257600080fd5b5061020b610a1c565b6040518082815260200191505060405180910390f35b34801561022d57600080fd5b5061028c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a22565b604051808215151515815260200191505060405180910390f35b3480156102b257600080fd5b506102bb610d02565b604051808260ff1660ff16815260200191505060405180910390f35b3480156102e357600080fd5b50610342600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d15565b604051808215151515815260200191505060405180910390f35b34801561036857600080fd5b506103a7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610dbc565b604051808215151515815260200191505060405180910390f35b3480156103cd57600080fd5b506103d6610f9d565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104165780820151818401526020810190506103fb565b50505050905090810190601f1680156104435780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561045d57600080fd5b5061049c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061103b565b604051808215151515815260200191505060405180910390f35b3480156104c257600080fd5b506104f7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611050565b6040518082815260200191505060405180910390f35b34801561051957600080fd5b50610522611068565b005b34801561053057600080fd5b50610539611244565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561058757600080fd5b50610590611269565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105d05780820151818401526020810190506105b5565b50505050905090810190601f1680156105fd5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561061757600080fd5b50610656600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611307565b005b34801561066457600080fd5b506106a3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061149f565b604051808215151515815260200191505060405180910390f35b3480156106c957600080fd5b506106d2611650565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561072057600080fd5b50610775600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611676565b6040518082815260200191505060405180910390f35b34801561079757600080fd5b506107cc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061169b565b005b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108645780601f1061083957610100808354040283529160200191610864565b820191906000526020600020905b81548152906001019060200180831161084757829003601f168201915b505050505081565b60008260008173ffffffffffffffffffffffffffffffffffffffff161415151561089557600080fd5b600083148061092057506000600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b151561092b57600080fd5b82600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a3600191505092915050565b60065481565b60008360008173ffffffffffffffffffffffffffffffffffffffff1614151515610a4b57600080fd5b8360008173ffffffffffffffffffffffffffffffffffffffff1614151515610a7257600080fd5b610af8600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205485611793565b600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610bc1600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205485611793565b600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610c4d600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054856117ac565b600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a36001925050509392505050565b600560009054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610d9d57503373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b1515610da857600080fd5b610db38484846117ca565b90509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e1657fe5b610e5f600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836117ac565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610eeb600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611793565b600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110335780601f1061100857610100808354040283529160200191611033565b820191906000526020600020905b81548152906001019060200180831161101657829003601f168201915b505050505081565b60006110483384846117ca565b905092915050565b60076020528060005260406000206000915090505481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110c457600080fd5b7f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112ff5780601f106112d4576101008083540402835291602001916112ff565b820191906000526020600020905b8154815290600101906020018083116112e257829003601f168201915b505050505081565b8173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061138d57506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561139857600080fd5b6113e1600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611793565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061143060065482611793565b6006819055503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b60008260008173ffffffffffffffffffffffffffffffffffffffff16141515156114c857600080fd5b611511600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484611793565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061159d600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054846117ac565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505092915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6008602052816000526040600020602052806000526040600020600091509150505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116f357fe5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561174f57600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008183101515156117a157fe5b818303905092915050565b60008082840190508381101515156117c057fe5b8091505092915050565b60008360008173ffffffffffffffffffffffffffffffffffffffff16141515156117f357600080fd5b8360008173ffffffffffffffffffffffffffffffffffffffff161415151561181a57600080fd5b611863600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205485611793565b600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118ef600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054856117ac565b600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a38473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fccfaeb3043a96a967dc036ab72e078a9632af809671bc2a1ac30a8043645f89e866040518082815260200191505060405180910390a360019250505093925050505600a165627a7a72305820d658f27f06f433ab8c46a47682829d43fe36be83f10fef896697f0693ed8fcbd0029

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000006d8fade6d8e182fbd0a7dabb2f0b98edcc75a5f7000000000000000000000000e70a191f6c5e942d0461a3fd4958721eb3ed9e84000000000000000000000000765950cb48c69d9385e21cc85b395024eda27c8f0000000000000000000000008ed6aaddfc51643d3c18c5ee5f41999390930a1d

-----Decoded View---------------
Arg [0] : _presalePool (address): 0x6d8FADe6d8e182FBD0A7dABB2F0B98edCC75A5F7
Arg [1] : _CCTPool (address): 0xe70a191F6c5E942D0461A3fD4958721EB3Ed9E84
Arg [2] : _BCIDeveloperPool (address): 0x765950cb48C69d9385E21CC85b395024eDa27c8f
Arg [3] : _TreasuryPool (address): 0x8Ed6aadDfC51643D3C18C5EE5f41999390930A1D

-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 0000000000000000000000006d8fade6d8e182fbd0a7dabb2f0b98edcc75a5f7
Arg [1] : 000000000000000000000000e70a191f6c5e942d0461a3fd4958721eb3ed9e84
Arg [2] : 000000000000000000000000765950cb48c69d9385e21cc85b395024eda27c8f
Arg [3] : 0000000000000000000000008ed6aaddfc51643d3c18c5ee5f41999390930a1d


Deployed Bytecode Sourcemap

148:7174:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;244:32;;8:9:-1;5:2;;;30:1;27;20:12;5:2;244:32:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;244:32:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3831:408;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3831:408:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;343:39;;8:9:-1;5:2;;;30:1;27;20:12;5:2;343:39:0;;;;;;;;;;;;;;;;;;;;;;;2829:389;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2829:389:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;314:25;;8:9:-1;5:2;;;30:1;27;20:12;5:2;314:25:0;;;;;;;;;;;;;;;;;;;;;;;;;;;5659:240;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5659:240:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6143:330;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6143:330:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;204:36;;8:9:-1;5:2;;;30:1;27;20:12;5:2;204:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;204:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5127:165;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5127:165:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;386:45;;8:9:-1;5:2;;;30:1;27;20:12;5:2;386:45:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;819:148:3;;8:9:-1;5:2;;;30:1;27;20:12;5:2;819:148:3;;;;;;141:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;141:20:3;;;;;;;;;;;;;;;;;;;;;;;;;;;280:30:0;;8:9:-1;5:2;;;30:1;27;20:12;5:2;280:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;280:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4563:286;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4563:286:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2234:284;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2234:284:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;164:23:3;;8:9:-1;5:2;;;30:1;27;20:12;5:2;164:23:3;;;;;;;;;;;;;;;;;;;;;;;;;;;435:66:0;;8:9:-1;5:2;;;30:1;27;20:12;5:2;435:66:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;626:122:3;;8:9:-1;5:2;;;30:1;27;20:12;5:2;626:122:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;244:32:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;3831:408::-;3924:12;3904:8;445:3:4;433:8;:15;;;;425:24;;;;;;;;4080:1:0;4070:6;:11;:51;;;;4120:1;4085:9;:21;4095:10;4085:21;;;;;;;;;;;;;;;:31;4107:8;4085:31;;;;;;;;;;;;;;;;:36;4070:51;4062:60;;;;;;;;4161:6;4127:9;:21;4137:10;4127:21;;;;;;;;;;;;;;;:31;4149:8;4127:31;;;;;;;;;;;;;;;:40;;;;4203:8;4182:38;;4191:10;4182:38;;;4213:6;4182:38;;;;;;;;;;;;;;;;;;4231:4;4224:11;;3831:408;;;;;:::o;343:39::-;;;;:::o;2829:389::-;2953:12;2917:5;445:3:4;433:8;:15;;;;425:24;;;;;;;;2938:3:0;445::4;433:8;:15;;;;425:24;;;;;;;;3003:45:0;3011:9;:16;3021:5;3011:16;;;;;;;;;;;;;;;:28;3028:10;3011:28;;;;;;;;;;;;;;;;3041:6;3003:7;:45::i;:::-;2972:9;:16;2982:5;2972:16;;;;;;;;;;;;;;;:28;2989:10;2972:28;;;;;;;;;;;;;;;:76;;;;3071:33;3079:9;:16;3089:5;3079:16;;;;;;;;;;;;;;;;3097:6;3071:7;:33::i;:::-;3052:9;:16;3062:5;3052:16;;;;;;;;;;;;;;;:52;;;;3125:31;3133:9;:14;3143:3;3133:14;;;;;;;;;;;;;;;;3149:6;3125:7;:31::i;:::-;3108:9;:14;3118:3;3108:14;;;;;;;;;;;;;;;:48;;;;3187:3;3171:28;;3180:5;3171:28;;;3192:6;3171:28;;;;;;;;;;;;;;;;;;3210:4;3203:11;;459:1:4;2829:389:0;;;;;;:::o;314:25::-;;;;;;;;;;;;;:::o;5659:240::-;5756:12;5802:5;;;;;;;;;;;5788:19;;:10;:19;;;:42;;;;5820:10;5811:19;;:5;:19;;;5788:42;5780:51;;;;;;;;5848:44;5857:5;5864:18;5884:7;5848:8;:44::i;:::-;5841:51;;5659:240;;;;;:::o;6143:330::-;6213:12;413:5:3;;;;;;;;;;;399:19;;:10;:19;;;392:27;;;;;;6254:32:0;6262:9;:14;6272:3;6262:14;;;;;;;;;;;;;;;;6278:7;6254;:32::i;:::-;6237:9;:14;6247:3;6237:14;;;;;;;;;;;;;;;:49;;;;6314:33;6322:9;:15;6332:4;6322:15;;;;;;;;;;;;;;;;6339:7;6314;:33::i;:::-;6296:9;:15;6306:4;6296:15;;;;;;;;;;;;;;;:51;;;;6377:3;6362:28;;6371:4;6362:28;;;6382:7;6362:28;;;;;;;;;;;;;;;;;;6462:4;6455:11;;6143:330;;;;:::o;204:36::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5127:165::-;5205:12;5236:49;5245:10;5257:18;5277:7;5236:8;:49::i;:::-;5229:56;;5127:165;;;;:::o;386:45::-;;;;;;;;;;;;;;;;;:::o;819:148:3:-;879:8;;;;;;;;;;;865:22;;:10;:22;;;857:31;;;;;;;;897:28;909:5;;;;;;;;;;;916:8;;;;;;;;;;;897:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;937:8;;;;;;;;;;;929:5;;:16;;;;;;;;;;;;;;;;;;960:3;949:8;;:14;;;;;;;;;;;;;;;;;;819:148::o;141:20::-;;;;;;;;;;;;;:::o;280:30:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4563:286::-;4645:5;4631:19;;:10;:19;;;:42;;;;4668:5;;;;;;;;;;;4654:19;;:10;:19;;;4631:42;4623:51;;;;;;;;4718:34;4726:9;:16;4736:5;4726:16;;;;;;;;;;;;;;;;4744:7;4718;:34::i;:::-;4699:9;:16;4709:5;4699:16;;;;;;;;;;;;;;;:53;;;;4770:29;4778:11;;4791:7;4770;:29::i;:::-;4756:11;:43;;;;4831:4;4815:30;;4824:5;4815:30;;;4837:7;4815:30;;;;;;;;;;;;;;;;;;4563:286;;:::o;2234:284::-;2318:12;2303:3;445::4;433:8;:15;;;;425:24;;;;;;;;2361:38:0;2369:9;:21;2379:10;2369:21;;;;;;;;;;;;;;;;2392:6;2361:7;:38::i;:::-;2337:9;:21;2347:10;2337:21;;;;;;;;;;;;;;;:62;;;;2420:31;2428:9;:14;2438:3;2428:14;;;;;;;;;;;;;;;;2444:6;2420:7;:31::i;:::-;2403:9;:14;2413:3;2403:14;;;;;;;;;;;;;;;:48;;;;2487:3;2466:33;;2475:10;2466:33;;;2492:6;2466:33;;;;;;;;;;;;;;;;;;2510:4;2503:11;;2234:284;;;;;:::o;164:23:3:-;;;;;;;;;;;;;:::o;435:66:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;626:122:3:-;413:5;;;;;;;;;;;399:19;;:10;:19;;;392:27;;;;;;714:5;;;;;;;;;;;701:18;;:9;:18;;;;693:27;;;;;;;;735:9;724:8;;:20;;;;;;;;;;;;;;;;;;626:122;:::o;1233:130:4:-;1297:7;1329:2;1323;:8;;1316:16;;;;;;1354:2;1349;:7;1342:14;;1233:130;;;;:::o;864:152::-;928:7;947:9;964:2;959;:7;947:19;;988:2;983:1;:7;;976:15;;;;;;1008:1;1001:8;;864:152;;;;;:::o;6828:492:0:-;6992:12;6935:5;445:3:4;433:8;:15;;;;425:24;;;;;;;;6959:18:0;445:3:4;433:8;:15;;;;425:24;;;;;;;;7039:34:0;7047:9;:16;7057:5;7047:16;;;;;;;;;;;;;;;;7065:7;7039;:34::i;:::-;7020:9;:16;7030:5;7020:16;;;;;;;;;;;;;;;:53;;;;7101:33;7109:9;:15;7119:4;7109:15;;;;;;;;;;;;;;;;7126:7;7101;:33::i;:::-;7083:9;:15;7093:4;7083:15;;;;;;;;;;;;;;;:51;;;;7165:4;7149:30;;7158:5;7149:30;;;7171:7;7149:30;;;;;;;;;;;;;;;;;;7209:18;7194:43;;7202:5;7194:43;;;7229:7;7194:43;;;;;;;;;;;;;;;;;;7309:4;7302:11;;459:1:4;6828:492:0;;;;;;:::o

Swarm Source

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