ETH Price: $1,975.50 (+0.08%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

1 address found via
Transaction Hash
Method
Block
From
To
Handle Presale T...234652662025-09-29 1:07:47146 days ago1759108067IN
0xEE5fE244...56630beFC
0 ETH0.000092251.19671181
Handle Presale T...234648372025-09-28 23:41:23146 days ago1759102883IN
0xEE5fE244...56630beFC
0 ETH0.00009111.18180417
Handle Presale T...234647812025-09-28 23:30:11146 days ago1759102211IN
0xEE5fE244...56630beFC
0 ETH0.000092251.19671181
Handle Presale T...234645802025-09-28 22:49:47146 days ago1759099787IN
0xEE5fE244...56630beFC
0 ETH0.000092251.19671181
Handle Presale T...234645692025-09-28 22:47:35146 days ago1759099655IN
0xEE5fE244...56630beFC
0 ETH0.000092251.19671181
Handle Presale T...234645532025-09-28 22:44:23146 days ago1759099463IN
0xEE5fE244...56630beFC
0 ETH0.000092241.19671181
Handle Presale T...234645452025-09-28 22:42:47146 days ago1759099367IN
0xEE5fE244...56630beFC
0 ETH0.000092251.19671181
Handle Presale T...234594802025-09-28 5:41:35147 days ago1759038095IN
0xEE5fE244...56630beFC
0 ETH0.0000871.12856108
Handle Presale T...234587782025-09-28 3:20:35147 days ago1759029635IN
0xEE5fE244...56630beFC
0 ETH0.000044741.11604997
Handle Presale T...234587642025-09-28 3:17:47147 days ago1759029467IN
0xEE5fE244...56630beFC
0 ETH0.00008671.12473432
Handle Presale T...234587602025-09-28 3:16:59147 days ago1759029419IN
0xEE5fE244...56630beFC
0 ETH0.000086431.12117448
Handle Presale T...234404062025-09-25 13:39:11149 days ago1758807551IN
0xEE5fE244...56630beFC
0 ETH0.000368424.6890923
Handle Presale T...234369182025-09-25 1:57:11150 days ago1758765431IN
0xEE5fE244...56630beFC
0 ETH0.000092251.19671181
Handle Presale T...234286162025-09-23 22:08:23151 days ago1758665303IN
0xEE5fE244...56630beFC
0 ETH0.000089721.16382496
Handle Presale T...234217712025-09-22 23:12:23152 days ago1758582743IN
0xEE5fE244...56630beFC
0 ETH0.000088761.15147116
Handle Presale T...234143352025-09-21 22:15:23153 days ago1758492923IN
0xEE5fE244...56630beFC
0 ETH0.000084931.10178609
Handle Presale T...234073852025-09-20 22:54:11154 days ago1758408851IN
0xEE5fE244...56630beFC
0 ETH0.0000871.12863773
Handle Presale T...234073592025-09-20 22:48:47154 days ago1758408527IN
0xEE5fE244...56630beFC
0 ETH0.000086671.12431914
Handle Presale T...233705092025-09-15 19:17:23159 days ago1757963843IN
0xEE5fE244...56630beFC
0 ETH0.000092241.19671181
Handle Presale T...233705062025-09-15 19:16:47159 days ago1757963807IN
0xEE5fE244...56630beFC
0 ETH0.000092251.19671181
Handle Presale T...233646772025-09-14 23:42:47160 days ago1757893367IN
0xEE5fE244...56630beFC
0 ETH0.000089261.15788111
Handle Presale T...233586482025-09-14 3:31:47161 days ago1757820707IN
0xEE5fE244...56630beFC
0 ETH0.00008741.13372695
Handle Presale T...233527692025-09-13 7:51:35162 days ago1757749895IN
0xEE5fE244...56630beFC
0 ETH0.000091871.19183169
Handle Presale T...233250442025-09-09 10:48:59165 days ago1757414939IN
0xEE5fE244...56630beFC
0 ETH0.000092241.19671181
Handle Presale T...233248332025-09-09 10:06:47165 days ago1757412407IN
0xEE5fE244...56630beFC
0 ETH0.000092251.19671181
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ShareToken

Compiler Version
v0.4.21+commit.dfe3193c

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-06-03
*/

pragma solidity ^0.4.21;

contract ERC20Interface {

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

    function totalSupply() public view returns (uint256);
    function balanceOf(address _owner) public view returns (uint256);
    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);
    function allowance(address _owner, address _spender) public view returns (uint256);
}

