ETH Price: $3,102.34 (-4.06%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer111421032020-10-28 1:25:551558 days ago1603848355IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0011680230
Transfer109120672020-09-22 11:37:321593 days ago1600774652IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0038946100
Transfer93863242020-01-30 22:43:111829 days ago1580424191IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.000030531
Transfer88399412019-10-30 11:11:391921 days ago1572433899IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0006313212
Transfer84448912019-08-29 11:44:211983 days ago1567079061IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0005307110.1
Transfer77906882019-05-19 13:10:482085 days ago1558271448IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0021025756
Transfer77396582019-05-11 14:13:552093 days ago1557584035IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.00120
Transfer77394532019-05-11 13:26:082093 days ago1557581168IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.000492320
Transfer77394372019-05-11 13:24:042093 days ago1557581044IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0007384420
Transfer77394272019-05-11 13:22:272093 days ago1557580947IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.000492320
Transfer77394242019-05-11 13:21:182093 days ago1557580878IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.00120
Transfer77394152019-05-11 13:18:442093 days ago1557580724IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0003692210
Transfer71632692019-02-02 11:16:392191 days ago1549106199IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0015796242
Transfer69553932018-12-26 9:15:232230 days ago1545815723IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0007496420
Transfer65180512018-10-15 6:08:332302 days ago1539583713IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.003156660
Transfer62730182018-09-04 23:25:292342 days ago1536103529IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0021543841
Transfer61017432018-08-07 1:06:292371 days ago1533603989IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.001232950
Transfer61017402018-08-07 1:05:512371 days ago1533603951IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.001886950
Transfer60336102018-07-26 13:33:342382 days ago1532612014IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0015420141
Transfer60325552018-07-26 9:05:192383 days ago1532595919IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0012341
Transfer58286012018-06-21 13:23:032417 days ago1529587383IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0007534820
Transfer58078562018-06-18 0:23:202421 days ago1529281400IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0015446341
Transfer57867692018-06-14 9:50:152425 days ago1528969815IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0015393841
Transfer57866732018-06-14 9:26:072425 days ago1528968367IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0015420141
Transfer57809072018-06-13 9:30:012426 days ago1528882201IN
0x69Cd4e1E...CC6D60FC1
0 ETH0.0016895745
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
46376072017-11-28 11:54:012622 days ago1511870041
0x69Cd4e1E...CC6D60FC1
2.12305 ETH
46375992017-11-28 11:52:332622 days ago1511869953
0x69Cd4e1E...CC6D60FC1
0.0692857 ETH
46375932017-11-28 11:51:312622 days ago1511869891
0x69Cd4e1E...CC6D60FC1
0.02889075 ETH
46375712017-11-28 11:46:052622 days ago1511869565
0x69Cd4e1E...CC6D60FC1
0.209605 ETH
46375552017-11-28 11:42:412622 days ago1511869361
0x69Cd4e1E...CC6D60FC1
5.097 ETH
46375512017-11-28 11:41:372622 days ago1511869297
0x69Cd4e1E...CC6D60FC1
0.5070792 ETH
46375242017-11-28 11:36:292622 days ago1511868989
0x69Cd4e1E...CC6D60FC1
2.617926 ETH
46375222017-11-28 11:36:022622 days ago1511868962
0x69Cd4e1E...CC6D60FC1
0.04984125 ETH
46375082017-11-28 11:32:052622 days ago1511868725
0x69Cd4e1E...CC6D60FC1
1.4976915 ETH
46374972017-11-28 11:29:142622 days ago1511868554
0x69Cd4e1E...CC6D60FC1
2.11065 ETH
46374732017-11-28 11:24:072622 days ago1511868247
0x69Cd4e1E...CC6D60FC1
0.628167 ETH
46374672017-11-28 11:23:202622 days ago1511868200
0x69Cd4e1E...CC6D60FC1
6.31632 ETH
46374672017-11-28 11:23:202622 days ago1511868200
0x69Cd4e1E...CC6D60FC1
0.03491592 ETH
46374562017-11-28 11:20:072622 days ago1511868007
0x69Cd4e1E...CC6D60FC1
0.0601167 ETH
46374502017-11-28 11:18:262622 days ago1511867906
0x69Cd4e1E...CC6D60FC1
0.99769387 ETH
46374462017-11-28 11:17:452622 days ago1511867865
0x69Cd4e1E...CC6D60FC1
0.62906687 ETH
46373672017-11-28 10:59:382622 days ago1511866778
0x69Cd4e1E...CC6D60FC1
1.05027131 ETH
46373462017-11-28 10:54:122622 days ago1511866452
0x69Cd4e1E...CC6D60FC1
0.01899767 ETH
46373132017-11-28 10:45:392623 days ago1511865939
0x69Cd4e1E...CC6D60FC1
21.05407131 ETH
46372932017-11-28 10:39:012623 days ago1511865541
0x69Cd4e1E...CC6D60FC1
1.05011131 ETH
46372652017-11-28 10:30:522623 days ago1511865052
0x69Cd4e1E...CC6D60FC1
0.50228891 ETH
46371952017-11-28 10:17:192623 days ago1511864239
0x69Cd4e1E...CC6D60FC1
0.41847931 ETH
46371182017-11-28 9:56:512623 days ago1511863011
0x69Cd4e1E...CC6D60FC1
12.628125 ETH
46370412017-11-28 9:39:022623 days ago1511861942
0x69Cd4e1E...CC6D60FC1
20.9895 ETH
46368592017-11-28 8:56:002623 days ago1511859360
0x69Cd4e1E...CC6D60FC1
0.0832408 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TokenboxToken

Compiler Version
v0.4.18+commit.9cf6e910

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

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

pragma solidity ^0.4.13;


/// @title Abstract ERC20 token interface
contract AbstractToken {

    function totalSupply() constant returns (uint256) {}
    function balanceOf(address owner) constant returns (uint256 balance);
    function transfer(address to, uint256 value) returns (bool success);
    function transferFrom(address from, address to, uint256 value) returns (bool success);
    function approve(address spender, uint256 value) returns (bool success);
    function allowance(address owner, address spender) constant returns (uint256 remaining);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
    event Issuance(address indexed to, uint256 value);
}


contract Owned {

    address public owner = msg.sender;
    address public potentialOwner;

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }

    modifier onlyPotentialOwner {
        require(msg.sender == potentialOwner);
        _;
    }

    event NewOwner(address old, address current);
    event NewPotentialOwner(address old, address potential);

    function setOwner(address _new)
        public
        onlyOwner
    {
        NewPotentialOwner(owner, _new);
        potentialOwner = _new;
    }

    function confirmOwnership()
        public
        onlyPotentialOwner
    {
        NewOwner(owner, potentialOwner);
        owner = potentialOwner;
        potentialOwner = 0;
    }
}


