Sponsored:   Ubex.com - Crypto Valley IAB member. Traded on Bitforex, Bitmart, Btc-Alpha, IDEX, Bilaxy, soon on Lbank.
Contract Overview
Balance: 0 Ether
Ether Value: $0
Transactions: 2133 txns
Token Tracker: FOAM Token (FOAM)
 Latest 25 txns From a total of 2133 Transactions
(+8 PendingTxns)

TxHash Age From To Value [TxFee]
0x523efaf64b44d98353aee03590182caafdad5997f3e1ad3197be7e866c35e104(pending)0x68091be7173b0bdd6ec00fb6b9ce0f911852c97e  IN  0x4946fcea7c692606e8908002e55a582af44ac1210 Ether(Pending)
0xcd90010b7ee94c5c340418f768cd2eb937a86bcafbe8fea006530ae7efa29fce(pending)0x4df7c0f683965c22d742acbe75172e4db471f5ac  IN  0x4946fcea7c692606e8908002e55a582af44ac1210 Ether(Pending)
0xb3247819b0344916fa62d9955382e4a723591dbe4d86b02da45460552d65dcd9(pending)0x0aede6a80b45ee6156b5ea3fca675d665e89197a  IN  0x4946fcea7c692606e8908002e55a582af44ac1210 Ether(Pending)
0x2f40847c366e8cd180949143811a5f47f4957a5f5ead106e8e565a6c717b63c9(pending)0xdf9b0d723776972c5cae27fdb4f3ea827a5cf283  IN  0x4946fcea7c692606e8908002e55a582af44ac1210 Ether(Pending)
0xf2316ee57bab61943298c73b68440e82de35f570c53b429165e1da696976466e(pending)0xdf9b0d723776972c5cae27fdb4f3ea827a5cf283  IN  0x4946fcea7c692606e8908002e55a582af44ac1210 Ether(Pending)
0x1cc32c70ef66c2cf447a973cb422d5966882d64accc0bfb4dca0d3555a83b0e5(pending)0x6324c91749ca835d6897250b58d4eaf2bf42a8a1  IN  0x4946fcea7c692606e8908002e55a582af44ac1210 Ether(Pending)
0xdd94bd002d22e829441c5bc29db40746c98940e1817e421aa751214a01132e86(pending)0xf53efc8469285437acb24a650463a5afb50dd800  IN  0x4946fcea7c692606e8908002e55a582af44ac1210 Ether(Pending)
0xf4395e90381393c8fc35945754624d26f9a998f739620a666deb67e903a3ba6b(pending)0x3a0e6b374fcc051172ab4fcc3599f245bbaf02a2  IN  0x4946fcea7c692606e8908002e55a582af44ac1210 Ether(Pending)
0xe14de13b9bea6c893e59ae2c26399b5acdd7692632cf5ef40acf0fd40be8977934 mins ago0x0aede6a80b45ee6156b5ea3fca675d665e89197a  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00009183
0xcc07d21b6a7aa52af4633269d9280c441d0ac829a819131d875db5e78940033755 mins ago0x668873889baf61df613878ef361d6019368b363b  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.0012244
0x5a4ebc18e1463e9b607429c474d6dcfa9e8c7b7da171e016861b7240a39f6a8b56 mins ago0x668873889baf61df613878ef361d6019368b363b  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.0012244
0xaffc69a83eed07254acd73ce102489b100b1e709c8f06d52b82b98a53b8fc5773 hrs 39 mins ago0x709d7c294b11681c9595ac589ea8a6e996839a77  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00012244
0x5e1def06c6038040f4465bb6f4186524700c92483204a35cc8fc8ace52a277223 hrs 39 mins ago0x709d7c294b11681c9595ac589ea8a6e996839a77  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00012244
0xd21a185c2562c8af1ea7847c78c96ecd65d8050a5487b922521c79ab1b6bbb986 hrs 2 mins ago0x8517e368b9b5ce3c50f00c61512277978baa0983  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00024488
0x549cc855d1da1cc03c595c1135e9eb6b26a7d36cf132d35b4b8707b357df085f6 hrs 2 mins ago0x8517e368b9b5ce3c50f00c61512277978baa0983  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00024488
0xc2053d7fe9b2d28f42ec63b694e49b6324395dfeac38d4c830a766a48e5710dd6 hrs 7 mins ago0x8517e368b9b5ce3c50f00c61512277978baa0983  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00018366
0xba95f902e7c9556fd6fa2776ce8411ac0a52256cf85c3df2c0d0370a7cd0b1616 hrs 7 mins ago0x8517e368b9b5ce3c50f00c61512277978baa0983  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00022805
0x64582206f75b8e00faf1507be2966caed4c66e88d14a21df076475bda22576d96 hrs 12 mins ago0x0ab07ea815c7f268dfcc9ed9212e13caa570265b  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00015305
0x988600195416464d64c8d28759fe8277feabe786250032cdf1976633457ca49d6 hrs 13 mins ago0x0ab07ea815c7f268dfcc9ed9212e13caa570265b  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00022805
0xd792da80858e8b259baf8368f44cc5296ed7d40cf4632286a2bc741b8429e9127 hrs 27 mins ago0xdfcd4f74729d858f98fe0028d05b27226f0e8bdb  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00018244
0xc7d143de4eef949fda5730108db65abe849de77026110d46be1c25454f181cba8 hrs 21 mins ago0x331f49fe0feccc9c7ff38585602c6759ad5323ea  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00013683
0x12fb110b2eaebdae5f214409511a6ce87a137b62a9e18ffeb3fe9462bfb513318 hrs 23 mins ago0x331f49fe0feccc9c7ff38585602c6759ad5323ea  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00013683
0x568290dd5effab5aa35a0e0638dc9e11cffe1541a8cbb276ef2c20227fbfa76e8 hrs 56 mins ago0xb157ff4f2a89645710437b7dba7fb454dbcc5303  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.002306701
0x81b50e6e7ec1dd18ab68178234799ce716508f6150136d5128859125a468329f9 hrs 5 mins ago0x59d0bb48006f6b0d2137f1a2d48c09610e619c20  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00015305
0x9f38342a5fb22a7e958accc6d036efd743ebaf894b16c1afe3267855818c52af9 hrs 16 mins ago0x59d0bb48006f6b0d2137f1a2d48c09610e619c20  IN   0x4946fcea7c692606e8908002e55a582af44ac1210 Ether0.00015337
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
 Latest 1 Internal Transaction