contract ERC20Token is ERC20Interface {

    using SafeMath for uint256;

    // Total amount of tokens issued
    uint256 internal totalTokenIssued;

    mapping(address => uint256) balances;
    mapping(address => mapping (address => uint256)) internal allowed;

    function totalSupply() public view returns (uint256) {
        return totalTokenIssued;
    }

    /* Get the account balance for an address */
    function balanceOf(address _owner) public view returns (uint256) {
        return balances[_owner];
    }

    /* Check whether an address is a contract address */
    function isContract(address addr) internal view returns (bool) {
        uint256 size;
        assembly { size := extcodesize(addr) }
        return (size > 0);
    }


    /* Transfer the balance from owner's account to another account */
    function transfer(address _to, uint256 _amount) public returns (bool) {

        require(_to != address(0x0));

        // Do not allow to transfer token to contract address to avoid tokens getting stuck
        require(isContract(_to) == false);

        // amount sent cannot exceed balance
        require(balances[msg.sender] >= _amount);

        
        // update balances
        balances[msg.sender] = balances[msg.sender].sub(_amount);
        balances[_to]        = balances[_to].add(_amount);

        // log event
        emit Transfer(msg.sender, _to, _amount);
        return true;
    }
    

    /* Allow _spender to withdraw from your account up to _amount */
    function approve(address _spender, uint256 _amount) public returns (bool) {
        
        require(_spender != address(0x0));

        // update allowed amount
        allowed[msg.sender][_spender] = _amount;

        // log event
        emit Approval(msg.sender, _spender, _amount);
        return true;
    }

    /* Spender of tokens transfers tokens from the owner's balance */
    /* Must be pre-approved by owner */
    function transferFrom(address _from, address _to, uint256 _amount) public returns (bool) {
        
        require(_to != address(0x0));
        
        // Do not allow to transfer token to contract address to avoid tokens getting stuck
        require(isContract(_to) == false);

        // balance checks
        require(balances[_from] >= _amount);
        require(allowed[_from][msg.sender] >= _amount);

        // update balances and allowed amount
        balances[_from]            = balances[_from].sub(_amount);
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_amount);
        balances[_to]              = balances[_to].add(_amount);

        // log event
        emit Transfer(_from, _to, _amount);
        return true;
    }

    /* Returns the amount of tokens approved by the owner */
    /* that can be transferred by spender */
    function allowance(address _owner, address _spender) public view returns (uint256) {
        return allowed[_owner][_spender];
    }
}

contract Ownable {
    address public owner;

    event OwnershipRenounced(address indexed previousOwner);
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
    * @dev The Ownable constructor sets the original `owner` of the contract to the sender
    * account.
    */
    function Ownable() public {
        owner = msg.sender;
    }

    /**
    * @dev Throws if called by any account other than the owner.
    */
    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }

    /**
    * @dev Allows the current owner to transfer control of the contract to a newOwner.
    * @param newOwner The address to transfer ownership to.
    */
    function transferOwnership(address newOwner) public onlyOwner {
        require(newOwner != address(0));
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
    }

    /**
    * @dev Allows the current owner to relinquish control of the contract.
    */
    function renounceOwnership() public onlyOwner {
        emit OwnershipRenounced(owner);
        owner = address(0);
    }
}

library SafeMath {

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a * b;
        assert(a == 0 || c / a == b);
        return c;
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        // assert(b > 0); // Solidity automatically throws when dividing by 0
        return (a / b);
    }
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        assert(b <= a);
        return (a - b);
    }
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        assert(c >= a);
        return c;
    }
}

contract WhiteListManager is Ownable {

    // The list here will be updated by multiple separate WhiteList contracts
    mapping (address => bool) public list;

    function unset(address addr) public onlyOwner {

        list[addr] = false;
    }

    function unsetMany(address[] addrList) public onlyOwner {

        for (uint256 i = 0; i < addrList.length; i++) {
            
            unset(addrList[i]);
        }
    }

    function set(address addr) public onlyOwner {

        list[addr] = true;
    }

    function setMany(address[] addrList) public onlyOwner {

        for (uint256 i = 0; i < addrList.length; i++) {
            
            set(addrList[i]);
        }
    }

    function isWhitelisted(address addr) public view returns (bool) {

        return list[addr];
    }
}

