Contract Overview
Balance: 0 Ether
Transactions: 78 txns
 Latest 25 txns From a total of 78 Transactions

TxHash Age From To Value [TxFee]
0xd0058b57c737788e832ef41e3499905c808550d9b978fd9f65dcdfd943e8762f12 hrs 50 mins ago0xace624812a8e2d8ff0112784bbb3de26355b0a3b  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.03205533
0x1076f18cb24a668ddea52772b00d92d3956be0fd97bad42271e1ca97a5c579141 day 7 hrs ago0xace624812a8e2d8ff0112784bbb3de26355b0a3b  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.02136894
0xf0a8cdca1d2f6c118a1b575f750c1cb1cae2e5e94a1f71e25f3c3598ed4c12071 day 8 hrs ago0x0360d0068f30f8952eccde246ab2a96fac889ffd  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.0061467
0x077ad5682925b1e89ac4dc3c59ff2c9d3445461c3fe7c6cde36b6f427c7a169c1 day 9 hrs ago0x0360d0068f30f8952eccde246ab2a96fac889ffd  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.012245
0x3c37ad030af7613a96cd355f8a4eda1171b0de8dbf28d5e6547f22a1a21164ac1 day 10 hrs ago0x0360d0068f30f8952eccde246ab2a96fac889ffd  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.0061979
0x6989990b1b1e2a44c5ba4f934b85fa8a7510fee0b61acc672629dae8448cc2631 day 11 hrs ago0x44f7e28851d3ae2a67faefc794c7a72eb1969593  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.002136894
0x8e8517cecadd450598d0c7b321075fa20d6bd4413324ac6190ab41ff961a8f651 day 11 hrs ago0x44f7e28851d3ae2a67faefc794c7a72eb1969593  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.00213619
0xe010a03e307121eeaf3342582df1286221c4c7ba416ad9408c377c4b6f91cb294 days 15 hrs ago0xace624812a8e2d8ff0112784bbb3de26355b0a3b  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.00213683
0x13e8871a4a06d8eb401d214889c0a6963f82a081d9bd6b9e611dfbceba969ad05 days 5 hrs ago0xace624812a8e2d8ff0112784bbb3de26355b0a3b  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.002136894
0x4f7c6163aa46b76bb2118a1c3e2058f58ae5d9710ea45ecf89e690aab91101845 days 8 hrs ago0xace624812a8e2d8ff0112784bbb3de26355b0a3b  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.02136894
0x5cb7ae1b07b004a4e97ee72630233eaccafbd56b6f10a2481588ff41148b646f5 days 8 hrs ago0xcd0b534ad6ed67679f55aeb9f4ecae7bc2730f57  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.002136894
0x0df1f4567159a61c193f5d232232334de19a781a510abc300e8e9c13e5e735a35 days 11 hrs ago0xcd0b534ad6ed67679f55aeb9f4ecae7bc2730f57  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.00213683
0xa34870bff806053f67923027cfcb61a373b3f33f384c2d15d7ad5fec4404a4dc5 days 16 hrs ago0x90964be95d0a6a0ff711d9b4716251b34faac800  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.002137022
0xa9cb4ae235fee668761791979c6e333374c8473ab16405aa0ca690f6b0006af56 days 11 hrs ago0x44f7e28851d3ae2a67faefc794c7a72eb1969593  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.006407994
0x6dc9f84990e10494a76f7551a2551ca3eb6860fa55374b9616675bb177e3be986 days 14 hrs ago0xcd0b534ad6ed67679f55aeb9f4ecae7bc2730f57  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.00213683
0xd72f88889f74b7de0c9a7f3fca5e02c510ef4850ed95629384cd8323d0ab0adc6 days 15 hrs ago0xcd0b534ad6ed67679f55aeb9f4ecae7bc2730f57  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.00213683
0xecd3dfedfe78690f0745250d0299aec885dd94e8b8ac262a7fee118065e5a89a6 days 15 hrs ago0xcd0b534ad6ed67679f55aeb9f4ecae7bc2730f57  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.002136894
0x148de55444ecd8c2982cc1ab5c13b91c63beab79d68cd2d27cd5a67aa3fecd6e6 days 16 hrs ago0xcd0b534ad6ed67679f55aeb9f4ecae7bc2730f57  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.006410682
0x238588f4a2dc192b7bee1ed0bdd74c21a713111fc3862b2c3d0858658fb495df8 days 10 hrs ago0x44f7e28851d3ae2a67faefc794c7a72eb1969593  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.006407802
0x878e315b0c4849d95f0a1476cf1f47192d8ab3fc58a49fd9c89eeb037c2138ce8 days 16 hrs ago0x0360d0068f30f8952eccde246ab2a96fac889ffd  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.002135998
0x65f3591a2fb76c4e2b3f7488603bf33a04a9598232aea934f364d700e902cd2c9 days 15 hrs ago0x44f7e28851d3ae2a67faefc794c7a72eb1969593  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.002136318
0x75d5c907fb87aa35be1015479499261aa64dc5c02c437eb408c3dca4b130320e11 days 7 hrs ago0x760ecbe184cbc7f4cdf313da249b027660b1e8fe  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.006408378
0xad3dd263e22b52a706caa191081eb8202981f82bdffdd1bfe1663190f6a66eb111 days 10 hrs ago0x44f7e28851d3ae2a67faefc794c7a72eb1969593  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.006407994
0x6c5446d9041e79fb75d8d448d919e0b10dd8903f7f98a8a372d059d0f6c1e1fb11 days 12 hrs ago0x845ab92802ddba412dbf64dcca30beb100b5b391  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.002136254
0x69590e6480b1bf7a292b022be7341384b9c0c34a9e7957c9891233330d1ad03712 days 5 hrs ago0x44f7e28851d3ae2a67faefc794c7a72eb1969593  IN   0x15bfbebcace798a18c42c2ff1f23388449355ea40 Ether0.006408954
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
 Latest 25 Internal Txns, Click Here To View More View All