ParentTxHash Block Age From To Value
0x6cadd5e8960f526803f23a72a9232492a028502a81aa71fb21beb6907d345313604667557 days 7 hrs ago0x3ce3b6d9372a4d761172a89cf0139129309fa0ae  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 (Exact Match)
Contract Name: Token
Compiler Text: v0.4.24+commit.e67f0147
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity 0.4.24;

// File: node_modules/@tokenfoundry/token-contracts/contracts/TokenControllerI.sol

/// @title Interface for token controllers. The controller specifies whether a transfer can be done.
contract TokenControllerI {

    /// @dev Specifies whether a transfer is allowed or not.
    /// @return True if the transfer is allowed
    function transferAllowed(address _from, address _to)
        external
        view 
        returns (bool);
}

// File: openzeppelin-solidity/contracts/ownership/Ownable.sol

/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 */
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.
   */
  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;
  }
}

// File: openzeppelin-solidity/contracts/math/SafeMath.sol

/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {

  /**
  * @dev Multiplies two numbers, throws on overflow.
  */
  function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
    // Gas optimization: this is cheaper than asserting 'a' not being zero, but the
    // benefit is lost if 'b' is also tested.
    // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522
    if (a == 0) {
      return 0;
    }

    c = a * b;
    assert(c / a == b);
    return c;
  }

  /**
  * @dev Integer division of two numbers, truncating the quotient.
  */
  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    // assert(b > 0); // Solidity automatically throws when dividing by 0
    // uint256 c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold
    return a / b;
  }

  /**
  * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
  */
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  /**
  * @dev Adds two numbers, throws on overflow.
  */
  function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
    c = a + b;
    assert(c >= a);
    return c;
  }
}