contract ShareToken is ERC20Token, WhiteListManager {

    using SafeMath for uint256;

    string public constant name = "ShareToken";
    string public constant symbol = "SHR";
    uint8  public constant decimals = 2;

    address public icoContract;

    // Any token amount must be multiplied by this const to reflect decimals
    uint256 constant E2 = 10**2;

    mapping(address => bool) public rewardTokenLocked;
    bool public mainSaleTokenLocked = true;

    uint256 public constant TOKEN_SUPPLY_MAINSALE_LIMIT = 1000000000 * E2; // 1,000,000,000 tokens (1 billion)
    uint256 public constant TOKEN_SUPPLY_AIRDROP_LIMIT  = 6666666667; // 66,666,666.67 tokens (0.066 billion)
    uint256 public constant TOKEN_SUPPLY_BOUNTY_LIMIT   = 33333333333; // 333,333,333.33 tokens (0.333 billion)

    uint256 public airDropTokenIssuedTotal;
    uint256 public bountyTokenIssuedTotal;

    uint256 public constant TOKEN_SUPPLY_SEED_LIMIT      = 500000000 * E2; // 500,000,000 tokens (0.5 billion)
    uint256 public constant TOKEN_SUPPLY_PRESALE_LIMIT   = 2500000000 * E2; // 2,500,000,000.00 tokens (2.5 billion)
    uint256 public constant TOKEN_SUPPLY_SEED_PRESALE_LIMIT = TOKEN_SUPPLY_SEED_LIMIT + TOKEN_SUPPLY_PRESALE_LIMIT;

    uint256 public seedAndPresaleTokenIssuedTotal;

    uint8 private constant PRESALE_EVENT    = 0;
    uint8 private constant MAINSALE_EVENT   = 1;
    uint8 private constant BOUNTY_EVENT     = 2;
    uint8 private constant AIRDROP_EVENT    = 3;

    function ShareToken() public {

        totalTokenIssued = 0;
        airDropTokenIssuedTotal = 0;
        bountyTokenIssuedTotal = 0;
        seedAndPresaleTokenIssuedTotal = 0;
        mainSaleTokenLocked = true;
    }

    function unlockMainSaleToken() public onlyOwner {

        mainSaleTokenLocked = false;
    }

    function lockMainSaleToken() public onlyOwner {

        mainSaleTokenLocked = true;
    }

    function unlockRewardToken(address addr) public onlyOwner {

        rewardTokenLocked[addr] = false;
    }

    function unlockRewardTokenMany(address[] addrList) public onlyOwner {

        for (uint256 i = 0; i < addrList.length; i++) {

            unlockRewardToken(addrList[i]);
        }
    }

    function lockRewardToken(address addr) public onlyOwner {

        rewardTokenLocked[addr] = true;
    }

    function lockRewardTokenMany(address[] addrList) public onlyOwner {

        for (uint256 i = 0; i < addrList.length; i++) {

            lockRewardToken(addrList[i]);
        }
    }

    // Check if a given address is locked. The address can be in the whitelist or in the reward
    function isLocked(address addr) public view returns (bool) {

        // Main sale is running, any addr is locked
        if (mainSaleTokenLocked) {
            return true;
        } else {

            // Main sale is ended and thus any whitelist addr is unlocked
            if (isWhitelisted(addr)) {
                return false;
            } else {
                // If the addr is in the reward, it must be checked if locked
                // If the addr is not in the reward, it is considered unlocked
                return rewardTokenLocked[addr];
            }
        }
    }

    function totalSupply() public view returns (uint256) {

        return totalTokenIssued.add(seedAndPresaleTokenIssuedTotal).add(airDropTokenIssuedTotal).add(bountyTokenIssuedTotal);
    }

    function totalMainSaleTokenIssued() public view returns (uint256) {

        return totalTokenIssued;
    }

    function totalMainSaleTokenLimit() public view returns (uint256) {

        return TOKEN_SUPPLY_MAINSALE_LIMIT;
    }

    function totalPreSaleTokenIssued() public view returns (uint256) {

        return seedAndPresaleTokenIssuedTotal;
    }

    function transfer(address _to, uint256 _amount) public returns (bool success) {

        require(isLocked(msg.sender) == false);    
        require(isLocked(_to) == false);
        
        return super.transfer(_to, _amount);
    }

    function transferFrom(address _from, address _to, uint256 _amount) public returns (bool success) {
        
        require(isLocked(_from) == false);
        require(isLocked(_to) == false);
        
        return super.transferFrom(_from, _to, _amount);
    }

    function setIcoContract(address _icoContract) public onlyOwner {
        
        // Allow to set the ICO contract only once
        require(icoContract == address(0));
        require(_icoContract != address(0));

        icoContract = _icoContract;
    }

    function sell(address buyer, uint256 tokens) public returns (bool success) {
      
        require (icoContract != address(0));
        // The sell() method can only be called by the fixedly-set ICO contract
        require (msg.sender == icoContract);
        require (tokens > 0);
        require (buyer != address(0));

        // Only whitelisted address can buy tokens. Otherwise, refund
        require (isWhitelisted(buyer));

        require (totalTokenIssued.add(tokens) <= TOKEN_SUPPLY_MAINSALE_LIMIT);

        // Register tokens issued to the buyer
        balances[buyer] = balances[buyer].add(tokens);

        // Update total amount of tokens issued
        totalTokenIssued = totalTokenIssued.add(tokens);

        emit Transfer(address(MAINSALE_EVENT), buyer, tokens);

        return true;
    }

    function rewardAirdrop(address _to, uint256 _amount) public onlyOwner {

        // this check also ascertains _amount is positive
        require(_amount <= TOKEN_SUPPLY_AIRDROP_LIMIT);

        require(airDropTokenIssuedTotal < TOKEN_SUPPLY_AIRDROP_LIMIT);

        uint256 remainingTokens = TOKEN_SUPPLY_AIRDROP_LIMIT.sub(airDropTokenIssuedTotal);
        if (_amount > remainingTokens) {
            _amount = remainingTokens;
        }

        // Register tokens to the receiver
        balances[_to] = balances[_to].add(_amount);

        // Update total amount of tokens issued
        airDropTokenIssuedTotal = airDropTokenIssuedTotal.add(_amount);

        // Lock the receiver
        rewardTokenLocked[_to] = true;

        emit Transfer(address(AIRDROP_EVENT), _to, _amount);
    }

    function rewardBounty(address _to, uint256 _amount) public onlyOwner {

        // this check also ascertains _amount is positive
        require(_amount <= TOKEN_SUPPLY_BOUNTY_LIMIT);

        require(bountyTokenIssuedTotal < TOKEN_SUPPLY_BOUNTY_LIMIT);

        uint256 remainingTokens = TOKEN_SUPPLY_BOUNTY_LIMIT.sub(bountyTokenIssuedTotal);
        if (_amount > remainingTokens) {
            _amount = remainingTokens;
        }

        // Register tokens to the receiver
        balances[_to] = balances[_to].add(_amount);

        // Update total amount of tokens issued
        bountyTokenIssuedTotal = bountyTokenIssuedTotal.add(_amount);

        // Lock the receiver
        rewardTokenLocked[_to] = true;

        emit Transfer(address(BOUNTY_EVENT), _to, _amount);
    }

    function rewardBountyMany(address[] addrList, uint256[] amountList) public onlyOwner {

        require(addrList.length == amountList.length);

        for (uint256 i = 0; i < addrList.length; i++) {

            rewardBounty(addrList[i], amountList[i]);
        }
    }

    function rewardAirdropMany(address[] addrList, uint256[] amountList) public onlyOwner {

        require(addrList.length == amountList.length);

        for (uint256 i = 0; i < addrList.length; i++) {

            rewardAirdrop(addrList[i], amountList[i]);
        }
    }

    function handlePresaleToken(address _to, uint256 _amount) public onlyOwner {

        require(_amount <= TOKEN_SUPPLY_SEED_PRESALE_LIMIT);

        require(seedAndPresaleTokenIssuedTotal < TOKEN_SUPPLY_SEED_PRESALE_LIMIT);

        uint256 remainingTokens = TOKEN_SUPPLY_SEED_PRESALE_LIMIT.sub(seedAndPresaleTokenIssuedTotal);
        require (_amount <= remainingTokens);

        // Register tokens to the receiver
        balances[_to] = balances[_to].add(_amount);

        // Update total amount of tokens issued
        seedAndPresaleTokenIssuedTotal = seedAndPresaleTokenIssuedTotal.add(_amount);

        emit Transfer(address(PRESALE_EVENT), _to, _amount);

        // Also add to whitelist
        set(_to);
    }

    function handlePresaleTokenMany(address[] addrList, uint256[] amountList) public onlyOwner {

        require(addrList.length == amountList.length);

        for (uint256 i = 0; i < addrList.length; i++) {

            handlePresaleToken(addrList[i], amountList[i]);
        }
    }
}