ParentTxHash Block Age From To Value
0xd0058b57c737788e832ef41e3499905c808550d9b978fd9f65dcdfd943e8762f321167712 hrs 50 mins ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x1076f18cb24a668ddea52772b00d92d3956be0fd97bad42271e1ca97a5c5791432073131 day 7 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x6989990b1b1e2a44c5ba4f934b85fa8a7510fee0b61acc672629dae8448cc26332062511 day 11 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x8e8517cecadd450598d0c7b321075fa20d6bd4413324ac6190ab41ff961a8f6532062461 day 11 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0xe010a03e307121eeaf3342582df1286221c4c7ba416ad9408c377c4b6f91cb2931879044 days 15 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x13e8871a4a06d8eb401d214889c0a6963f82a081d9bd6b9e611dfbceba969ad031845315 days 5 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x4f7c6163aa46b76bb2118a1c3e2058f58ae5d9710ea45ecf89e690aab911018431839975 days 8 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x5cb7ae1b07b004a4e97ee72630233eaccafbd56b6f10a2481588ff41148b646f31838105 days 8 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x0df1f4567159a61c193f5d232232334de19a781a510abc300e8e9c13e5e735a331831955 days 11 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0xa34870bff806053f67923027cfcb61a373b3f33f384c2d15d7ad5fec4404a4dc31820755 days 16 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0xa9cb4ae235fee668761791979c6e333374c8473ab16405aa0ca690f6b0006af531774896 days 11 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x6dc9f84990e10494a76f7551a2551ca3eb6860fa55374b9616675bb177e3be9831766346 days 14 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0xd72f88889f74b7de0c9a7f3fca5e02c510ef4850ed95629384cd8323d0ab0adc31764456 days 15 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0xecd3dfedfe78690f0745250d0299aec885dd94e8b8ac262a7fee118065e5a89a31764076 days 15 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x148de55444ecd8c2982cc1ab5c13b91c63beab79d68cd2d27cd5a67aa3fecd6e31763356 days 16 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x238588f4a2dc192b7bee1ed0bdd74c21a713111fc3862b2c3d0858658fb495df31660718 days 10 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x878e315b0c4849d95f0a1476cf1f47192d8ab3fc58a49fd9c89eeb037c2138ce31646418 days 16 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x65f3591a2fb76c4e2b3f7488603bf33a04a9598232aea934f364d700e902cd2c31591319 days 15 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x75d5c907fb87aa35be1015479499261aa64dc5c02c437eb408c3dca4b130320e314966011 days 7 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0xad3dd263e22b52a706caa191081eb8202981f82bdffdd1bfe1663190f6a66eb1314880811 days 10 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x6c5446d9041e79fb75d8d448d919e0b10dd8903f7f98a8a372d059d0f6c1e1fb314844811 days 12 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0x69590e6480b1bf7a292b022be7341384b9c0c34a9e7957c9891233330d1ad037314445912 days 5 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0xb4fd5a6a5c6e15ca2904e2527912c939aadd2da7da06e43966a57c48137f3689314357512 days 8 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0xe56c932dd93253f1b06c79d4c0230e0867a3bc544a04a34c4994125de12281dd314250812 days 13 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
0xd83731b44801af8905c39ab34135b58bdaf155d2f08243fd1c85b359cbfc0a8b314097612 days 19 hrs ago0x15bfbebcace798a18c42c2ff1f23388449355ea4  Contract Creation0 Ether
[ Download CSV Export  ] 
Warning: The Compiled Contract might be susceptible to ExpExponentCleanup (medium/high-severity), EventStructWrongData (very low-severity) SolidityCompiler Bugs.