// File: openzeppelin-solidity/contracts/token/ERC20/ERC20Basic.sol

/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Basic {
  function totalSupply() public view returns (uint256);
  function balanceOf(address who) public view returns (uint256);
  function transfer(address to, uint256 value) public returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);
}

// File: openzeppelin-solidity/contracts/token/ERC20/BasicToken.sol

/**
 * @title Basic token
 * @dev Basic version of StandardToken, with no allowances.
 */
contract BasicToken is ERC20Basic {
  using SafeMath for uint256;

  mapping(address => uint256) balances;

  uint256 totalSupply_;

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

  /**
  * @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) {
    require(_to != address(0));
    require(_value <= balances[msg.sender]);

    balances[msg.sender] = balances[msg.sender].sub(_value);
    balances[_to] = balances[_to].add(_value);
    emit Transfer(msg.sender, _to, _value);
    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) {
    return balances[_owner];
  }

}

// File: openzeppelin-solidity/contracts/token/ERC20/ERC20.sol

/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
contract ERC20 is ERC20Basic {
  function allowance(address owner, address spender)
    public view returns (uint256);

  function transferFrom(address from, address to, uint256 value)
    public returns (bool);

  function approve(address spender, uint256 value) public returns (bool);
  event Approval(
    address indexed owner,
    address indexed spender,
    uint256 value
  );
}

// File: openzeppelin-solidity/contracts/token/ERC20/StandardToken.sol

/**
 * @title Standard ERC20 token
 *
 * @dev Implementation of the basic standard token.
 * @dev https://github.com/ethereum/EIPs/issues/20
 * @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
 */
contract StandardToken is ERC20, BasicToken {

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


  /**
   * @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)
  {
    require(_to != address(0));
    require(_value <= balances[_from]);
    require(_value <= allowed[_from][msg.sender]);

    balances[_from] = balances[_from].sub(_value);
    balances[_to] = balances[_to].add(_value);
    allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_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] = (
      allowed[msg.sender][_spender].add(_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.sub(_subtractedValue);
    }
    emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }

}

// File: node_modules/@tokenfoundry/token-contracts/contracts/ControllableToken.sol

/**
 * @title Controllable ERC20 token
 *
 * @dev Token that queries a token controller contract to check if a transfer is allowed.
 * @dev controller state var is going to be set with the address of a TokenControllerI contract that has 
 * implemented transferAllowed() function.
 */
contract ControllableToken is Ownable, StandardToken {
    TokenControllerI public controller;

    /// @dev Executes transferAllowed() function from the Controller. 
    modifier isAllowed(address _from, address _to) {
        require(controller.transferAllowed(_from, _to));
        _;
    }

    /// @dev Sets the controller that is going to be used by isAllowed modifier
    function setController(TokenControllerI _controller) onlyOwner public {
        require(_controller != address(0));
        controller = _controller;
    }

    /// @dev It calls parent BasicToken.transfer() function. It will transfer an amount of tokens to an specific address
    /// @return True if the token is transfered with success
    function transfer(address _to, uint256 _value) 
        isAllowed(msg.sender, _to)
        public
        returns (bool)
    {
        return super.transfer(_to, _value);
    }

    /// @dev It calls parent StandardToken.transferFrom() function. It will transfer from an address a certain amount of tokens to another address 
    /// @return True if the token is transfered with success 
    function transferFrom(address _from, address _to, uint256 _value)
        isAllowed(_from, _to) 
        public 
        returns (bool)
    {
        return super.transferFrom(_from, _to, _value);
    }
}

// File: openzeppelin-solidity/contracts/token/ERC20/DetailedERC20.sol

/**
 * @title DetailedERC20 token
 * @dev The decimals are only for visualization purposes.
 * All the operations are done using the smallest and indivisible token unit,
 * just as on Ethereum all the operations are done in wei.
 */
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;
  }
}