Contract Security Audit

Contract ABI

API
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalMainSaleTokenLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"rewardTokenLocked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"bountyTokenIssuedTotal","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_amount","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addrList","type":"address[]"},{"name":"amountList","type":"uint256[]"}],"name":"rewardAirdropMany","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addrList","type":"address[]"}],"name":"unsetMany","outputs":[],"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":"_amount","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"set","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"unset","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"TOKEN_SUPPLY_SEED_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isWhitelisted","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"rewardAirdrop","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isLocked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TOKEN_SUPPLY_BOUNTY_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"lockRewardToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"airDropTokenIssuedTotal","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"seedAndPresaleTokenIssuedTotal","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TOKEN_SUPPLY_AIRDROP_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unlockMainSaleToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"buyer","type":"address"},{"name":"tokens","type":"uint256"}],"name":"sell","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addrList","type":"address[]"},{"name":"amountList","type":"uint256[]"}],"name":"rewardBountyMany","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":"TOKEN_SUPPLY_PRESALE_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"rewardBounty","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"lockMainSaleToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"unlockRewardToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalPreSaleTokenIssued","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"list","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"TOKEN_SUPPLY_SEED_PRESALE_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"icoContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"handlePresaleToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addrList","type":"address[]"}],"name":"unlockRewardTokenMany","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"TOKEN_SUPPLY_MAINSALE_LIMIT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addrList","type":"address[]"}],"name":"setMany","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_icoContract","type":"address"}],"name":"setIcoContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addrList","type":"address[]"}],"name":"lockRewardTokenMany","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addrList","type":"address[]"},{"name":"amountList","type":"uint256[]"}],"name":"handlePresaleTokenMany","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"mainSaleTokenLocked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalMainSaleTokenIssued","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"}],"name":"OwnershipRenounced","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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"}]