/// Implements ERC 20 Token standard: https://github.com/ethereum/EIPs/issues/20
contract StandardToken is AbstractToken, Owned {

    /*
     *  Data structures
     */
    mapping (address => uint256) balances;
    mapping (address => mapping (address => uint256)) allowed;
    uint256 public totalSupply;

    /*
     *  Read and write storage functions
     */
    /// @dev Transfers sender's tokens to a given address. Returns success.
    /// @param _to Address of token receiver.
    /// @param _value Number of tokens to transfer.
    function transfer(address _to, uint256 _value) returns (bool success) {
        if (balances[msg.sender] >= _value && balances[_to] + _value > balances[_to]) {
            balances[msg.sender] -= _value;
            balances[_to] += _value;
            Transfer(msg.sender, _to, _value);
            return true;
        }
        else {
            return false;
        }
    }

    /// @dev Allows allowed third party to transfer tokens from one address to another. Returns success.
    /// @param _from Address from where tokens are withdrawn.
    /// @param _to Address to where tokens are sent.
    /// @param _value Number of tokens to transfer.
    function transferFrom(address _from, address _to, uint256 _value) returns (bool success) {
      if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && balances[_to] + _value > balances[_to]) {
            balances[_to] += _value;
            balances[_from] -= _value;
            allowed[_from][msg.sender] -= _value;
            Transfer(_from, _to, _value);
            return true;
        }
        else {
            return false;
        }
    }

    /// @dev Returns number of tokens owned by given address.
    /// @param _owner Address of token owner.
    function balanceOf(address _owner) constant returns (uint256 balance) {
        return balances[_owner];
    }

    /// @dev Sets approved amount of tokens for spender. Returns success.
    /// @param _spender Address of allowed account.
    /// @param _value Number of approved tokens.
    function approve(address _spender, uint256 _value) returns (bool success) {
        allowed[msg.sender][_spender] = _value;
        Approval(msg.sender, _spender, _value);
        return true;
    }

    /*
     * Read storage functions
     */
    /// @dev Returns number of allowed tokens for given address.
    /// @param _owner Address of token owner.
    /// @param _spender Address of token spender.
    function allowance(address _owner, address _spender) constant returns (uint256 remaining) {
      return allowed[_owner][_spender];
    }

}


/// @title SafeMath contract - Math operations with safety checks.
/// @author OpenZeppelin: https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts/math/SafeMath.sol
contract SafeMath {
    function mul(uint a, uint b) internal returns (uint) {
        uint c = a * b;
        assert(a == 0 || c / a == b);
        return c;
    }

    function div(uint a, uint b) internal returns (uint) {
        assert(b > 0);
        uint c = a / b;
        assert(a == b * c + a % b);
        return c;
    }

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

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

    function pow(uint a, uint b) internal returns (uint) {
        uint c = a ** b;
        assert(c >= a);
        return c;
    }
}


/// @title Token contract - Implements Standard ERC20 with additional features.
/// @author Zerion - <[email protected]>
contract Token is StandardToken, SafeMath {

    // Time of the contract creation
    uint public creationTime;

    function Token() {
        creationTime = now;
    }


    /// @dev Owner can transfer out any accidentally sent ERC20 tokens
    function transferERC20Token(address tokenAddress)
        public
        onlyOwner
        returns (bool)
    {
        uint balance = AbstractToken(tokenAddress).balanceOf(this);
        return AbstractToken(tokenAddress).transfer(owner, balance);
    }

    /// @dev Multiplies the given number by 10^(decimals)
    function withDecimals(uint number, uint decimals)
        internal
        returns (uint)
    {
        return mul(number, pow(10, decimals));
    }
}


