ETH Price: $3,130.54 (-4.40%)

Token

B2BX (B2BX)
 

Overview

Max Total Supply

19,822,337.199585433103319875 B2BX

Holders

10,281 ( -0.126%)

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
1.5 B2BX

Value
$0.00
0xF1b7E8bfCe8b54d68a8A1870032C3416BAbc37ae
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Aims to provide cryptocurrency liquidity for brokers, stock exchanges, hedge funds and other institutional clients.

ICO Information

Project Sector : Exchange
ICO Start Date : Sep 13, 2017
ICO End Date : Nov 20, 2017
ICO Price  : $0.75

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
SmartToken

Compiler Version
v0.4.16+commit.d7661dd9

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2017-10-11
*/

pragma solidity ^0.4.16;

/// @title SafeMath
/// @dev Math operations with safety checks that throw on error
library SafeMath {
    function mul(uint256 a, uint256 b) internal constant returns (uint256) {
        uint256 c = a * b;
        assert(a == 0 || c / a == b);
        return c;
    }

    function div(uint256 a, uint256 b) internal constant returns (uint256) {
        uint256 c = a / b;
        return c;
    }

    function sub(uint256 a, uint256 b) internal constant returns (uint256) {
        assert(b <= a);
        return a - b;
    }

    function add(uint256 a, uint256 b) internal constant returns (uint256) {
        uint256 c = a + b;
        assert(c >= a);
        return c;
    }
}