// File: node_modules/@tokenfoundry/token-contracts/contracts/Token.sol

/**
 * @title Token base contract - Defines basic structure for a token
 *
 * @dev ControllableToken is a StandardToken, an OpenZeppelin ERC20 implementation library. DetailedERC20 is also an OpenZeppelin contract.
 * More info about them is available here: https://github.com/OpenZeppelin/zeppelin-solidity/tree/master/contracts/token/ERC20
 */
contract Token is ControllableToken, DetailedERC20 {

	/**
	* @dev Transfer is an event inherited from ERC20Basic.sol interface (OpenZeppelin).
	* @param _supply Total supply of tokens.
    * @param _name Is the long name by which the token contract should be known
    * @param _symbol The set of capital letters used to represent the token e.g. DTH.
    * @param _decimals The number of decimal places the tokens can be split up into. This should be between 0 and 18.
	*/
    constructor(
        uint256 _supply,
        string _name,
        string _symbol,
        uint8 _decimals
    ) DetailedERC20(_name, _symbol, _decimals) public {
        require(_supply != 0);
        totalSupply_ = _supply;
        balances[msg.sender] = _supply;
        emit Transfer(address(0), msg.sender, _supply);  //event
    }
}

    Contract ABI  
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","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":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_controller","type":"address"}],"name":"setController","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"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":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"controller","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_supply","type":"uint256"},{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"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":"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"}]

  Contract Creation Code Switch To Opcodes View