/// @title Token contract - Implements Standard ERC20 Token for Tokenbox project.
/// @author Zerion - <[email protected]>
contract TokenboxToken is Token {

    /*
     * Token meta data
     */
    string constant public name = "Tokenbox";
    //TODO: Fix before production
    string constant public symbol = "TBX";
    uint8 constant public decimals = 18;

    // Address where Foundation tokens are allocated
    address constant public foundationReserve = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF;

    // Address where all tokens for the ICO stage are initially allocated
    address constant public icoAllocation = 0x1111111111111111111111111111111111111111;

    // Address where all tokens for the PreICO are initially allocated
    address constant public preIcoAllocation = 0x2222222222222222222222222222222222222222;

    // TGE start date. 11/14/2017 @ 12:00pm (UTC)
    uint256 constant public startDate = 1510660800;
    // TGE duration is 14 days
    uint256 constant public duration = 14 days;

    // Vesting date to withdraw 15% of total sold tokens, 11/28/2018 @ 12:00pm (UTC)
    uint256 constant public vestingDateEnd = 1543406400;

    // Total USD collected (10^-12)
    uint256 public totalPicoUSD = 0;
    uint8 constant public usdDecimals = 12;

    // Public key of the signer
    address public signer;

    // Foundation multisignature wallet, all Ether is collected there
    address public multisig;

    bool public finalised = false;

    // Events
    event InvestmentInETH(address investor, uint256 tokenPriceInWei, uint256 investedInWei, uint256 investedInPicoUsd, uint256 tokensNumber, bytes32 hash);
    event InvestmentInBTC(address investor, uint256 tokenPriceInSatoshi, uint256 investedInSatoshi, uint256 investedInPicoUsd, uint256 tokensNumber, string btcAddress);
    event InvestmentInUSD(address investor, uint256 tokenPriceInPicoUsd, uint256 investedInPicoUsd, uint256 tokensNumber);
    event PresaleInvestment(address investor, uint256 investedInPicoUsd, uint256 tokensNumber);

    /// @dev Contract constructor, sets totalSupply
    function TokenboxToken(address _signer, address _multisig, uint256 _preIcoTokens )
    {
        // Overall, 31,000,000 TBX tokens are distributed
        totalSupply = withDecimals(31000000, decimals);

        uint preIcoTokens = withDecimals(_preIcoTokens, decimals);

        // PreICO tokens are allocated to the special address and will be distributed manually
        balances[preIcoAllocation] = preIcoTokens;

        // foundationReserve balance will be allocated after the end of the crowdsale
        balances[foundationReserve] = 0;

        // The rest of the tokens is available for sale (75% of totalSupply)
        balances[icoAllocation] = div(mul(totalSupply, 75), 100)  - preIcoTokens;

        signer = _signer;
        multisig = _multisig;
    }

    modifier icoIsActive {
        require(now >= startDate && now < startDate + duration);
        _;
    }

    modifier icoIsCompleted {
        require(now >= startDate + duration);
        _;
    }

    modifier onlyOwnerOrSigner {
        require((msg.sender == owner) || (msg.sender == signer));
        _;
    }

    /// @dev Settle an investment made in ETH and distribute tokens
    function invest(address investor, uint256 tokenPriceInPicoUsd, uint256 investedInWei, bytes32 hash, uint8 v, bytes32 r, bytes32 s, uint256 WeiToUSD)
        public
        icoIsActive
        payable
    {
        // Check the hash
        require(sha256(uint(investor) << 96 | tokenPriceInPicoUsd) == hash);

        // Check the signature
        require(ecrecover(hash, v, r, s) == signer);

        // Difference between the value argument and actual value should not be
        // more than 0.005 ETH (gas commission)
        require(sub(investedInWei, msg.value) <= withDecimals(5, 15));

        uint tokenPriceInWei = div(mul(tokenPriceInPicoUsd, WeiToUSD), pow(10, usdDecimals));

        // Number of tokens to distribute
        uint256 tokensNumber = div(withDecimals(investedInWei, decimals), tokenPriceInWei);

        // Check if there is enough tokens left
        require(balances[icoAllocation] >= tokensNumber);

        // Send Ether to the multisig
        require(multisig.send(msg.value));

        uint256 investedInPicoUsd = div(withDecimals(investedInWei, usdDecimals), WeiToUSD);

        investInUSD(investor, investedInPicoUsd, tokensNumber);

        InvestmentInETH(investor, tokenPriceInWei, investedInWei, investedInPicoUsd, tokensNumber, hash);
    }

    /// @dev Settle an investment in BTC and distribute tokens.
    function investInBTC(address investor, uint256 tokenPriceInPicoUsd, uint256 investedInSatoshi, string btcAddress, uint256 satoshiToUSD)
        public
        icoIsActive
        onlyOwnerOrSigner
    {
        uint tokenPriceInSatoshi = div(mul(tokenPriceInPicoUsd, satoshiToUSD), pow(10, usdDecimals));

        // Number of tokens to distribute
        uint256 tokensNumber = div(withDecimals(investedInSatoshi, decimals), tokenPriceInSatoshi);

        // Check if there is enough tokens left
        require(balances[icoAllocation] >= tokensNumber);

        uint256 investedInPicoUsd = div(withDecimals(investedInSatoshi, usdDecimals), satoshiToUSD);

        investInUSD(investor, investedInPicoUsd, tokensNumber);

        InvestmentInBTC(investor, tokenPriceInSatoshi, investedInSatoshi, investedInPicoUsd, tokensNumber, btcAddress);
    }

    // @dev Invest in USD
    function investInUSD(address investor, uint256 investedInPicoUsd, uint256 tokensNumber)
        private
    {
      totalPicoUSD = add(totalPicoUSD, investedInPicoUsd);

      // Allocate tokens to an investor
      balances[icoAllocation] -= tokensNumber;
      balances[investor] += tokensNumber;
      Transfer(icoAllocation, investor, tokensNumber);
    }

    // @dev Wire investment
    function wireInvestInUSD(address investor, uint256 tokenPriceInUsdCents, uint256 investedInUsdCents)
        public
        icoIsActive
        onlyOwnerOrSigner
     {

       uint256 tokensNumber = div(withDecimals(investedInUsdCents, decimals), tokenPriceInUsdCents);

       // Check if there is enough tokens left
       require(balances[icoAllocation] >= tokensNumber);

       // We subtract 2 because the value is in cents.
       uint256 investedInPicoUsd = withDecimals(investedInUsdCents, usdDecimals - 2);
       uint256 tokenPriceInPicoUsd = withDecimals(tokenPriceInUsdCents, usdDecimals - 2);

       investInUSD(investor, investedInPicoUsd, tokensNumber);

       InvestmentInUSD(investor, tokenPriceInPicoUsd, investedInPicoUsd, tokensNumber);
    }

    // @dev Presale tokens distribution
    function preIcoDistribution(address investor, uint256 investedInUsdCents, uint256 tokensNumber)
        public
        onlyOwner
    {
      uint256 tokensNumberWithDecimals = withDecimals(tokensNumber, decimals);

      // Check if there is enough tokens left
      require(balances[preIcoAllocation] >= tokensNumberWithDecimals);

      // Allocate tokens to an investor
      balances[preIcoAllocation] -= tokensNumberWithDecimals;
      balances[investor] += tokensNumberWithDecimals;
      Transfer(preIcoAllocation, investor, tokensNumberWithDecimals);

      uint256 investedInPicoUsd = withDecimals(investedInUsdCents, usdDecimals - 2);
      // Add investment to totalPicoUSD collected
      totalPicoUSD = add(totalPicoUSD, investedInPicoUsd);

      PresaleInvestment(investor, investedInPicoUsd, tokensNumberWithDecimals);
    }


    /// @dev Allow token withdrawals from Foundation reserve
    function allowToWithdrawFromReserve()
        public
        onlyOwner
    {
        require(now >= vestingDateEnd);

        // Allow the owner to withdraw tokens from the Foundation reserve
        allowed[foundationReserve][msg.sender] = balanceOf(foundationReserve);
    }


    // @dev Withdraws tokens from Foundation reserve
    function withdrawFromReserve(uint amount)
        public
        onlyOwner
    {
        require(now >= vestingDateEnd);
        // Withdraw tokens from Foundation reserve to multisig address
        require(transferFrom(foundationReserve, multisig, amount));
    }

    /// @dev Changes multisig address
    function changeMultisig(address _multisig)
        public
        onlyOwner
    {
        multisig = _multisig;
    }

    /// @dev Changes signer address
    function changeSigner(address _signer)
        public
        onlyOwner
    {
        signer = _signer;
    }

    /// @dev Burns the rest of the tokens after the crowdsale end and
    /// send 10% tokens of totalSupply to team address
    function finaliseICO()
        public
        onlyOwner
        icoIsCompleted
    {
        require(!finalised);

        //total sold during ICO
        totalSupply = sub(totalSupply, balanceOf(icoAllocation));
        totalSupply = sub(totalSupply, withDecimals(7750000, decimals));

        //send 5% bounty + 7.5% of total sold tokens to team address
        balances[multisig] = div(mul(totalSupply, 125), 1000);

        //lock 12.5% of sold tokens to team address for one year
        balances[foundationReserve] = div(mul(totalSupply, 125), 1000);

        totalSupply = add(totalSupply, mul(balanceOf(foundationReserve), 2));

        //burn the rest of tokens
        balances[icoAllocation] = 0;

        finalised = true;
    }

    function totalUSD()
      public
      constant
      returns (uint)
    {
       return div(totalPicoUSD, pow(10, usdDecimals));
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"totalPicoUSD","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"withdrawFromReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"startDate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"duration","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_new","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"finalised","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_multisig","type":"address"}],"name":"changeMultisig","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"signer","outputs":[{"name":"","type":"address"}],"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":"finaliseICO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"multisig","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"icoAllocation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"tokenAddress","type":"address"}],"name":"transferERC20Token","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"foundationReserve","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"usdDecimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"investor","type":"address"},{"name":"tokenPriceInPicoUsd","type":"uint256"},{"name":"investedInSatoshi","type":"uint256"},{"name":"btcAddress","type":"string"},{"name":"satoshiToUSD","type":"uint256"}],"name":"investInBTC","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"investor","type":"address"},{"name":"tokenPriceInPicoUsd","type":"uint256"},{"name":"investedInWei","type":"uint256"},{"name":"hash","type":"bytes32"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"},{"name":"WeiToUSD","type":"uint256"}],"name":"invest","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"potentialOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"allowToWithdrawFromReserve","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":true,"inputs":[],"name":"totalUSD","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","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":false,"inputs":[{"name":"_signer","type":"address"}],"name":"changeSigner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"investor","type":"address"},{"name":"tokenPriceInUsdCents","type":"uint256"},{"name":"investedInUsdCents","type":"uint256"}],"name":"wireInvestInUSD","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"investor","type":"address"},{"name":"investedInUsdCents","type":"uint256"},{"name":"tokensNumber","type":"uint256"}],"name":"preIcoDistribution","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"confirmOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"creationTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vestingDateEnd","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"preIcoAllocation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_signer","type":"address"},{"name":"_multisig","type":"address"},{"name":"_preIcoTokens","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"investor","type":"address"},{"indexed":false,"name":"tokenPriceInWei","type":"uint256"},{"indexed":false,"name":"investedInWei","type":"uint256"},{"indexed":false,"name":"investedInPicoUsd","type":"uint256"},{"indexed":false,"name":"tokensNumber","type":"uint256"},{"indexed":false,"name":"hash","type":"bytes32"}],"name":"InvestmentInETH","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"investor","type":"address"},{"indexed":false,"name":"tokenPriceInSatoshi","type":"uint256"},{"indexed":false,"name":"investedInSatoshi","type":"uint256"},{"indexed":false,"name":"investedInPicoUsd","type":"uint256"},{"indexed":false,"name":"tokensNumber","type":"uint256"},{"indexed":false,"name":"btcAddress","type":"string"}],"name":"InvestmentInBTC","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"investor","type":"address"},{"indexed":false,"name":"tokenPriceInPicoUsd","type":"uint256"},{"indexed":false,"name":"investedInPicoUsd","type":"uint256"},{"indexed":false,"name":"tokensNumber","type":"uint256"}],"name":"InvestmentInUSD","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"investor","type":"address"},{"indexed":false,"name":"investedInPicoUsd","type":"uint256"},{"indexed":false,"name":"tokensNumber","type":"uint256"}],"name":"PresaleInvestment","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"old","type":"address"},{"indexed":false,"name":"current","type":"address"}],"name":"NewOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"old","type":"address"},{"indexed":false,"name":"potential","type":"address"}],"name":"NewPotentialOwner","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"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Issuance","type":"event"}]