Contract Source Code Verified (Similar Match)
Note: Displaying Similar Match Verified Source Code At Contract 0x0ad9e9b96b52e302512fbe781852693dc8bc5098(Excluding Constructor Arguments if_any)
Contract Name: WTokenTestHelper
Compiler Text: v0.4.24+commit.e67f0147
Optimization Enabled: No
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.13;

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.
   */
  constructor() 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 relinquish control of the contract.
   * @notice Renouncing to ownership will leave the contract without an owner.
   * It will not be possible to call the functions with the `onlyOwner`
   * modifier anymore.
   */
  function renounceOwnership() public onlyOwner {
    emit OwnershipRenounced(owner);
    owner = address(0);
  }

  /**
   * @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 {
    _transferOwnership(_newOwner);
  }

  /**
   * @dev Transfers control of the contract to a newOwner.
   * @param _newOwner The address to transfer ownership to.
   */
  function _transferOwnership(address _newOwner) internal {
    require(_newOwner != address(0));
    emit OwnershipTransferred(owner, _newOwner);
    owner = _newOwner;
  }
}

contract ERC20 {
  function totalSupply() public view returns (uint256);

  function balanceOf(address _who) public view returns (uint256);

  function allowance(address _owner, address _spender)
    public view returns (uint256);

  function transfer(address _to, uint256 _value) public returns (bool);

  function approve(address _spender, uint256 _value)
    public returns (bool);

  function transferFrom(address _from, address _to, uint256 _value)
    public returns (bool);

  event Transfer(
    address indexed from,
    address indexed to,
    uint256 value
  );

  event Approval(
    address indexed owner,
    address indexed spender,
    uint256 value
  );
}

contract DetailedERC20 is ERC20 {
  string public name;
  string public symbol;
  uint8 public decimals;

  constructor(string _name, string _symbol, uint8 _decimals) public {
    name = _name;
    symbol = _symbol;
    decimals = _decimals;
  }
}