608060405234801561001057600080fd5b50604051610e12380380610e12833981016040908152815160208084015192840151606085015160008054600160a060020a03191633179055938501805193959094910192909184918491849161006d91600591908601906100f9565b5081516100819060069060208501906100f9565b506007805460ff191660ff9290921691909117905550508315156100a457600080fd5b6002849055336000818152600160209081526040808320889055805188815290517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a350505050610194565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061013a57805160ff1916838001178555610167565b82800160010185558215610167579182015b8281111561016757825182559160200191906001019061014c565b50610173929150610177565b5090565b61019191905b80821115610173576000815560010161017d565b90565b610c6f806101a36000396000f3006080604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146100ea578063095ea7b31461017457806318160ddd146101ac57806323b872dd146101d3578063313ce567146101fd578063661884631461022857806370a082311461024c578063715018a61461026d5780638da5cb5b1461028457806392eefe9b146102b557806395d89b41146102d6578063a9059cbb146102eb578063d73dd6231461030f578063dd62ed3e14610333578063f2fde38b1461035a578063f77c47911461037b575b600080fd5b3480156100f657600080fd5b506100ff610390565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610139578181015183820152602001610121565b50505050905090810190601f1680156101665780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561018057600080fd5b50610198600160a060020a036004351660243561041e565b604080519115158252519081900360200190f35b3480156101b857600080fd5b506101c1610484565b60408051918252519081900360200190f35b3480156101df57600080fd5b50610198600160a060020a036004358116906024351660443561048a565b34801561020957600080fd5b5061021261054e565b6040805160ff9092168252519081900360200190f35b34801561023457600080fd5b50610198600160a060020a0360043516602435610557565b34801561025857600080fd5b506101c1600160a060020a0360043516610647565b34801561027957600080fd5b50610282610662565b005b34801561029057600080fd5b506102996106ce565b60408051600160a060020a039092168252519081900360200190f35b3480156102c157600080fd5b50610282600160a060020a03600435166106dd565b3480156102e257600080fd5b506100ff610738565b3480156102f757600080fd5b50610198600160a060020a0360043516602435610793565b34801561031b57600080fd5b50610198600160a060020a036004351660243561084f565b34801561033f57600080fd5b506101c1600160a060020a03600435811690602435166108e8565b34801561036657600080fd5b50610282600160a060020a0360043516610913565b34801561038757600080fd5b50610299610936565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104165780601f106103eb57610100808354040283529160200191610416565b820191906000526020600020905b8154815290600101906020018083116103f957829003601f168201915b505050505081565b336000818152600360209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b60025490565b60048054604080517f214e52ca000000000000000000000000000000000000000000000000000000008152600160a060020a0380881694820194909452838616602482015290516000938793879391169163214e52ca9160448082019260209290919082900301818987803b15801561050257600080fd5b505af1158015610516573d6000803e3d6000fd5b505050506040513d602081101561052c57600080fd5b5051151561053957600080fd5b610544868686610945565b9695505050505050565b60075460ff1681565b336000908152600360209081526040808320600160a060020a0386168452909152812054808311156105ac57336000908152600360209081526040808320600160a060020a03881684529091528120556105e1565b6105bc818463ffffffff610abe16565b336000908152600360209081526040808320600160a060020a03891684529091529020555b336000818152600360209081526040808320600160a060020a0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b600160a060020a031660009081526001602052604090205490565b600054600160a060020a0316331461067957600080fd5b60008054604051600160a060020a03909116917ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482091a26000805473ffffffffffffffffffffffffffffffffffffffff19169055565b600054600160a060020a031681565b600054600160a060020a031633146106f457600080fd5b600160a060020a038116151561070957600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6006805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104165780601f106103eb57610100808354040283529160200191610416565b60048054604080517f214e52ca00000000000000000000000000000000000000000000000000000000815233938101849052600160a060020a0380871660248301529151600094938793169163214e52ca91604480830192602092919082900301818987803b15801561080557600080fd5b505af1158015610819573d6000803e3d6000fd5b505050506040513d602081101561082f57600080fd5b5051151561083c57600080fd5b6108468585610ad0565b95945050505050565b336000908152600360209081526040808320600160a060020a0386168452909152812054610883908363ffffffff610bb316565b336000818152600360209081526040808320600160a060020a0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b600160a060020a03918216600090815260036020908152604080832093909416825291909152205490565b600054600160a060020a0316331461092a57600080fd5b61093381610bc6565b50565b600454600160a060020a031681565b6000600160a060020a038316151561095c57600080fd5b600160a060020a03841660009081526001602052604090205482111561098157600080fd5b600160a060020a03841660009081526003602090815260408083203384529091529020548211156109b157600080fd5b600160a060020a0384166000908152600160205260409020546109da908363ffffffff610abe16565b600160a060020a038086166000908152600160205260408082209390935590851681522054610a0f908363ffffffff610bb316565b600160a060020a038085166000908152600160209081526040808320949094559187168152600382528281203382529091522054610a53908363ffffffff610abe16565b600160a060020a03808616600081815260036020908152604080832033845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060019392505050565b600082821115610aca57fe5b50900390565b6000600160a060020a0383161515610ae757600080fd5b33600090815260016020526040902054821115610b0357600080fd5b33600090815260016020526040902054610b23908363ffffffff610abe16565b3360009081526001602052604080822092909255600160a060020a03851681522054610b55908363ffffffff610bb316565b600160a060020a0384166000818152600160209081526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b81810182811015610bc057fe5b92915050565b600160a060020a0381161515610bdb57600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03929092169190911790555600a165627a7a723058205a5ba26a9e59b08cf8f9dcd32b897620fc37f8337a8ea608b1a1fa9b799d25ce00290000000000000000000000000000000000000000033b2e3c9fd0803ce8000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000a464f414d20546f6b656e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004464f414d00000000000000000000000000000000000000000000000000000000

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

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000033b2e3c9fd0803ce8000000
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [2] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [4] : 000000000000000000000000000000000000000000000000000000000000000a
Arg [5] : 464f414d20546f6b656e00000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [7] : 464f414d00000000000000000000000000000000000000000000000000000000


   Swarm Source:
bzzr://5a5ba26a9e59b08cf8f9dcd32b897620fc37f8337a8ea608b1a1fa9b799d25ce

 

View All
Block Age transaction Difficulty Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.