6060604052336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060006006556000600860146101000a81548160ff02191690831515021790555034156200007057600080fd5b60405160608062002f8483398101604052808051906020019091908051906020019091908051906020019091905050600042600581905550620000d06301d905c0601260ff16620002c16401000000000262002997176401000000009004565b600481905550620000fa82601260ff16620002c16401000000000262002997176401000000009004565b9050806002600073222222222222222222222222222222222222222273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006002600073ffffffffffffffffffffffffffffffffffffffff801673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080620001dd620001c1600454604b6200030b64010000000002620029b5176401000000009004565b60646200034164010000000002620029e8176401000000009004565b036002600073111111111111111111111111111111111111111173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555083600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050620003a5565b60006200030383620002e9600a85620003866401000000000262002a47176401000000009004565b6200030b64010000000002620029b5176401000000009004565b905092915050565b600080828402905060008414806200032e57508284828115156200032b57fe5b04145b15156200033757fe5b8091505092915050565b6000806000831115156200035157fe5b82848115156200035d57fe5b04905082848115156200036c57fe5b0681840201841415156200037c57fe5b8091505092915050565b60008082840a90508381101515156200039b57fe5b8091505092915050565b612bcf80620003b56000396000f3006060604052600436106101c2576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806302bfeeb8146101c757806306fdde03146101f0578063095ea7b31461027e5780630a8bcdb9146102d85780630b97bc86146102fb5780630fb5a6b41461032457806313af40351461034d57806318160ddd14610386578063214bb60f146103af5780632268a358146103dc578063238ac9331461041557806323b872dd1461046a578063313ce567146104e357806339f95e63146105125780634783c35b146105275780634dc591961461057c57806356d7c2c8146105d1578063603066a41461062257806366a4b6c0146106775780636a93413d146106a65780636e3ac99f1461073d57806370a08231146107b95780637762df25146108065780638a6b9be41461085b5780638da5cb5b1461087057806395d89b41146108c5578063a3ae88a014610953578063a9059cbb1461097c578063aad2b723146109d6578063c7ccb1ea14610a0f578063c99c558014610a5a578063d5d1e77014610aa5578063d8270dce14610aba578063d8353b7514610ae3578063dd62ed3e14610b0c578063f11eb09914610b78575b600080fd5b34156101d257600080fd5b6101da610bcd565b6040518082815260200191505060405180910390f35b34156101fb57600080fd5b610203610bd3565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610243578082015181840152602081019050610228565b50505050905090810190601f1680156102705780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561028957600080fd5b6102be600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610c0c565b604051808215151515815260200191505060405180910390f35b34156102e357600080fd5b6102f96004808035906020019091905050610cfe565b005b341561030657600080fd5b61030e610dbb565b6040518082815260200191505060405180910390f35b341561032f57600080fd5b610337610dc3565b6040518082815260200191505060405180910390f35b341561035857600080fd5b610384600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610dca565b005b341561039157600080fd5b610399610f21565b6040518082815260200191505060405180910390f35b34156103ba57600080fd5b6103c2610f27565b604051808215151515815260200191505060405180910390f35b34156103e757600080fd5b610413600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610f3a565b005b341561042057600080fd5b610428610fd9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561047557600080fd5b6104c9600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610fff565b604051808215151515815260200191505060405180910390f35b34156104ee57600080fd5b6104f66112fa565b604051808260ff1660ff16815260200191505060405180910390f35b341561051d57600080fd5b6105256112ff565b005b341561053257600080fd5b61053a611564565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561058757600080fd5b61058f61158a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156105dc57600080fd5b610608600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506115a2565b604051808215151515815260200191505060405180910390f35b341561062d57600080fd5b6106356117af565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561068257600080fd5b61068a6117c7565b604051808260ff1660ff16815260200191505060405180910390f35b34156106b157600080fd5b61073b600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001909190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919080359060200190919050506117cc565b005b6107b7600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919080359060200190919080356000191690602001909190803560ff169060200190919080356000191690602001909190803560001916906020019091908035906020019091905050611a67565b005b34156107c457600080fd5b6107f0600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611dcf565b6040518082815260200191505060405180910390f35b341561081157600080fd5b610819611e18565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561086657600080fd5b61086e611e3e565b005b341561087b57600080fd5b610883611f4b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156108d057600080fd5b6108d8611f70565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109185780820151818401526020810190506108fd565b50505050905090810190601f1680156109455780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561095e57600080fd5b610966611fa9565b6040518082815260200191505060405180910390f35b341561098757600080fd5b6109bc600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611fca565b604051808215151515815260200191505060405180910390f35b34156109e157600080fd5b610a0d600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506121b2565b005b3415610a1a57600080fd5b610a58600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091908035906020019091905050612251565b005b3415610a6557600080fd5b610aa3600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001909190505061245f565b005b3415610ab057600080fd5b610ab86126f5565b005b3415610ac557600080fd5b610acd6128d1565b6040518082815260200191505060405180910390f35b3415610aee57600080fd5b610af66128d7565b6040518082815260200191505060405180910390f35b3415610b1757600080fd5b610b62600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506128df565b6040518082815260200191505060405180910390f35b3415610b8357600080fd5b610b8b612966565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60065481565b6040805190810160405280600881526020017f546f6b656e626f7800000000000000000000000000000000000000000000000081525081565b600081600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d5957600080fd5b635bfe83404210151515610d6c57600080fd5b610dad73ffffffffffffffffffffffffffffffffffffffff600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683610fff565b1515610db857600080fd5b50565b635a0adac081565b6212750081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e2557600080fd5b7f8a95addc59dddee94a894365b5c66c6c2473b7084d3fd1df9f503db4a2cd6dcc6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a180600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60045481565b600860149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f9557600080fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156110cc575081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b80156111575750600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401115b156112ee5781600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190506112f3565b600090505b9392505050565b601281565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561135a57600080fd5b62127500635a0adac001421015151561137257600080fd5b600860149054906101000a900460ff1615151561138e57600080fd5b6113b66004546113b1731111111111111111111111111111111111111111611dcf565b61297e565b6004819055506113d86004546113d362764170601260ff16612997565b61297e565b6004819055506113f66113ee600454607d6129b5565b6103e86129e8565b60026000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061147361146b600454607d6129b5565b6103e86129e8565b6002600073ffffffffffffffffffffffffffffffffffffffff801673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506114e86004546114e36114dc73ffffffffffffffffffffffffffffffffffffffff611dcf565b60026129b5565b612a29565b60048190555060006002600073111111111111111111111111111111111111111173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600860146101000a81548160ff021916908315150217905550565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b73111111111111111111111111111111111111111181565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561160057600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15156116a357600080fd5b6102c65a03f115156116b457600080fd5b5050506040518051905090508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561178c57600080fd5b6102c65a03f1151561179d57600080fd5b50505060405180519050915050919050565b73ffffffffffffffffffffffffffffffffffffffff81565b600c81565b6000806000635a0adac042101580156117ed575062127500635a0adac00142105b15156117f857600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806118a05750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156118ab57600080fd5b6118cc6118b888866129b5565b6118c7600a600c60ff16612a47565b6129e8565b92506118e56118df87601260ff16612997565b846129e8565b9150816002600073111111111111111111111111111111111111111173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561194957600080fd5b61196061195a87600c60ff16612997565b856129e8565b905061196d888284612a65565b7fd73e30d68edcaf46f57313bec669121749b4e2928c2e98cd232bded2d6569fad88848884868a604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200186815260200185815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611a1e578082015181840152602081019050611a03565b50505050905090810190601f168015611a4b5780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a15050505050505050565b6000806000635a0adac04210158015611a88575062127500635a0adac00142105b1515611a9357600080fd5b876000191660028b60608e73ffffffffffffffffffffffffffffffffffffffff169060020a02176000604051602001526040518082815260200191505060206040518083038160008661646e5a03f11515611aed57600080fd5b50506040518051905060001916141515611b0657600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600189898989604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f11515611bbd57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff16141515611be857600080fd5b611bf46005600f612997565b611bfe8a3461297e565b11151515611c0b57600080fd5b611c2c611c188b866129b5565b611c27600a600c60ff16612a47565b6129e8565b9250611c45611c3f8a601260ff16612997565b846129e8565b9150816002600073111111111111111111111111111111111111111173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515611ca957600080fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501515611d0b57600080fd5b611d22611d1c8a600c60ff16612997565b856129e8565b9050611d2f8b8284612a65565b7fcb3c951de24132b3780674d63a0aefa2e2a83f07ce943397a2880f607b5fa3c38b848b84868d604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018481526020018381526020018260001916600019168152602001965050505050505060405180910390a15050505050505050505050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e9957600080fd5b635bfe83404210151515611eac57600080fd5b611ec973ffffffffffffffffffffffffffffffffffffffff611dcf565b6003600073ffffffffffffffffffffffffffffffffffffffff801673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040805190810160405280600381526020017f544258000000000000000000000000000000000000000000000000000000000081525081565b6000611fc5600654611fc0600a600c60ff16612a47565b6129e8565b905090565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015801561209a5750600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401115b156121a75781600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190506121ac565b600090505b92915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561220d57600080fd5b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000806000635a0adac04210158015612272575062127500635a0adac00142105b151561227d57600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806123255750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561233057600080fd5b61234761234185601260ff16612997565b866129e8565b9250826002600073111111111111111111111111111111111111111173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156123ab57600080fd5b6123bc846002600c0360ff16612997565b91506123cf856002600c0360ff16612997565b90506123dc868385612a65565b7f938eae3834e37728fc8579189aaf02cb629d18822ea1bdbb21264d620e1e13ab86828486604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182815260200194505050505060405180910390a1505050505050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156124bd57600080fd5b6124cb83601260ff16612997565b9150816002600073222222222222222222222222222222222222222273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561252f57600080fd5b816002600073222222222222222222222222222222222222222273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508473ffffffffffffffffffffffffffffffffffffffff1673222222222222222222222222222222222222222273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3612667846002600c0360ff16612997565b905061267560065482612a29565b6006819055507f43fca754f16e3c99f62c2e37af54a5ff17ff2b96dfbd3294dfa88bfaf85b817e858284604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a15050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561275157600080fd5b7f70aea8d848e8a90fb7661b227dc522eb6395c3dac71b63cb59edd5c9899b23646000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60055481565b635bfe834081565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b73222222222222222222222222222222222222222281565b600082821115151561298c57fe5b818303905092915050565b60006129ad836129a8600a85612a47565b6129b5565b905092915050565b600080828402905060008414806129d657508284828115156129d357fe5b04145b15156129de57fe5b8091505092915050565b6000806000831115156129f757fe5b8284811515612a0257fe5b0490508284811515612a1057fe5b068184020184141515612a1f57fe5b8091505092915050565b6000808284019050838110151515612a3d57fe5b8091505092915050565b60008082840a9050838110151515612a5b57fe5b8091505092915050565b612a7160065483612a29565b600681905550806002600073111111111111111111111111111111111111111173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555080600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff1673111111111111111111111111111111111111111173ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050505600a165627a7a723058200b0698803aac3388c38734c3ea9cf2083d7f5fb90d2aade7bb8c85b64134835300290000000000000000000000009db07c8da33a2fcd6ef2e727a2ecc5198d9bc7c8000000000000000000000000ad8ea3b0215e6efd9d2f2aa22baf6d494dbf7662000000000000000000000000000000000000000000000000000000000016d32f