contract WToken is DetailedERC20, Ownable {

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

    mapping(address => uint256) public balances;

    uint256 private _totalSupply;

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

    mapping (address => uint[]) vestingTimes;

    mapping (address => bool) trustedAccounts;

    event VestingTransfer(address from, address to, uint256 value, uint256 agingTime);
    event Burn(address indexed burner, uint256 value);

    /**
    * @dev total number of tokens in existence
    */
    function totalSupply() public view returns (uint256) {
        return _totalSupply;
    }

    constructor(string _name, string _symbol, uint8 _decimals) DetailedERC20(_name, _symbol, _decimals) public {
        trustedAccounts[msg.sender] = true;
    }

    /**
    * @dev transfer token for a specified address
    * @param _to The address to transfer to.
    * @param _value The amount to be transferred.
    */
    function transfer(address _to, uint256 _value) public returns (bool) {
        _checkMyVesting(msg.sender);
        require(_to != address(0));
        require(_value <= accountBalance(msg.sender));

        balances[msg.sender] -= _value;

        balances[_to] += _value;

        emit Transfer(msg.sender, _to, _value);

        return true;
    }

    function vestingTransfer(address _to, uint256 _value, uint32 _vestingTime) external onlyTrusted(msg.sender) returns (bool) {
        transfer(_to, _value);

        if (_vestingTime > now) {
            _addToVesting(address(0), _to, _vestingTime, _value);
        }

        emit VestingTransfer(msg.sender, _to, _value, _vestingTime);

        return true;
    }

    /**
    * @dev Gets the balance of the specified address.
    * @param _owner The address to query the the balance of.
    * @return An uint256 representing the amount owned by the passed address.
    */
    function balanceOf(address _owner) public view returns (uint256 balance) {
        return balances[_owner];
    }

    /**
    * @dev Transfer tokens from one address to another
    * @param _from address The address which you want to send tokens from
    * @param _to address The address which you want to transfer to
    * @param _value uint256 the amount of tokens to be transferred
    */
    function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
        _checkMyVesting(_from);

        require(_to != address(0));
        require(_value <= accountBalance(_from));
        require(_value <= allowed[_from][msg.sender]);

        balances[_from] -= _value;
        balances[_to] += _value;
        allowed[_from][msg.sender] -= _value;

        emit Transfer(_from, _to, _value);
        return true;
    }

    /**
    * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
    *
    * Beware that changing an allowance with this method brings the risk that someone may use both the old
    * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this
    * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:
    * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
    * @param _spender The address which will spend the funds.
    * @param _value The amount of tokens to be spent.
    */
    function approve(address _spender, uint256 _value) public returns (bool) {
        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);

        return true;
    }

    /**
    * @dev Function to check the amount of tokens that an owner allowed to a spender.
    * @param _owner address The address which owns the funds.
    * @param _spender address The address which will spend the funds.
    * @return A uint256 specifying the amount of tokens still available for the spender.
    */
    function allowance(address _owner, address _spender) public view returns (uint256) {
        return allowed[_owner][_spender];
    }

    /**
    * @dev Increase the amount of tokens that an owner allowed to a spender.
    *
    * approve should be called when allowed[_spender] == 0. To increment
    * allowed value is better to use this function to avoid 2 calls (and wait until
    * the first transaction is mined)
    * From MonolithDAO Token.sol
    * @param _spender The address which will spend the funds.
    * @param _addedValue The amount of tokens to increase the allowance by.
    */
    function increaseApproval(address _spender, uint _addedValue) public returns (bool) {
        allowed[msg.sender][_spender] += _addedValue;
        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);

        return true;
    }

    /**
    * @dev Decrease the amount of tokens that an owner allowed to a spender.
    *
    * approve should be called when allowed[_spender] == 0. To decrement
    * allowed value is better to use this function to avoid 2 calls (and wait until
    * the first transaction is mined)
    * From MonolithDAO Token.sol
    * @param _spender The address which will spend the funds.
    * @param _subtractedValue The amount of tokens to decrease the allowance by.
    */
    function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
        uint oldValue = allowed[msg.sender][_spender];
        if (_subtractedValue >= oldValue) {
            allowed[msg.sender][_spender] = 0;
        } else {
            allowed[msg.sender][_spender] = oldValue - _subtractedValue;
        }
        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);

        return true;
    }

    function mint(address _to, uint _amount, uint32 _vestingTime) external onlyTrusted(msg.sender) returns (bool) {
        require(_totalSupply + _amount > _totalSupply);

        if (_vestingTime > now) {
            _addToVesting(address(0), _to, _vestingTime, _amount);
        }

        balances[_to] += _amount;
        _totalSupply += _amount;
        emit Transfer(address(0), _to, _amount);
        emit VestingTransfer(address(0), _to, _amount, _vestingTime);

        return true;
    }

    function _addToVesting(address _from, address _to, uint256 _vestingTime, uint256 _amount) internal {
        vestingBalanceOf[_to][0] += _amount;

        if(vestingBalanceOf[_to][_vestingTime] == 0)
            vestingTimes[_to].push(_vestingTime);

        vestingBalanceOf[_to][_vestingTime] += _amount;
    }

    /**
      * @dev Burns a specific amount of tokens.
      * @param _value The amount of token to be burned.
      */
    function burn(uint256 _value) public {
        _burn(msg.sender, _value);
    }

    /**
     * @dev Burns a specific amount of tokens from the target address and decrements allowance
     * @param _from address The address which you want to send tokens from
     * @param _value uint256 The amount of token to be burned
     */
    function burnFrom(address _from, uint256 _value) public {
        require(_value <= allowed[_from][msg.sender]);
        // Should https://github.com/OpenZeppelin/zeppelin-solidity/issues/707 be accepted,
        // this function needs to emit an event with the updated approval.
        allowed[_from][msg.sender] -= _value;
        _burn(_from, _value);
    }

    function _burn(address _who, uint256 _value) internal {
        _checkMyVesting(_who);

        require(_value <= accountBalance(_who));
        // no need to require value <= totalSupply, since that would imply the
        // sender's balance is greater than the totalSupply, which *should* be an assertion failure

        balances[_who] -= _value;
        _totalSupply -= _value;
        emit Burn(_who, _value);
        emit Transfer(_who, address(0), _value);
    }

    function () external {
        revert();
    }

    function _checkMyVesting(address _from) internal {
        if (vestingBalanceOf[_from][0] == 0) return;

        for (uint256 k = 0; k < vestingTimes[_from].length; k++) {
            if (vestingTimes[_from][k] < now) {
                vestingBalanceOf[_from][0] -= vestingBalanceOf[_from][vestingTimes[_from][k]];
                vestingBalanceOf[_from][vestingTimes[_from][k]] = 0;
            }
        }
    }

    function accountBalance(address _address) public view returns (uint256 balance) {
        balance = balances[_address];

        if (vestingBalanceOf[_address][0] == 0) return;

        for (uint256 k = 0; k < vestingTimes[_address].length; k++) {
            if (vestingTimes[_address][k] >= now) {
                balance -= vestingBalanceOf[_address][vestingTimes[_address][k]];
            }
        }
    }

    function addTrustedAccount(address caller) external onlyOwner {
        trustedAccounts[caller] = true;
    }

    function removeTrustedAccount(address caller) external onlyOwner {
        trustedAccounts[caller] = false;
    }

    modifier onlyTrusted(address caller) {
        require(trustedAccounts[caller]);
        _;
    }
}