60606040526001600760006101000a81548160ff021916908315150217905550341561002a57600080fd5b33600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008081905550600060088190555060006009819055506000600a819055506001600760006101000a81548160ff021916908315150217905550613045806100b46000396000f300606060405260043610610246576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461024b57806307bee472146102d95780630830e83314610302578063088ee7ec14610353578063095ea7b31461037c578063129f80fb146103d657806314b777981461047057806318160ddd146104ca57806323b872dd146104f35780632801617e1461056c5780632966d1b9146105a557806329d24cbe146105de578063313ce567146106075780633af32abf146106365780633c7b3d90146106875780634a4fbeec146106c95780634b1146ca1461071a578063526664031461074357806357f94c821461077c5780636269420e146107a5578063655b3667146107ce5780636bc6147e146107f75780636c197ff51461080c57806370a0823114610866578063715018a6146108b3578063743521c6146108c85780638da5cb5b1461096257806395d89b41146109b75780639baeac7814610a45578063a0437f6314610a6e578063a78085ef14610ab0578063a9059cbb14610ac5578063aabe7dc414610b1f578063b1e834b014610b58578063bb032a6614610b81578063bf71670814610bd2578063c66e409514610bfb578063c8a90f7614610c50578063d1206a2914610c92578063d3484c1c14610cec578063d86123e114610d15578063dd62ed3e14610d6f578063e09678fd14610ddb578063e1a2c44614610e14578063e701a6d314610e6e578063e78dd6f114610f08578063eb8eea1514610f35578063f2fde38b14610f5e575b600080fd5b341561025657600080fd5b61025e610f97565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561029e578082015181840152602081019050610283565b50505050905090810190601f1680156102cb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102e457600080fd5b6102ec610fd0565b6040518082815260200191505060405180910390f35b341561030d57600080fd5b610339600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610fdf565b604051808215151515815260200191505060405180910390f35b341561035e57600080fd5b610366610fff565b6040518082815260200191505060405180910390f35b341561038757600080fd5b6103bc600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611005565b604051808215151515815260200191505060405180910390f35b34156103e157600080fd5b61046e60048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050611132565b005b341561047b57600080fd5b6104c86004808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919050506111f8565b005b34156104d557600080fd5b6104dd611295565b6040518082815260200191505060405180910390f35b34156104fe57600080fd5b610552600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506112db565b604051808215151515815260200191505060405180910390f35b341561057757600080fd5b6105a3600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611326565b005b34156105b057600080fd5b6105dc600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506113dd565b005b34156105e957600080fd5b6105f1611494565b6040518082815260200191505060405180910390f35b341561061257600080fd5b61061a61149f565b604051808260ff1660ff16815260200191505060405180910390f35b341561064157600080fd5b61066d600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506114a4565b604051808215151515815260200191505060405180910390f35b341561069257600080fd5b6106c7600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506114fa565b005b34156106d457600080fd5b610700600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061171f565b604051808215151515815260200191505060405180910390f35b341561072557600080fd5b61072d6117ab565b6040518082815260200191505060405180910390f35b341561074e57600080fd5b61077a600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506117b4565b005b341561078757600080fd5b61078f61186b565b6040518082815260200191505060405180910390f35b34156107b057600080fd5b6107b8611871565b6040518082815260200191505060405180910390f35b34156107d957600080fd5b6107e1611877565b6040518082815260200191505060405180910390f35b341561080257600080fd5b61080a611880565b005b341561081757600080fd5b61084c600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506118f9565b604051808215151515815260200191505060405180910390f35b341561087157600080fd5b61089d600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611b60565b6040518082815260200191505060405180910390f35b34156108be57600080fd5b6108c6611ba9565b005b34156108d357600080fd5b61096060048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050611cae565b005b341561096d57600080fd5b610975611d74565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156109c257600080fd5b6109ca611d9a565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610a0a5780820151818401526020810190506109ef565b50505050905090810190601f168015610a375780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3415610a5057600080fd5b610a58611dd3565b6040518082815260200191505060405180910390f35b3415610a7957600080fd5b610aae600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611dde565b005b3415610abb57600080fd5b610ac3612003565b005b3415610ad057600080fd5b610b05600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061207c565b604051808215151515815260200191505060405180910390f35b3415610b2a57600080fd5b610b56600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506120c5565b005b3415610b6357600080fd5b610b6b61217c565b6040518082815260200191505060405180910390f35b3415610b8c57600080fd5b610bb8600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050612186565b604051808215151515815260200191505060405180910390f35b3415610bdd57600080fd5b610be56121a6565b6040518082815260200191505060405180910390f35b3415610c0657600080fd5b610c0e6121ba565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415610c5b57600080fd5b610c90600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506121e0565b005b3415610c9d57600080fd5b610cea6004808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919050506123da565b005b3415610cf757600080fd5b610cff612477565b6040518082815260200191505060405180910390f35b3415610d2057600080fd5b610d6d600480803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050612482565b005b3415610d7a57600080fd5b610dc5600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061251f565b6040518082815260200191505060405180910390f35b3415610de657600080fd5b610e12600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506125a6565b005b3415610e1f57600080fd5b610e6c6004808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919050506126df565b005b3415610e7957600080fd5b610f066004808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190505061277c565b005b3415610f1357600080fd5b610f1b612842565b604051808215151515815260200191505060405180910390f35b3415610f4057600080fd5b610f48612855565b6040518082815260200191505060405180910390f35b3415610f6957600080fd5b610f95600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061285e565b005b6040805190810160405280600a81526020017f5368617265546f6b656e0000000000000000000000000000000000000000000081525081565b60006064633b9aca0002905090565b60066020528060005260406000206000915054906101000a900460ff1681565b60095481565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561104257600080fd5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561119057600080fd5b815183511415156111a057600080fd5b600090505b82518110156111f3576111e683828151811015156111bf57fe5b9060200190602002015183838151811015156111d757fe5b906020019060200201516114fa565b80806001019150506111a5565b505050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561125657600080fd5b600090505b815181101561129157611284828281518110151561127557fe5b906020019060200201516113dd565b808060010191505061125b565b5050565b60006112d66009546112c86008546112ba600a546000546129b690919063ffffffff16565b6129b690919063ffffffff16565b6129b690919063ffffffff16565b905090565b60008015156112e98561171f565b15151415156112f757600080fd5b600015156113048461171f565b151514151561131257600080fd5b61131d8484846129d4565b90509392505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561138257600080fd5b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561143957600080fd5b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6064631dcd65000281565b600281565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561155857600080fd5b64018d5d42ab821115151561156c57600080fd5b64018d5d42ab60085410151561158157600080fd5b61159b60085464018d5d42ab612dae90919063ffffffff16565b9050808211156115a9578091505b6115fb82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129b690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611653826008546129b690919063ffffffff16565b6008819055506001600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508273ffffffffffffffffffffffffffffffffffffffff16600360ff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3505050565b6000600760009054906101000a900460ff161561173f57600190506117a6565b611748826114a4565b1561175657600090506117a6565b600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1690505b919050565b6407c2d24d5581565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561181057600080fd5b6001600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60085481565b600a5481565b64018d5d42ab81565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156118dc57600080fd5b6000600760006101000a81548160ff021916908315150217905550565b60008073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561195857600080fd5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156119b457600080fd5b6000821115156119c357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156119ff57600080fd5b611a08836114a4565b1515611a1357600080fd5b6064633b9aca0002611a30836000546129b690919063ffffffff16565b11151515611a3d57600080fd5b611a8f82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129b690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ae7826000546129b690919063ffffffff16565b6000819055508273ffffffffffffffffffffffffffffffffffffffff16600160ff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c0557600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482060405160405180910390a26000600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611d0c57600080fd5b81518351141515611d1c57600080fd5b600090505b8251811015611d6f57611d628382815181101515611d3b57fe5b906020019060200201518383815181101515611d5357fe5b90602001906020020151611dde565b8080600101915050611d21565b505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040805190810160405280600381526020017f534852000000000000000000000000000000000000000000000000000000000081525081565b6064639502f9000281565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e3c57600080fd5b6407c2d24d558211151515611e5057600080fd5b6407c2d24d55600954101515611e6557600080fd5b611e7f6009546407c2d24d55612dae90919063ffffffff16565b905080821115611e8d578091505b611edf82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129b690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f37826009546129b690919063ffffffff16565b6009819055506001600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508273ffffffffffffffffffffffffffffffffffffffff16600260ff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561205f57600080fd5b6001600760006101000a81548160ff021916908315150217905550565b600080151561208a3361171f565b151514151561209857600080fd5b600015156120a58461171f565b15151415156120b357600080fd5b6120bd8383612dc7565b905092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561212157600080fd5b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600a54905090565b60046020528060005260406000206000915054906101000a900460ff1681565b6064639502f900026064631dcd6500020181565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561223e57600080fd5b6064639502f900026064631dcd65000201821115151561225d57600080fd5b6064639502f900026064631dcd65000201600a5410151561227d57600080fd5b6122a2600a546064639502f900026064631dcd65000201612dae90919063ffffffff16565b90508082111515156122b357600080fd5b61230582600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129b690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061235d82600a546129b690919063ffffffff16565b600a819055508273ffffffffffffffffffffffffffffffffffffffff16600060ff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36123d583611326565b505050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561243857600080fd5b600090505b815181101561247357612466828281518110151561245757fe5b906020019060200201516120c5565b808060010191505061243d565b5050565b6064633b9aca000281565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156124e057600080fd5b600090505b815181101561251b5761250e82828151811015156124ff57fe5b90602001906020020151611326565b80806001019150506124e5565b5050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561260257600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561265f57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561269b57600080fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561273d57600080fd5b600090505b81518110156127785761276b828281518110151561275c57fe5b906020019060200201516117b4565b8080600101915050612742565b5050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156127da57600080fd5b815183511415156127ea57600080fd5b600090505b825181101561283d57612830838281518110151561280957fe5b90602001906020020151838381518110151561282157fe5b906020019060200201516121e0565b80806001019150506127ef565b505050565b600760009054906101000a900460ff1681565b60008054905090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156128ba57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156128f657600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008082840190508381101515156129ca57fe5b8091505092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515612a1157600080fd5b60001515612a1e84613006565b1515141515612a2c57600080fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612a7a57600080fd5b81600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612b0557600080fd5b612b5782600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612dae90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612c2982600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612dae90919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612cfb82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129b690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b6000828211151515612dbc57fe5b818303905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515612e0457600080fd5b60001515612e1184613006565b1515141515612e1f57600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612e6d57600080fd5b612ebf82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612dae90919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612f5482600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129b690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600080823b9050600081119150509190505600a165627a7a72305820c7da67b6fb6f79228fcc91dbee8b7165c3091128285cb372a980c5b0d26ef8990029