Deployed Bytecode

0x6060604052600436106101c2576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806302bfeeb8146101c757806306fdde03146101f0578063095ea7b31461027e5780630a8bcdb9146102d85780630b97bc86146102fb5780630fb5a6b41461032457806313af40351461034d57806318160ddd14610386578063214bb60f146103af5780632268a358146103dc578063238ac9331461041557806323b872dd1461046a578063313ce567146104e357806339f95e63146105125780634783c35b146105275780634dc591961461057c57806356d7c2c8146105d1578063603066a41461062257806366a4b6c0146106775780636a93413d146106a65780636e3ac99f1461073d57806370a08231146107b95780637762df25146108065780638a6b9be41461085b5780638da5cb5b1461087057806395d89b41146108c5578063a3ae88a014610953578063a9059cbb1461097c578063aad2b723146109d6578063c7ccb1ea14610a0f578063c99c558014610a5a578063d5d1e77014610aa5578063d8270dce14610aba578063d8353b7514610ae3578063dd62ed3e14610b0c578063f11eb09914610b78575b600080fd5b34156101d257600080fd5b6101da610bcd565b6040518082815260200191505060405180910390f35b34156101fb57600080fd5b610203610bd3565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610243578082015181840152602081019050610228565b50505050905090810190601f1680156102705780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561028957600080fd5b6102be600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610c0c565b604051808215151515815260200191505060405180910390f35b34156102e357600080fd5b6102f96004808035906020019091905050610cfe565b005b341561030657600080fd5b61030e610dbb565b6040518082815260200191505060405180910390f35b341561032f57600080fd5b610337610dc3565b6040518082815260200191505060405180910390f35b341561035857600080fd5b610384600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610dca565b005b341561039157600080fd5b610399610f21565b6040518082815260200191505060405180910390f35b34156103ba57600080fd5b6103c2610f27565b604051808215151515815260200191505060405180910390f35b34156103e757600080fd5b610413600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610f3a565b005b341561042057600080fd5b610428610fd9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561047557600080fd5b6104c9600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610fff565b604051808215151515815260200191505060405180910390f35b34156104ee57600080fd5b6104f66112fa565b604051808260ff1660ff16815260200191505060405180910390f35b341561051d57600080fd5b6105256112ff565b005b341561053257600080fd5b61053a611564565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561058757600080fd5b61058f61158a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156105dc57600080fd5b610608600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506115a2565b604051808215151515815260200191505060405180910390f35b341561062d57600080fd5b6106356117af565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561068257600080fd5b61068a6117c7565b604051808260ff1660ff16815260200191505060405180910390f35b34156106b157600080fd5b61073b600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001909190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919080359060200190919050506117cc565b005b6107b7600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919080359060200190919080356000191690602001909190803560ff169060200190919080356000191690602001909190803560001916906020019091908035906020019091905050611a67565b005b34156107c457600080fd5b6107f0600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611dcf565b6040518082815260200191505060405180910390f35b341561081157600080fd5b610819611e18565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561086657600080fd5b61086e611e3e565b005b341561087b57600080fd5b610883611f4b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156108d057600080fd5b6108d8611f70565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109185780820151818401526020810190506108fd565b50505050905090810190601f1680156109455780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561095e57600080fd5b610966611fa9565b6040518082815260200191505060405180910390f35b341561098757600080fd5b6109bc600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611fca565b604051808215151515815260200191505060405180910390f35b34156109e157600080fd5b610a0d600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506121b2565b005b3415610a1a57600080fd5b610a58600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091908035906020019091905050612251565b005b3415610a6557600080fd5b610aa3600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001909190505061245f565b005b3415610ab057600080fd5b610ab86126f5565b005b3415610ac557600080fd5b610acd6128d1565b6040518082815260200191505060405180910390f35b3415610aee57600080fd5b610af66128d7565b6040518082815260200191505060405180910390f35b3415610b1757600080fd5b610b62600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506128df565b6040518082815260200191505060405180910390f35b3415610b8357600080fd5b610b8b612966565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60065481565b6040805190810160405280600881526020017f546f6b656e626f7800000000000000000000000000000000000000000000000081525081565b600081600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610d5957600080fd5b635bfe83404210151515610d6c57600080fd5b610dad73ffffffffffffffffffffffffffffffffffffffff600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683610fff565b1515610db857600080fd5b50565b635a0adac081565b6212750081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e2557600080fd5b7f8a95addc59dddee94a894365b5c66c6c2473b7084d3fd1df9f503db4a2cd6dcc6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a180600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60045481565b600860149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f9557600080fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156110cc575081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b80156111575750600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401115b156112ee5781600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190506112f3565b600090505b9392505050565b601281565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561135a57600080fd5b62127500635a0adac001421015151561137257600080fd5b600860149054906101000a900460ff1615151561138e57600080fd5b6113b66004546113b1731111111111111111111111111111111111111111611dcf565b61297e565b6004819055506113d86004546113d362764170601260ff16612997565b61297e565b6004819055506113f66113ee600454607d6129b5565b6103e86129e8565b60026000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061147361146b600454607d6129b5565b6103e86129e8565b6002600073ffffffffffffffffffffffffffffffffffffffff801673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506114e86004546114e36114dc73ffffffffffffffffffffffffffffffffffffffff611dcf565b60026129b5565b612a29565b60048190555060006002600073111111111111111111111111111111111111111173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600860146101000a81548160ff021916908315150217905550565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b73111111111111111111111111111111111111111181565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561160057600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15156116a357600080fd5b6102c65a03f115156116b457600080fd5b5050506040518051905090508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b151561178c57600080fd5b6102c65a03f1151561179d57600080fd5b50505060405180519050915050919050565b73ffffffffffffffffffffffffffffffffffffffff81565b600c81565b6000806000635a0adac042101580156117ed575062127500635a0adac00142105b15156117f857600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806118a05750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156118ab57600080fd5b6118cc6118b888866129b5565b6118c7600a600c60ff16612a47565b6129e8565b92506118e56118df87601260ff16612997565b846129e8565b9150816002600073111111111111111111111111111111111111111173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561194957600080fd5b61196061195a87600c60ff16612997565b856129e8565b905061196d888284612a65565b7fd73e30d68edcaf46f57313bec669121749b4e2928c2e98cd232bded2d6569fad88848884868a604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200186815260200185815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611a1e578082015181840152602081019050611a03565b50505050905090810190601f168015611a4b5780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a15050505050505050565b6000806000635a0adac04210158015611a88575062127500635a0adac00142105b1515611a9357600080fd5b876000191660028b60608e73ffffffffffffffffffffffffffffffffffffffff169060020a02176000604051602001526040518082815260200191505060206040518083038160008661646e5a03f11515611aed57600080fd5b50506040518051905060001916141515611b0657600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600189898989604051600081526020016040526000604051602001526040518085600019166000191681526020018460ff1660ff16815260200183600019166000191681526020018260001916600019168152602001945050505050602060405160208103908084039060008661646e5a03f11515611bbd57600080fd5b50506020604051035173ffffffffffffffffffffffffffffffffffffffff16141515611be857600080fd5b611bf46005600f612997565b611bfe8a3461297e565b11151515611c0b57600080fd5b611c2c611c188b866129b5565b611c27600a600c60ff16612a47565b6129e8565b9250611c45611c3f8a601260ff16612997565b846129e8565b9150816002600073111111111111111111111111111111111111111173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515611ca957600080fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f193505050501515611d0b57600080fd5b611d22611d1c8a600c60ff16612997565b856129e8565b9050611d2f8b8284612a65565b7fcb3c951de24132b3780674d63a0aefa2e2a83f07ce943397a2880f607b5fa3c38b848b84868d604051808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018481526020018381526020018260001916600019168152602001965050505050505060405180910390a15050505050505050505050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e9957600080fd5b635bfe83404210151515611eac57600080fd5b611ec973ffffffffffffffffffffffffffffffffffffffff611dcf565b6003600073ffffffffffffffffffffffffffffffffffffffff801673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040805190810160405280600381526020017f544258000000000000000000000000000000000000000000000000000000000081525081565b6000611fc5600654611fc0600a600c60ff16612a47565b6129e8565b905090565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015801561209a5750600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401115b156121a75781600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190506121ac565b600090505b92915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561220d57600080fd5b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000806000635a0adac04210158015612272575062127500635a0adac00142105b151561227d57600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806123255750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561233057600080fd5b61234761234185601260ff16612997565b866129e8565b9250826002600073111111111111111111111111111111111111111173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156123ab57600080fd5b6123bc846002600c0360ff16612997565b91506123cf856002600c0360ff16612997565b90506123dc868385612a65565b7f938eae3834e37728fc8579189aaf02cb629d18822ea1bdbb21264d620e1e13ab86828486604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182815260200194505050505060405180910390a1505050505050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156124bd57600080fd5b6124cb83601260ff16612997565b9150816002600073222222222222222222222222222222222222222273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561252f57600080fd5b816002600073222222222222222222222222222222222222222273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508473ffffffffffffffffffffffffffffffffffffffff1673222222222222222222222222222222222222222273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3612667846002600c0360ff16612997565b905061267560065482612a29565b6006819055507f43fca754f16e3c99f62c2e37af54a5ff17ff2b96dfbd3294dfa88bfaf85b817e858284604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a15050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561275157600080fd5b7f70aea8d848e8a90fb7661b227dc522eb6395c3dac71b63cb59edd5c9899b23646000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60055481565b635bfe834081565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b73222222222222222222222222222222222222222281565b600082821115151561298c57fe5b818303905092915050565b60006129ad836129a8600a85612a47565b6129b5565b905092915050565b600080828402905060008414806129d657508284828115156129d357fe5b04145b15156129de57fe5b8091505092915050565b6000806000831115156129f757fe5b8284811515612a0257fe5b0490508284811515612a1057fe5b068184020184141515612a1f57fe5b8091505092915050565b6000808284019050838110151515612a3d57fe5b8091505092915050565b60008082840a9050838110151515612a5b57fe5b8091505092915050565b612a7160065483612a29565b600681905550806002600073111111111111111111111111111111111111111173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555080600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff1673111111111111111111111111111111111111111173ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050505600a165627a7a723058200b0698803aac3388c38734c3ea9cf2083d7f5fb90d2aade7bb8c85b6413483530029

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

0000000000000000000000009db07c8da33a2fcd6ef2e727a2ecc5198d9bc7c8000000000000000000000000ad8ea3b0215e6efd9d2f2aa22baf6d494dbf7662000000000000000000000000000000000000000000000000000000000016d32f

-----Decoded View---------------
Arg [0] : _signer (address): 0x9db07C8da33A2FCd6Ef2E727a2EcC5198d9BC7c8
Arg [1] : _multisig (address): 0xAd8eA3B0215e6efd9d2F2AA22bAF6d494DbF7662
Arg [2] : _preIcoTokens (uint256): 1495855

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000009db07c8da33a2fcd6ef2e727a2ecc5198d9bc7c8
Arg [1] : 000000000000000000000000ad8ea3b0215e6efd9d2f2aa22baf6d494dbf7662
Arg [2] : 000000000000000000000000000000000000000000000000000000000016d32f


Swarm Source

bzzr://0b0698803aac3388c38734c3ea9cf2083d7f5fb90d2aade7bb8c85b641348353

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.