/// @title ERC20 Standard Token interface
contract IERC20Token {
    function name() public constant returns (string) { name; }
    function symbol() public constant returns (string) { symbol; }
    function decimals() public constant returns (uint8) { decimals; }
    function totalSupply() public constant returns (uint256) { totalSupply; }
    function balanceOf(address _owner) public constant returns (uint256 balance) { _owner; balance; }
    function allowance(address _owner, address _spender) public constant returns (uint256 remaining) { _owner; _spender; remaining; }

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

/// @title ERC20 Standard Token implementation
contract ERC20Token is IERC20Token {
    using SafeMath for uint256;

    string public standard = 'Token 0.1';
    string public name = '';
    string public symbol = '';
    uint8 public decimals = 0;
    uint256 public totalSupply = 0;
    mapping (address => uint256) public balanceOf;
    mapping (address => mapping (address => uint256)) public allowance;

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

    function ERC20Token(string _name, string _symbol, uint8 _decimals) {
        require(bytes(_name).length > 0 && bytes(_symbol).length > 0);
        name = _name;
        symbol = _symbol;
        decimals = _decimals;
    }

    modifier validAddress(address _address) {
        require(_address != 0x0);
        _;
    }

    function transfer(address _to, uint256 _value) public validAddress(_to) returns (bool) {
        balanceOf[msg.sender] = balanceOf[msg.sender].sub(_value);
        balanceOf[_to] = balanceOf[_to].add(_value);
        Transfer(msg.sender, _to, _value);
        
        return true;
    }

    function transferFrom(address _from, address _to, uint256 _value) public validAddress(_to) returns (bool) {
        allowance[_from][msg.sender] = allowance[_from][msg.sender].sub(_value);
        balanceOf[_from] = balanceOf[_from].sub(_value);
        balanceOf[_to] = balanceOf[_to].add(_value);
        Transfer(_from, _to, _value);
        return true;
    }

    function approve(address _spender, uint256 _value) public validAddress(_spender) returns (bool) {
        require(_value == 0 || allowance[msg.sender][_spender] == 0);
        allowance[msg.sender][_spender] = _value;
        Approval(msg.sender, _spender, _value);
        return true;
    }
}

contract IOwned {
    function owner() public constant returns (address) { owner; }
    function transferOwnership(address _newOwner) public;
}

contract Owned is IOwned {
    address public owner;
    function Owned() {
        owner = msg.sender;
    }
    modifier validAddress(address _address) {
        require(_address != 0x0);
        _;
    }
    modifier onlyOwner {
        assert(msg.sender == owner);
        _;
    }
    function transferOwnership(address _newOwner) validAddress(_newOwner) onlyOwner {
        require(_newOwner != owner);
        
        owner = _newOwner;
    }
}

/// @title B2BX contract interface
contract ISmartToken {
    function initialSupply() public constant returns (uint256) { initialSupply; }

    function totalSoldTokens() public constant returns (uint256) { totalSoldTokens; }
    function totalProjectToken() public constant returns (uint256) { totalProjectToken; }

    function fundingEnabled() public constant returns (bool) { fundingEnabled; }
    function transfersEnabled() public constant returns (bool) { transfersEnabled; }
}

/// @title B2BX contract - crowdfunding code for B2BX Project
contract SmartToken is ISmartToken, ERC20Token, Owned {
    using SafeMath for uint256;
 
    // The current initial token supply.
    uint256 public initialSupply = 50000000 ether;

    // Cold wallet for distribution of tokens.
    address public fundingWallet;

    // The flag indicates if the B2BX contract is in Funding state.
    bool public fundingEnabled = true;

    // The maximum tokens available for sale.
    uint256 public maxSaleToken;

    // Total number of tokens sold.
    uint256 public totalSoldTokens;
    // Total number of tokens for B2BX Project.
    uint256 public totalProjectToken;
    uint256 private totalLockToken;

    // The flag indicates if the B2BX contract is in eneble / disable transfers.
    bool public transfersEnabled = true; 

    // Wallets, which allowed the transaction during the crowdfunding.
    mapping (address => bool) private fundingWallets;
    // Wallets B2BX Project, which will be locked the tokens
    mapping (address => allocationLock) public allocations;

    struct allocationLock {
        uint256 value;
        uint256 end;
        bool locked;
    }

    event Finalize(address indexed _from, uint256 _value);
    event Lock(address indexed _from, address indexed _to, uint256 _value, uint256 _end);
    event Unlock(address indexed _from, address indexed _to, uint256 _value);
    event DisableTransfers(address indexed _from);

    /// @notice B2BX Project - Initializing crowdfunding.
    /// @dev Constructor.
    function SmartToken() ERC20Token("B2BX", "B2BX", 18) {
        // The main, cold wallet for the distribution of tokens.
        fundingWallet = msg.sender; 

        // Initializing 80% of tokens for sale.
        // maxSaleToken = initialSupply * 80 / 100 (80% this is maxSaleToken & 100% this is initialSupply)
        // totalProjectToken will be calculated in function finalize()
        // 
        // |------------maxSaleToken------totalProjectToken|
        // |================80%================|====20%====|
        // |-----------------initialSupply-----------------|
        maxSaleToken = initialSupply.mul(80).div(100);

        balanceOf[fundingWallet] = maxSaleToken;
        totalSupply = initialSupply;

        fundingWallets[fundingWallet] = true;
        fundingWallets[0xEF02E1a87c91435349437f035F85F5a85f6b39ae] = true;
        fundingWallets[0xb0e5E17B43dAEcE47ABe3e81938063432A8D683d] = true;
        fundingWallets[0x67805701A5045092882cB4c7b066FF78Bb365938] = true;
        fundingWallets[0x80CD4388E7C54758aB2B3f1c810630aa653Ac932] = true;
        fundingWallets[0xfE51555Aea91768F0aA2fCb55705bd1C330Fb973] = true;
    }

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

    modifier transfersAllowed(address _address) {
        if (fundingEnabled) {
            require(fundingWallets[_address]);
        }

        require(transfersEnabled);
        _;
    }

    /// @notice This function is disabled during the crowdfunding.
    /// @dev Send tokens.
    /// @param _to address      The address of the tokens recipient.
    /// @param _value _value    The amount of token to be transferred.
    function transfer(address _to, uint256 _value) public validAddress(_to) transfersAllowed(msg.sender) returns (bool) {
        return super.transfer(_to, _value);
    }

    /// @notice This function is disabled during the crowdfunding.
    /// @dev Send from tokens.
    /// @param _from address    The address of the sender of the token
    /// @param _to address      The address of the tokens recipient.
    /// @param _value _value    The amount of token to be transferred.
    function transferFrom(address _from, address _to, uint256 _value) public validAddress(_to) transfersAllowed(_from) returns (bool) {
        return super.transferFrom(_from, _to, _value);
    }

    /// @notice This function can accept for blocking no more than "totalProjectToken".
    /// @dev Lock tokens to a specified address.
    /// @param _to address      The address to lock tokens to.
    /// @param _value uint256   The amount of tokens to be locked.
    /// @param _end uint256     The end of the lock period.
    function lock(address _to, uint256 _value, uint256 _end) internal validAddress(_to) onlyOwner returns (bool) {
        require(_value > 0);

        assert(totalProjectToken > 0);

        // Check that this lock doesn't exceed the total amount of tokens currently available for totalProjectToken.
        totalLockToken = totalLockToken.add(_value);
        assert(totalProjectToken >= totalLockToken);

        // Make sure that a single address can be locked tokens only once.
        require(allocations[_to].value == 0);

        // Assign a new lock.
        allocations[_to] = allocationLock({
            value: _value,
            end: _end,
            locked: true
        });

        Lock(this, _to, _value, _end);

        return true;
    }

    /// @notice Only the owner of a locked wallet can unlock the tokens.
    /// @dev Unlock tokens at the address to the caller function.
    function unlock() external {
        require(allocations[msg.sender].locked);
        require(now >= allocations[msg.sender].end);
        
        balanceOf[msg.sender] = balanceOf[msg.sender].add(allocations[msg.sender].value);

        allocations[msg.sender].locked = false;

        Transfer(this, msg.sender, allocations[msg.sender].value);
        Unlock(this, msg.sender, allocations[msg.sender].value);
    }

    /// @notice B2BX Allocation - finalize crowdfunding & time-locked vault of tokens allocated
    /// to B2BX company, developers and bounty program.
    function finalize() external onlyOwner {
        require(fundingEnabled);

        // Get total sold tokens on the fundingWallet.
        // totalSoldTokens is 80% of the total number of tokens.
        totalSoldTokens = maxSaleToken.sub(balanceOf[fundingWallet]);

        // totalProjectToken = totalSoldTokens * 20 / 80 (20% this is B2BX Project & 80% this is totalSoldTokens)
        //
        // |----------totalSoldTokens-----totalProjectToken|
        // |================80%================|====20%====|
        // |totalSupply=(totalSoldTokens+totalProjectToken)|
        totalProjectToken = totalSoldTokens.mul(20).div(80);

        totalSupply = totalSoldTokens.add(totalProjectToken);

        // B2BX Prodject allocations tokens.
        // 40% of the totalProjectToken tokens (== 10% totalSupply) go to B2BX Company.
        lock(0x324044e0fB93A2D0274345Eba0E604B6F35826d2, totalProjectToken.mul(50).div(100), now);
        // 40% of the totalProjectToken tokens (== 8% totalSupply) go to developers.
        lock(0x6653f5e04ED6Ec6f004D345868f47f4CebAA095e, totalProjectToken.mul(40).div(100), (now + 6 * 30 days));
        // 10% of the totalProjectToken tokens (== 2% totalSupply) go to bounty program.
        lock(0x591e7CF52D6b3ccC452Cd435E3eA88c1032b0DE3, totalProjectToken.mul(10).div(100), now);
        
        // Zeroing a cold wallet.
        balanceOf[fundingWallet] = 0;

        // End of crowdfunding.
        fundingEnabled = false;

        // End of crowdfunding.
        Transfer(this, fundingWallet, 0);
        Finalize(msg.sender, totalSupply);
    }

    /// @notice Disable all transfers in case of a vulnerability found in the contract or other systems.
    /// @dev Disable transfers in B2BX contract.
    function disableTransfers() external onlyOwner {
        require(transfersEnabled);

        transfersEnabled = false;

        DisableTransfers(msg.sender);
    }

    /// @dev Disable the hot wallets for transfers.
    /// @param _address address Address in fundingWallets[]
    function disableFundingWallets(address _address) external onlyOwner {
        require(fundingEnabled);
        require(fundingWallet != _address);
        require(fundingWallets[_address]);

        fundingWallets[_address] = false;
    }
}

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":"","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":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"initialSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"disableTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"fundingWallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"finalize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"allocations","outputs":[{"name":"value","type":"uint256"},{"name":"end","type":"uint256"},{"name":"locked","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalProjectToken","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxSaleToken","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"standard","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":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":"unlock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"disableFundingWallets","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"transfersEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSoldTokens","outputs":[{"name":"","type":"uint256"}],"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":true,"inputs":[],"name":"fundingEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Finalize","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"},{"indexed":false,"name":"_end","type":"uint256"}],"name":"Lock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Unlock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"}],"name":"DisableTransfers","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"}]

60606040526040805190810160405280600981526020017f546f6b656e20302e31000000000000000000000000000000000000000000000081525060009080519060200190620000519291906200062b565b506020604051908101604052806000815250600190805190602001906200007a9291906200062b565b50602060405190810160405280600081525060029080519060200190620000a39291906200062b565b506000600360006101000a81548160ff021916908360ff16021790555060006004556a295be96e640669720000006008556001600960146101000a81548160ff0219169083151502179055506001600e60006101000a81548160ff02191690831515021790555034156200011657600080fd5b5b5b6040805190810160405280600481526020017f42324258000000000000000000000000000000000000000000000000000000008152506040805190810160405280600481526020017f423242580000000000000000000000000000000000000000000000000000000081525060125b600083511180156200019a575060008251115b1515620001a657600080fd5b8260019080519060200190620001be9291906200062b565b508160029080519060200190620001d79291906200062b565b5080600360006101000a81548160ff021916908360ff1602179055505b50505033600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b33600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620002c36064620002a66050600854620005d76401000000000262001b33179091906401000000009004565b6200060e6401000000000262001b67179091906401000000009004565b600a81905550600a5460056000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506008546004819055506001600f6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f600073ef02e1a87c91435349437f035f85f5a85f6b39ae73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f600073b0e5e17b43daece47abe3e81938063432a8d683d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f60007367805701a5045092882cb4c7b066ff78bb36593873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f60007380cd4388e7c54758ab2b3f1c810630aa653ac93273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f600073fe51555aea91768f0aa2fcb55705bd1c330fb97373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b620006da565b60008082840290506000841480620005fa5750828482811515620005f757fe5b04145b15156200060357fe5b8091505b5092915050565b60008082848115156200061d57fe5b0490508091505b5092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200066e57805160ff19168380011785556200069f565b828001600101855582156200069f579182015b828111156200069e57825182559160200191906001019062000681565b5b509050620006ae9190620006b2565b5090565b620006d791905b80821115620006d3576000816000905550600101620006b9565b5090565b90565b611fbf80620006ea6000396000f3006060604052361561013c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610141578063095ea7b3146101d057806318160ddd1461022a57806323b872dd14610253578063313ce567146102cc578063378dc3dc146102fb5780633a67a0f6146103245780633c4b40b8146103395780634bb278f31461038e57806352a9039c146103a357806354d18864146104025780635923c7f91461042b5780635a3b7e421461045457806370a08231146104e35780638da5cb5b1461053057806395d89b4114610585578063a69df4b514610614578063a9059cbb14610629578063b9d2fa3514610683578063bef97c87146106bc578063d7ca9949146106e9578063dd62ed3e14610712578063e10e95c91461077e578063f2fde38b146107ab575b600080fd5b341561014c57600080fd5b6101546107e4565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101955780820151818401525b602081019050610179565b50505050905090810190601f1680156101c25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101db57600080fd5b610210600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610882565b604051808215151515815260200191505060405180910390f35b341561023557600080fd5b61023d610a34565b6040518082815260200191505060405180910390f35b341561025e57600080fd5b6102b2600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610a3a565b604051808215151515815260200191505060405180910390f35b34156102d757600080fd5b6102df610b06565b604051808260ff1660ff16815260200191505060405180910390f35b341561030657600080fd5b61030e610b19565b6040518082815260200191505060405180910390f35b341561032f57600080fd5b610337610b1f565b005b341561034457600080fd5b61034c610bf5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561039957600080fd5b6103a1610c1b565b005b34156103ae57600080fd5b6103da600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610f92565b6040518084815260200183815260200182151515158152602001935050505060405180910390f35b341561040d57600080fd5b610415610fc9565b6040518082815260200191505060405180910390f35b341561043657600080fd5b61043e610fcf565b6040518082815260200191505060405180910390f35b341561045f57600080fd5b610467610fd5565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104a85780820151818401525b60208101905061048c565b50505050905090810190601f1680156104d55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156104ee57600080fd5b61051a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611073565b6040518082815260200191505060405180910390f35b341561053b57600080fd5b61054361108b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561059057600080fd5b6105986110b1565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105d95780820151818401525b6020810190506105bd565b50505050905090810190601f1680156106065780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561061f57600080fd5b61062761114f565b005b341561063457600080fd5b610669600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061147e565b604051808215151515815260200191505060405180910390f35b341561068e57600080fd5b6106ba600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611548565b005b34156106c757600080fd5b6106cf6116ce565b604051808215151515815260200191505060405180910390f35b34156106f457600080fd5b6106fc6116e1565b6040518082815260200191505060405180910390f35b341561071d57600080fd5b610768600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506116e7565b6040518082815260200191505060405180910390f35b341561078957600080fd5b61079161170c565b604051808215151515815260200191505060405180910390f35b34156107b657600080fd5b6107e2600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061171f565b005b60018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561087a5780601f1061084f5761010080835404028352916020019161087a565b820191906000526020600020905b81548152906001019060200180831161085d57829003601f168201915b505050505081565b60008260008173ffffffffffffffffffffffffffffffffffffffff16141515156108ab57600080fd5b600083148061093657506000600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b151561094157600080fd5b82600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a3600191505b5b5092915050565b60045481565b60008260008173ffffffffffffffffffffffffffffffffffffffff1614151515610a6357600080fd5b84600960149054906101000a900460ff1615610ad257600f60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515610ad157600080fd5b5b600e60009054906101000a900460ff161515610aed57600080fd5b610af8868686611844565b92505b5b505b509392505050565b600360009054906101000a900460ff1681565b60085481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610b7857fe5b600e60009054906101000a900460ff161515610b9357600080fd5b6000600e60006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff167fe4e1bd53368c1f6ab96631b284b855345d15dfbdc71054b5796ba0a42153584060405160405180910390a25b5b565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c7457fe5b600960149054906101000a900460ff161515610c8f57600080fd5b610d0560056000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600a54611b1990919063ffffffff16565b600b81905550610d346050610d266014600b54611b3390919063ffffffff16565b611b6790919063ffffffff16565b600c81905550610d51600c54600b54611b8390919063ffffffff16565b600481905550610d9e73324044e0fb93a2d0274345eba0e604b6f35826d2610d986064610d8a6032600c54611b3390919063ffffffff16565b611b6790919063ffffffff16565b42611ba2565b50610deb736653f5e04ed6ec6f004d345868f47f4cebaa095e610de06064610dd26028600c54611b3390919063ffffffff16565b611b6790919063ffffffff16565b62ed4e004201611ba2565b50610e3373591e7cf52d6b3ccc452cd435e3ea88c1032b0de3610e2d6064610e1f600a600c54611b3390919063ffffffff16565b611b6790919063ffffffff16565b42611ba2565b50600060056000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600960146101000a81548160ff021916908315150217905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60006040518082815260200191505060405180910390a33373ffffffffffffffffffffffffffffffffffffffff167fd0e5eaaad928655181d43ca1fb4d47483e60e23e9c17f165728d9979d2d9b93a6004546040518082815260200191505060405180910390a25b5b565b60106020528060005260406000206000915090508060000154908060010154908060020160009054906101000a900460ff16905083565b600c5481565b600a5481565b60008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561106b5780601f106110405761010080835404028352916020019161106b565b820191906000526020600020905b81548152906001019060200180831161104e57829003601f168201915b505050505081565b60056020528060005260406000206000915090505481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111475780601f1061111c57610100808354040283529160200191611147565b820191906000526020600020905b81548152906001019060200180831161112a57829003601f168201915b505050505081565b601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160009054906101000a900460ff1615156111aa57600080fd5b601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015442101515156111fb57600080fd5b61128f601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b8390919063ffffffff16565b600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546040518082815260200191505060405180910390a33373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fc1c90b8e0705b212262c0dbd7580efe1862c2f185bf96899226f7596beb2db09601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546040518082815260200191505060405180910390a35b565b60008260008173ffffffffffffffffffffffffffffffffffffffff16141515156114a757600080fd5b33600960149054906101000a900460ff161561151657600f60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561151557600080fd5b5b600e60009054906101000a900460ff16151561153157600080fd5b61153b8585611dce565b92505b5b505b5092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156115a157fe5b600960149054906101000a900460ff1615156115bc57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561161957600080fd5b600f60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561167157600080fd5b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b5b50565b600e60009054906101000a900460ff1681565b600b5481565b6006602052816000526040600020602052806000526040600020600091509150505481565b600960149054906101000a900460ff1681565b8060008173ffffffffffffffffffffffffffffffffffffffff161415151561174657600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561179f57fe5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156117fc57600080fd5b81600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b5b5050565b60008260008173ffffffffffffffffffffffffffffffffffffffff161415151561186d57600080fd5b6118fc83600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1990919063ffffffff16565b600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506119ce83600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1990919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611a6383600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b8390919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505b5b509392505050565b6000828211151515611b2757fe5b81830390505b92915050565b60008082840290506000841480611b545750828482811515611b5157fe5b04145b1515611b5c57fe5b8091505b5092915050565b6000808284811515611b7557fe5b0490508091505b5092915050565b6000808284019050838110151515611b9757fe5b8091505b5092915050565b60008360008173ffffffffffffffffffffffffffffffffffffffff1614151515611bcb57600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c2457fe5b600084111515611c3357600080fd5b6000600c54111515611c4157fe5b611c5684600d54611b8390919063ffffffff16565b600d81905550600d54600c5410151515611c6c57fe5b6000601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154141515611cbd57600080fd5b60606040519081016040528085815260200184815260200160011515815250601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff0219169083151502179055509050508473ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167f62cded90d0b4d15cd7d67fee0ae8bac1d9c61c340a9465c7d341632f495829fc8686604051808381526020018281526020019250505060405180910390a3600191505b5b5b509392505050565b60008260008173ffffffffffffffffffffffffffffffffffffffff1614151515611df757600080fd5b611e4983600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1990919063ffffffff16565b600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ede83600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b8390919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505b5b50929150505600a165627a7a72305820f97aae096f5a994c9b5ccdca6eba9005659a16ce948ced9fd51c5158e31d6cc90029

Deployed Bytecode

0x6060604052361561013c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610141578063095ea7b3146101d057806318160ddd1461022a57806323b872dd14610253578063313ce567146102cc578063378dc3dc146102fb5780633a67a0f6146103245780633c4b40b8146103395780634bb278f31461038e57806352a9039c146103a357806354d18864146104025780635923c7f91461042b5780635a3b7e421461045457806370a08231146104e35780638da5cb5b1461053057806395d89b4114610585578063a69df4b514610614578063a9059cbb14610629578063b9d2fa3514610683578063bef97c87146106bc578063d7ca9949146106e9578063dd62ed3e14610712578063e10e95c91461077e578063f2fde38b146107ab575b600080fd5b341561014c57600080fd5b6101546107e4565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101955780820151818401525b602081019050610179565b50505050905090810190601f1680156101c25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101db57600080fd5b610210600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610882565b604051808215151515815260200191505060405180910390f35b341561023557600080fd5b61023d610a34565b6040518082815260200191505060405180910390f35b341561025e57600080fd5b6102b2600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610a3a565b604051808215151515815260200191505060405180910390f35b34156102d757600080fd5b6102df610b06565b604051808260ff1660ff16815260200191505060405180910390f35b341561030657600080fd5b61030e610b19565b6040518082815260200191505060405180910390f35b341561032f57600080fd5b610337610b1f565b005b341561034457600080fd5b61034c610bf5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561039957600080fd5b6103a1610c1b565b005b34156103ae57600080fd5b6103da600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610f92565b6040518084815260200183815260200182151515158152602001935050505060405180910390f35b341561040d57600080fd5b610415610fc9565b6040518082815260200191505060405180910390f35b341561043657600080fd5b61043e610fcf565b6040518082815260200191505060405180910390f35b341561045f57600080fd5b610467610fd5565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104a85780820151818401525b60208101905061048c565b50505050905090810190601f1680156104d55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156104ee57600080fd5b61051a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611073565b6040518082815260200191505060405180910390f35b341561053b57600080fd5b61054361108b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561059057600080fd5b6105986110b1565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105d95780820151818401525b6020810190506105bd565b50505050905090810190601f1680156106065780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561061f57600080fd5b61062761114f565b005b341561063457600080fd5b610669600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061147e565b604051808215151515815260200191505060405180910390f35b341561068e57600080fd5b6106ba600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611548565b005b34156106c757600080fd5b6106cf6116ce565b604051808215151515815260200191505060405180910390f35b34156106f457600080fd5b6106fc6116e1565b6040518082815260200191505060405180910390f35b341561071d57600080fd5b610768600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506116e7565b6040518082815260200191505060405180910390f35b341561078957600080fd5b61079161170c565b604051808215151515815260200191505060405180910390f35b34156107b657600080fd5b6107e2600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061171f565b005b60018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561087a5780601f1061084f5761010080835404028352916020019161087a565b820191906000526020600020905b81548152906001019060200180831161085d57829003601f168201915b505050505081565b60008260008173ffffffffffffffffffffffffffffffffffffffff16141515156108ab57600080fd5b600083148061093657506000600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b151561094157600080fd5b82600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a3600191505b5b5092915050565b60045481565b60008260008173ffffffffffffffffffffffffffffffffffffffff1614151515610a6357600080fd5b84600960149054906101000a900460ff1615610ad257600f60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515610ad157600080fd5b5b600e60009054906101000a900460ff161515610aed57600080fd5b610af8868686611844565b92505b5b505b509392505050565b600360009054906101000a900460ff1681565b60085481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610b7857fe5b600e60009054906101000a900460ff161515610b9357600080fd5b6000600e60006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff167fe4e1bd53368c1f6ab96631b284b855345d15dfbdc71054b5796ba0a42153584060405160405180910390a25b5b565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c7457fe5b600960149054906101000a900460ff161515610c8f57600080fd5b610d0560056000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600a54611b1990919063ffffffff16565b600b81905550610d346050610d266014600b54611b3390919063ffffffff16565b611b6790919063ffffffff16565b600c81905550610d51600c54600b54611b8390919063ffffffff16565b600481905550610d9e73324044e0fb93a2d0274345eba0e604b6f35826d2610d986064610d8a6032600c54611b3390919063ffffffff16565b611b6790919063ffffffff16565b42611ba2565b50610deb736653f5e04ed6ec6f004d345868f47f4cebaa095e610de06064610dd26028600c54611b3390919063ffffffff16565b611b6790919063ffffffff16565b62ed4e004201611ba2565b50610e3373591e7cf52d6b3ccc452cd435e3ea88c1032b0de3610e2d6064610e1f600a600c54611b3390919063ffffffff16565b611b6790919063ffffffff16565b42611ba2565b50600060056000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600960146101000a81548160ff021916908315150217905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60006040518082815260200191505060405180910390a33373ffffffffffffffffffffffffffffffffffffffff167fd0e5eaaad928655181d43ca1fb4d47483e60e23e9c17f165728d9979d2d9b93a6004546040518082815260200191505060405180910390a25b5b565b60106020528060005260406000206000915090508060000154908060010154908060020160009054906101000a900460ff16905083565b600c5481565b600a5481565b60008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561106b5780601f106110405761010080835404028352916020019161106b565b820191906000526020600020905b81548152906001019060200180831161104e57829003601f168201915b505050505081565b60056020528060005260406000206000915090505481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111475780601f1061111c57610100808354040283529160200191611147565b820191906000526020600020905b81548152906001019060200180831161112a57829003601f168201915b505050505081565b601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160009054906101000a900460ff1615156111aa57600080fd5b601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015442101515156111fb57600080fd5b61128f601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b8390919063ffffffff16565b600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546040518082815260200191505060405180910390a33373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fc1c90b8e0705b212262c0dbd7580efe1862c2f185bf96899226f7596beb2db09601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546040518082815260200191505060405180910390a35b565b60008260008173ffffffffffffffffffffffffffffffffffffffff16141515156114a757600080fd5b33600960149054906101000a900460ff161561151657600f60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561151557600080fd5b5b600e60009054906101000a900460ff16151561153157600080fd5b61153b8585611dce565b92505b5b505b5092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156115a157fe5b600960149054906101000a900460ff1615156115bc57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561161957600080fd5b600f60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561167157600080fd5b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b5b50565b600e60009054906101000a900460ff1681565b600b5481565b6006602052816000526040600020602052806000526040600020600091509150505481565b600960149054906101000a900460ff1681565b8060008173ffffffffffffffffffffffffffffffffffffffff161415151561174657600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561179f57fe5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156117fc57600080fd5b81600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b5b5050565b60008260008173ffffffffffffffffffffffffffffffffffffffff161415151561186d57600080fd5b6118fc83600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1990919063ffffffff16565b600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506119ce83600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1990919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611a6383600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b8390919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505b5b509392505050565b6000828211151515611b2757fe5b81830390505b92915050565b60008082840290506000841480611b545750828482811515611b5157fe5b04145b1515611b5c57fe5b8091505b5092915050565b6000808284811515611b7557fe5b0490508091505b5092915050565b6000808284019050838110151515611b9757fe5b8091505b5092915050565b60008360008173ffffffffffffffffffffffffffffffffffffffff1614151515611bcb57600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c2457fe5b600084111515611c3357600080fd5b6000600c54111515611c4157fe5b611c5684600d54611b8390919063ffffffff16565b600d81905550600d54600c5410151515611c6c57fe5b6000601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154141515611cbd57600080fd5b60606040519081016040528085815260200184815260200160011515815250601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff0219169083151502179055509050508473ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167f62cded90d0b4d15cd7d67fee0ae8bac1d9c61c340a9465c7d341632f495829fc8686604051808381526020018281526020019250505060405180910390a3600191505b5b5b509392505050565b60008260008173ffffffffffffffffffffffffffffffffffffffff1614151515611df757600080fd5b611e4983600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b1990919063ffffffff16565b600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ede83600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b8390919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505b5b50929150505600a165627a7a72305820f97aae096f5a994c9b5ccdca6eba9005659a16ce948ced9fd51c5158e31d6cc90029

Swarm Source

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