contract WTokenTestHelper {
    address[] public tokens;
    mapping(address => uint256) public tokenIndexes;

    event NewToken(address indexed tokenAddress);

    function createToken(string _name, string _symbol, uint8 _decimals, uint amountToIssue) public returns(WToken token) {
        token = new WToken(_name, _symbol, _decimals);
        token.transferOwnership(msg.sender);

        tokenIndexes[address(token)] = tokens.length;
        tokens.push(address(token));

        if (amountToIssue > 0) {
            token.mint(msg.sender, amountToIssue * 10 ** uint(_decimals), 0);
        }

        emit NewToken(token);
    }

    function tokensList() public view returns(address[]) {
        return tokens;
    }

    function hasToken(address tokenAddress) public view returns (bool) {
        return tokens.length > 0 && tokens[tokenIndexes[tokenAddress]] == tokenAddress;
    }

    function mint(address tokenAddress, address to, uint amount, uint32 vestingTime) public returns (bool) {
        require(hasToken(tokenAddress));

        WToken token = WToken(tokenAddress);

        return token.mint(to, amount * 10 ** uint(token.decimals()), vestingTime);
    }

    function balanceOf(address tokenAddress, address wallet) public view returns (uint) {
        require(hasToken(tokenAddress));

        return WToken(tokenAddress).balanceOf(wallet);
    }

    function totalSupply(address tokenAddress) public view returns (uint) {
        require(hasToken(tokenAddress));

        return WToken(tokenAddress).totalSupply();
    }
}

    Contract ABI  