Deployed Bytecode

0x606060405260043610610246576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461024b57806307bee472146102d95780630830e83314610302578063088ee7ec14610353578063095ea7b31461037c578063129f80fb146103d657806314b777981461047057806318160ddd146104ca57806323b872dd146104f35780632801617e1461056c5780632966d1b9146105a557806329d24cbe146105de578063313ce567146106075780633af32abf146106365780633c7b3d90146106875780634a4fbeec146106c95780634b1146ca1461071a578063526664031461074357806357f94c821461077c5780636269420e146107a5578063655b3667146107ce5780636bc6147e146107f75780636c197ff51461080c57806370a0823114610866578063715018a6146108b3578063743521c6146108c85780638da5cb5b1461096257806395d89b41146109b75780639baeac7814610a45578063a0437f6314610a6e578063a78085ef14610ab0578063a9059cbb14610ac5578063aabe7dc414610b1f578063b1e834b014610b58578063bb032a6614610b81578063bf71670814610bd2578063c66e409514610bfb578063c8a90f7614610c50578063d1206a2914610c92578063d3484c1c14610cec578063d86123e114610d15578063dd62ed3e14610d6f578063e09678fd14610ddb578063e1a2c44614610e14578063e701a6d314610e6e578063e78dd6f114610f08578063eb8eea1514610f35578063f2fde38b14610f5e575b600080fd5b341561025657600080fd5b61025e610f97565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561029e578082015181840152602081019050610283565b50505050905090810190601f1680156102cb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102e457600080fd5b6102ec610fd0565b6040518082815260200191505060405180910390f35b341561030d57600080fd5b610339600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610fdf565b604051808215151515815260200191505060405180910390f35b341561035e57600080fd5b610366610fff565b6040518082815260200191505060405180910390f35b341561038757600080fd5b6103bc600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611005565b604051808215151515815260200191505060405180910390f35b34156103e157600080fd5b61046e60048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050611132565b005b341561047b57600080fd5b6104c86004808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919050506111f8565b005b34156104d557600080fd5b6104dd611295565b6040518082815260200191505060405180910390f35b34156104fe57600080fd5b610552600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506112db565b604051808215151515815260200191505060405180910390f35b341561057757600080fd5b6105a3600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611326565b005b34156105b057600080fd5b6105dc600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506113dd565b005b34156105e957600080fd5b6105f1611494565b6040518082815260200191505060405180910390f35b341561061257600080fd5b61061a61149f565b604051808260ff1660ff16815260200191505060405180910390f35b341561064157600080fd5b61066d600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506114a4565b604051808215151515815260200191505060405180910390f35b341561069257600080fd5b6106c7600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506114fa565b005b34156106d457600080fd5b610700600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061171f565b604051808215151515815260200191505060405180910390f35b341561072557600080fd5b61072d6117ab565b6040518082815260200191505060405180910390f35b341561074e57600080fd5b61077a600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506117b4565b005b341561078757600080fd5b61078f61186b565b6040518082815260200191505060405180910390f35b34156107b057600080fd5b6107b8611871565b6040518082815260200191505060405180910390f35b34156107d957600080fd5b6107e1611877565b6040518082815260200191505060405180910390f35b341561080257600080fd5b61080a611880565b005b341561081757600080fd5b61084c600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506118f9565b604051808215151515815260200191505060405180910390f35b341561087157600080fd5b61089d600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611b60565b6040518082815260200191505060405180910390f35b34156108be57600080fd5b6108c6611ba9565b005b34156108d357600080fd5b61096060048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050611cae565b005b341561096d57600080fd5b610975611d74565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156109c257600080fd5b6109ca611d9a565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610a0a5780820151818401526020810190506109ef565b50505050905090810190601f168015610a375780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3415610a5057600080fd5b610a58611dd3565b6040518082815260200191505060405180910390f35b3415610a7957600080fd5b610aae600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611dde565b005b3415610abb57600080fd5b610ac3612003565b005b3415610ad057600080fd5b610b05600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061207c565b604051808215151515815260200191505060405180910390f35b3415610b2a57600080fd5b610b56600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506120c5565b005b3415610b6357600080fd5b610b6b61217c565b6040518082815260200191505060405180910390f35b3415610b8c57600080fd5b610bb8600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050612186565b604051808215151515815260200191505060405180910390f35b3415610bdd57600080fd5b610be56121a6565b6040518082815260200191505060405180910390f35b3415610c0657600080fd5b610c0e6121ba565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3415610c5b57600080fd5b610c90600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506121e0565b005b3415610c9d57600080fd5b610cea6004808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919050506123da565b005b3415610cf757600080fd5b610cff612477565b6040518082815260200191505060405180910390f35b3415610d2057600080fd5b610d6d600480803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050612482565b005b3415610d7a57600080fd5b610dc5600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061251f565b6040518082815260200191505060405180910390f35b3415610de657600080fd5b610e12600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506125a6565b005b3415610e1f57600080fd5b610e6c6004808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919050506126df565b005b3415610e7957600080fd5b610f066004808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190505061277c565b005b3415610f1357600080fd5b610f1b612842565b604051808215151515815260200191505060405180910390f35b3415610f4057600080fd5b610f48612855565b6040518082815260200191505060405180910390f35b3415610f6957600080fd5b610f95600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061285e565b005b6040805190810160405280600a81526020017f5368617265546f6b656e0000000000000000000000000000000000000000000081525081565b60006064633b9aca0002905090565b60066020528060005260406000206000915054906101000a900460ff1681565b60095481565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561104257600080fd5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561119057600080fd5b815183511415156111a057600080fd5b600090505b82518110156111f3576111e683828151811015156111bf57fe5b9060200190602002015183838151811015156111d757fe5b906020019060200201516114fa565b80806001019150506111a5565b505050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561125657600080fd5b600090505b815181101561129157611284828281518110151561127557fe5b906020019060200201516113dd565b808060010191505061125b565b5050565b60006112d66009546112c86008546112ba600a546000546129b690919063ffffffff16565b6129b690919063ffffffff16565b6129b690919063ffffffff16565b905090565b60008015156112e98561171f565b15151415156112f757600080fd5b600015156113048461171f565b151514151561131257600080fd5b61131d8484846129d4565b90509392505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561138257600080fd5b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561143957600080fd5b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6064631dcd65000281565b600281565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561155857600080fd5b64018d5d42ab821115151561156c57600080fd5b64018d5d42ab60085410151561158157600080fd5b61159b60085464018d5d42ab612dae90919063ffffffff16565b9050808211156115a9578091505b6115fb82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129b690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611653826008546129b690919063ffffffff16565b6008819055506001600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508273ffffffffffffffffffffffffffffffffffffffff16600360ff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3505050565b6000600760009054906101000a900460ff161561173f57600190506117a6565b611748826114a4565b1561175657600090506117a6565b600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1690505b919050565b6407c2d24d5581565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561181057600080fd5b6001600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60085481565b600a5481565b64018d5d42ab81565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156118dc57600080fd5b6000600760006101000a81548160ff021916908315150217905550565b60008073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561195857600080fd5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156119b457600080fd5b6000821115156119c357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156119ff57600080fd5b611a08836114a4565b1515611a1357600080fd5b6064633b9aca0002611a30836000546129b690919063ffffffff16565b11151515611a3d57600080fd5b611a8f82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129b690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ae7826000546129b690919063ffffffff16565b6000819055508273ffffffffffffffffffffffffffffffffffffffff16600160ff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c0557600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482060405160405180910390a26000600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611d0c57600080fd5b81518351141515611d1c57600080fd5b600090505b8251811015611d6f57611d628382815181101515611d3b57fe5b906020019060200201518383815181101515611d5357fe5b90602001906020020151611dde565b8080600101915050611d21565b505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040805190810160405280600381526020017f534852000000000000000000000000000000000000000000000000000000000081525081565b6064639502f9000281565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e3c57600080fd5b6407c2d24d558211151515611e5057600080fd5b6407c2d24d55600954101515611e6557600080fd5b611e7f6009546407c2d24d55612dae90919063ffffffff16565b905080821115611e8d578091505b611edf82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129b690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f37826009546129b690919063ffffffff16565b6009819055506001600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508273ffffffffffffffffffffffffffffffffffffffff16600260ff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561205f57600080fd5b6001600760006101000a81548160ff021916908315150217905550565b600080151561208a3361171f565b151514151561209857600080fd5b600015156120a58461171f565b15151415156120b357600080fd5b6120bd8383612dc7565b905092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561212157600080fd5b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600a54905090565b60046020528060005260406000206000915054906101000a900460ff1681565b6064639502f900026064631dcd6500020181565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561223e57600080fd5b6064639502f900026064631dcd65000201821115151561225d57600080fd5b6064639502f900026064631dcd65000201600a5410151561227d57600080fd5b6122a2600a546064639502f900026064631dcd65000201612dae90919063ffffffff16565b90508082111515156122b357600080fd5b61230582600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129b690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061235d82600a546129b690919063ffffffff16565b600a819055508273ffffffffffffffffffffffffffffffffffffffff16600060ff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36123d583611326565b505050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561243857600080fd5b600090505b815181101561247357612466828281518110151561245757fe5b906020019060200201516120c5565b808060010191505061243d565b5050565b6064633b9aca000281565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156124e057600080fd5b600090505b815181101561251b5761250e82828151811015156124ff57fe5b90602001906020020151611326565b80806001019150506124e5565b5050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561260257600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561265f57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561269b57600080fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561273d57600080fd5b600090505b81518110156127785761276b828281518110151561275c57fe5b906020019060200201516117b4565b8080600101915050612742565b5050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156127da57600080fd5b815183511415156127ea57600080fd5b600090505b825181101561283d57612830838281518110151561280957fe5b90602001906020020151838381518110151561282157fe5b906020019060200201516121e0565b80806001019150506127ef565b505050565b600760009054906101000a900460ff1681565b60008054905090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156128ba57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156128f657600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008082840190508381101515156129ca57fe5b8091505092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515612a1157600080fd5b60001515612a1e84613006565b1515141515612a2c57600080fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612a7a57600080fd5b81600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612b0557600080fd5b612b5782600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612dae90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612c2982600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612dae90919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612cfb82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129b690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b6000828211151515612dbc57fe5b818303905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515612e0457600080fd5b60001515612e1184613006565b1515141515612e1f57600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612e6d57600080fd5b612ebf82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612dae90919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612f5482600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546129b690919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600080823b9050600081119150509190505600a165627a7a72305820c7da67b6fb6f79228fcc91dbee8b7165c3091128285cb372a980c5b0d26ef8990029

Swarm Source

bzzr://c7da67b6fb6f79228fcc91dbee8b7165c3091128285cb372a980c5b0d26ef899

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ 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.