[{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"tokenIndexes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"},{"name":"amountToIssue","type":"uint256"}],"name":"createToken","outputs":[{"name":"token","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"tokens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tokenAddress","type":"address"}],"name":"hasToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"tokenAddress","type":"address"},{"name":"to","type":"address"},{"name":"amount","type":"uint256"},{"name":"vestingTime","type":"uint32"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokensList","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tokenAddress","type":"address"}],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tokenAddress","type":"address"},{"name":"wallet","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"tokenAddress","type":"address"}],"name":"NewToken","type":"event"}]

  Contract Creation Code Switch To Opcodes View
608060405234801561001057600080fd5b5061345f806100206000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806304bc3b1c14610093578063210f5dda146100ea5780634f64b2be146101f05780639bb0f5991461025d578063a4fa9bbd146102b8578063bd5dc2021461034d578063e4dc2aa4146103b9578063f7888aec14610410575b600080fd5b34801561009f57600080fd5b506100d4600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610487565b6040518082815260200191505060405180910390f35b3480156100f657600080fd5b506101ae600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803560ff1690602001909291908035906020019092919050505061049f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101fc57600080fd5b5061021b60048036038101908080359060200190929190505050610860565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561026957600080fd5b5061029e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061089e565b604051808215151515815260200191505060405180910390f35b3480156102c457600080fd5b50610333600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803563ffffffff16906020019092919050505061095e565b604051808215151515815260200191505060405180910390f35b34801561035957600080fd5b50610362610b1b565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156103a557808201518184015260208101905061038a565b505050509050019250505060405180910390f35b3480156103c557600080fd5b506103fa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ba9565b6040518082815260200191505060405180910390f35b34801561041c57600080fd5b50610471600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c65565b6040518082815260200191505060405180910390f35b60016020528060005260406000206000915090505481565b60008484846104ac610d59565b8080602001806020018460ff1660ff168152602001838103835286818151815260200191508051906020019080838360005b838110156104f95780820151818401526020810190506104de565b50505050905090810190601f1680156105265780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b8381101561055f578082015181840152602081019050610544565b50505050905090810190601f16801561058c5780820380516001836020036101000a031916815260200191505b5095505050505050604051809103906000f0801580156105b0573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15801561064e57600080fd5b505af1158015610662573d6000803e3d6000fd5b50505050600080549050600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008190806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506000821115610815578073ffffffffffffffffffffffffffffffffffffffff1663d0047acf338560ff16600a0a850260006040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018263ffffffff1681526020019350505050602060405180830381600087803b1580156107d857600080fd5b505af11580156107ec573d6000803e3d6000fd5b505050506040513d602081101561080257600080fd5b8101908080519060200190929190505050505b8073ffffffffffffffffffffffffffffffffffffffff167f0f53e2a811b6fd2d6cd965fd6c27b44fb924ca39f7a7f321115705c22366d62360405160405180910390a2949350505050565b60008181548110151561086f57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008054905011801561095757508173ffffffffffffffffffffffffffffffffffffffff166000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481548110151561091457fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b9050919050565b60008061096a8661089e565b151561097557600080fd5b8590508073ffffffffffffffffffffffffffffffffffffffff1663d0047acf868373ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1580156109f957600080fd5b505af1158015610a0d573d6000803e3d6000fd5b505050506040513d6020811015610a2357600080fd5b810190808051906020019092919050505060ff16600a0a8702866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018263ffffffff1663ffffffff1681526020019350505050602060405180830381600087803b158015610ad557600080fd5b505af1158015610ae9573d6000803e3d6000fd5b505050506040513d6020811015610aff57600080fd5b8101908080519060200190929190505050915050949350505050565b60606000805480602002602001604051908101604052809291908181526020018280548015610b9f57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610b55575b5050505050905090565b6000610bb48261089e565b1515610bbf57600080fd5b8173ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015610c2357600080fd5b505af1158015610c37573d6000803e3d6000fd5b505050506040513d6020811015610c4d57600080fd5b81019080805190602001909291905050509050919050565b6000610c708361089e565b1515610c7b57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166370a08231836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015610d1657600080fd5b505af1158015610d2a573d6000803e3d6000fd5b505050506040513d6020811015610d4057600080fd5b8101908080519060200190929190505050905092915050565b6040516126ca80610d6a83390190560060806040523480156200001157600080fd5b50604051620026ca380380620026ca83398101806040528101908080518201929190602001805182019291906020018051906020019092919050505082828282600090805190602001906200006892919062000142565b5081600190805190602001906200008192919062000142565b5080600260006101000a81548160ff021916908360ff16021790555050505033600260016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550505050620001f1565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200018557805160ff1916838001178555620001b6565b82800160010185558215620001b6579182015b82811115620001b557825182559160200191906001019062000198565b5b509050620001c59190620001c9565b5090565b620001ee91905b80821115620001ea576000816000905550600101620001d0565b5090565b90565b6124c980620002016000396000f300608060405260043610610133576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610145578063095ea7b3146101d557806318160ddd1461023a57806323b872dd1461026557806327e235e3146102ea578063313ce5671461034157806342966c68146103725780634afbf5ee1461039f578063661884631461040057806370a0823114610465578063715018a6146104bc57806379cc6790146104d35780638da5cb5b1461052057806395d89b41146105775780639d2e477714610607578063a9059cbb1461067c578063ba0e0f5e146106e1578063d0047acf14610724578063d294cb0f14610799578063d73dd623146107f0578063d88b867614610855578063dd62ed3e14610898578063f2fde38b1461090f575b34801561013f57600080fd5b50600080fd5b34801561015157600080fd5b5061015a610952565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561019a57808201518184015260208101905061017f565b50505050905090810190601f1680156101c75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101e157600080fd5b50610220600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109f0565b604051808215151515815260200191505060405180910390f35b34801561024657600080fd5b5061024f610ae2565b6040518082815260200191505060405180910390f35b34801561027157600080fd5b506102d0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610aec565b604051808215151515815260200191505060405180910390f35b3480156102f657600080fd5b5061032b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d69565b6040518082815260200191505060405180910390f35b34801561034d57600080fd5b50610356610d81565b604051808260ff1660ff16815260200191505060405180910390f35b34801561037e57600080fd5b5061039d60048036038101908080359060200190929190505050610d94565b005b3480156103ab57600080fd5b506103ea600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610da1565b6040518082815260200191505060405180910390f35b34801561040c57600080fd5b5061044b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610dc6565b604051808215151515815260200191505060405180910390f35b34801561047157600080fd5b506104a6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611048565b6040518082815260200191505060405180910390f35b3480156104c857600080fd5b506104d1611091565b005b3480156104df57600080fd5b5061051e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611196565b005b34801561052c57600080fd5b506105356112b9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561058357600080fd5b5061058c6112df565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105cc5780820151818401526020810190506105b1565b50505050905090810190601f1680156105f95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561061357600080fd5b50610662600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803563ffffffff16906020019092919050505061137d565b604051808215151515815260200191505060405180910390f35b34801561068857600080fd5b506106c7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506114be565b604051808215151515815260200191505060405180910390f35b3480156106ed57600080fd5b50610722600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611625565b005b34801561073057600080fd5b5061077f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803563ffffffff1690602001909291905050506116dc565b604051808215151515815260200191505060405180910390f35b3480156107a557600080fd5b506107da600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118ea565b6040518082815260200191505060405180910390f35b3480156107fc57600080fd5b5061083b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611afb565b604051808215151515815260200191505060405180910390f35b34801561086157600080fd5b50610896600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611c72565b005b3480156108a457600080fd5b506108f9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d29565b6040518082815260200191505060405180910390f35b34801561091b57600080fd5b50610950600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611db0565b005b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109e85780601f106109bd576101008083540402835291602001916109e8565b820191906000526020600020905b8154815290600101906020018083116109cb57829003601f168201915b505050505081565b600081600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600554905090565b6000610af784611e18565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610b3357600080fd5b610b3c846118ea565b8211151515610b4a57600080fd5b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610bd557600080fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60046020528060005260406000206000915090505481565b600260009054906101000a900460ff1681565b610d9e33826120e7565b50565b6006602052816000526040600020602052806000526040600020600091509150505481565b600080600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083101515610ed8576000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610f5c565b828103600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156110ed57600080fd5b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482060405160405180910390a26000600260016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115151561122157600080fd5b80600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506112b582826120e7565b5050565b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113755780601f1061134a57610100808354040283529160200191611375565b820191906000526020600020905b81548152906001019060200180831161135857829003601f168201915b505050505081565b600033600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156113d857600080fd5b6113e285856114be565b50428363ffffffff161115611405576114046000868563ffffffff168761221c565b5b7f5075049792a88eedfe4e60bb3ffeac77b4fa7f03108b81fb0b460161b983e20033868686604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018263ffffffff16815260200194505050505060405180910390a160019150509392505050565b60006114c933611e18565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561150557600080fd5b61150e336118ea565b821115151561151c57600080fd5b81600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561168157600080fd5b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600033600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561173757600080fd5b600554846005540111151561174b57600080fd5b428363ffffffff16111561176d5761176c6000868563ffffffff168761221c565b5b83600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550836005600082825401925050819055508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a37f5075049792a88eedfe4e60bb3ffeac77b4fa7f03108b81fb0b460161b983e2006000868686604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018263ffffffff16815260200194505050505060405180910390a160019150509392505050565b600080600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205491506000600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080815260200190815260200160002054141561198d57611af5565b600090505b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015611af45742600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082815481101515611a2957fe5b9060005260206000200154101515611ae757600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002083815481101515611ac857fe5b9060005260206000200154815260200190815260200160002054820391505b8080600101915050611992565b5b50919050565b600081600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611cce57600080fd5b6001600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e0c57600080fd5b611e15816123a1565b50565b600080600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000808152602001908152602001600020541415611e77576120e3565b600090505b600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490508110156120e25742600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082815481101515611f1357fe5b906000526020600020015410156120d557600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002083815481101515611fb157fe5b9060005260206000200154815260200190815260200160002054600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000808152602001908152602001600020600082825403925050819055506000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020848154811015156120b757fe5b90600052602060002001548152602001908152602001600020819055505b8080600101915050611e7c565b5b5050565b6120f082611e18565b6120f9826118ea565b811115151561210757600080fd5b80600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550806005600082825403925050819055508173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040518082815260200191505060405180910390a2600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000808152602001908152602001600020600082825401925050819055506000600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054141561233d57600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208290806001815401808255809150509060018203906000526020600020016000909192909190915055505b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008481526020019081526020016000206000828254019250508190555050505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156123dd57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600260016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505600a165627a7a7230582001fbe410337236f8b4a38acf535f770b58a98ea0767a31ac3cbed7eba49acea30029a165627a7a723058206ad50c8fcddfcb2380323f324750fba78416b0e6fb66cffad120af1425ddd1650029

   Swarm Source:
bzzr://6ad50c8fcddfcb2380323f324750fba78416b0e6fb66cffad120af1425ddd165

 

View All
Block Age transaction Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward