Latest 25 txns From a total of 16178 Transactions

TxHash Age From To Value [TxFee]
0x3d70b23e40bae6e48a55b8926835a8a57b88ab6e53c46fea9e6b11812286563f14 hrs 16 mins ago0xd13a01dacfbaa2ffac1eabde975835b99f9e8d23  IN   GigaWatt_Token0 Ether0.00111445
0x460c7b6d707dba32e9b30c76b3a2ad4a0056c136e1d2f3d9648bab1ae44786ef15 hrs 27 mins ago0xaddf277e53e8db0cdb7ab25ed2e50686b6937cf1  IN   GigaWatt_Token0 Ether0.000111125
0xf70f352ebe9eb3cf0b541a879508e9cd3f40da2b8573221e2da9a0725ad9017c15 hrs 54 mins ago0xe5c39c1094a2e9f62986951c6dbdd298896f1cf0  IN   GigaWatt_Token0 Ether0.0001489
0x1e042507a603f7dbfafb870b3e428037f3c24b1be711734499b0c89288c17d3b16 hrs 2 mins ago0x170eaa2a39eeaa78094cca1d9fb4293552445b0c  IN   GigaWatt_Token0 Ether0.0001003005
0xa3647f6cadce078b8bf2fd23f379cdabc278b4c3e3818f458bd9b77fd6daf1de16 hrs 9 mins ago0xc347a4722db289d3fff1213b1972db4b6b555a39  IN   GigaWatt_Token0 Ether0.000261023
0x24dfa4bbf581525d61e6d8e6916a71169efc976fdf98d258dfa2b6e3728e8a2716 hrs 13 mins ago0x01c35cb3480b1e223b1924d86d2366e4cd25f405  IN   GigaWatt_Token0 Ether0.000089156
0x3887e07b131f8152f4fb4896a94e0fb210135801ca891335fbf13a035217f78e16 hrs 29 mins ago0xc9cb8c033d7942506742da2371748e9316eacfa0  IN   GigaWatt_Token0 Ether0.001528849
0x46eaca059343b8d36dd5dc42d984153e39c4b9764df9f7d4d2dce8740294df3e16 hrs 39 mins ago0x8c30d114b6ba0b1eacd516aec4f13341d703e5db  IN   GigaWatt_Token0 Ether0.000484757
0x233b4ce63b6180d9aa1c45d01826c605f1a80225be674854f9ebe09ba6d90d8423 hrs 37 mins ago0x8c085400e781c0b9425b904efc5cfd80ea0be56f  IN   GigaWatt_Token0 Ether0.000111445
0x7258e97a70b2ed42b2f037bbd71855e94f5805cb1d1b886c0604e8b884f567821 day 10 mins ago0xfb74222fc18cce3a2f5a09d8aeda9a4d5d59f20c  IN   GigaWatt_Token0 Ether0.0001489
0xe8b5d52b1fee7efbf021742f8086b0b685549a4d64c16b81afcb98f740b55ab21 day 9 hrs ago0xd13a01dacfbaa2ffac1eabde975835b99f9e8d23  IN   GigaWatt_Token0 Ether0.00111445
0x9b1ce5b9a28a2e7a53d26c09aed694ad4f21ffb4391d6e133ddc7512761b75a11 day 9 hrs ago0x9ff280640c85c42946fe0e17cd32bfa354e09f1f  IN   GigaWatt_Token0 Ether0.000066867
0x9d8b9abfe27c5f8a75546f32e3bf1438e9e72411a6d6aa2f81abb11cc1c71c2b1 day 9 hrs ago0x3e7a14f2f56f37924bfceffd320cf62713863833  IN   GigaWatt_Token0 Ether0.001528849
0x81ceb989b4aa59eec16c45453da632d108c16fe553d6f82bd05232b97408da5a1 day 11 hrs ago0xc347a4722db289d3fff1213b1972db4b6b555a39  IN   GigaWatt_Token0 Ether0.000178312
0x5e1db8f5505cc4b586ea2a754a51042619726971a0df8d7f207a22c5aaa28e7a1 day 11 hrs ago0xc347a4722db289d3fff1213b1972db4b6b555a39  IN   GigaWatt_Token0 Ether0.000298312
0x410c5e68fe34d3493013100a8d3963629d89ead3a36118d33ce20a92d30cd2901 day 14 hrs ago0x83e9d6b08e4c81c2b9729362e86e178b65298aa9  IN   GigaWatt_Token0 Ether0.000120824
0x210d556725eed2ccfe5643c68d5c030dd2e2d2c4bd88739525448523d9ffe59c1 day 14 hrs ago0x83e9d6b08e4c81c2b9729362e86e178b65298aa9  IN   GigaWatt_Token0 Ether0.000180824
0x169218c8005eaddf4bcbcd96963a9da37fed1790da8673931764115be5f08f741 day 14 hrs ago0x83e9d6b08e4c81c2b9729362e86e178b65298aa9  IN   GigaWatt_Token0 Ether0.000120824
0x7b1c6d5f6a0d3632f21f922c9395749866e70ba96440d2802b9e9a377eefb98a1 day 14 hrs ago0x83e9d6b08e4c81c2b9729362e86e178b65298aa9  IN   GigaWatt_Token0 Ether0.000180824
0xf11da7547e9ee81a39e73db3affbb2d3d451e5bbb25c15966f37b42a2a8805d21 day 15 hrs ago0x2a330de86d7c730564c9f24e1587cc10523cb384  IN   GigaWatt_Token0 Ether0.00045206
0xd95436bc311daae1689540641cd5a82bcb2f61f3a34f2d5d1b2625bfe13dc3601 day 15 hrs ago0x98c5c9dc6dd44d6dc07cbac11df9e0f38594cf42  IN   GigaWatt_Token0 Ether0.000209156
0xc3a8a261909f9b18d5c0bc908055a09de4961e14a050efd61ce58013212bcbc01 day 19 hrs ago0xd13a01dacfbaa2ffac1eabde975835b99f9e8d23  IN   GigaWatt_Token0 Ether0.00111445
0x32d75fe696ee9406cfc45ea8001b97e2bd0593c819a33082a3e416159d80604a1 day 19 hrs ago0xc347a4722db289d3fff1213b1972db4b6b555a39  IN   GigaWatt_Token0 Ether0.000261023
0x7ce52dd18d1092c20ded39dc55575885c1c6f6cf18718de497209d8381dcb9522 days 6 hrs ago0xb6c3e6a645f105efae04d3332d3af259868e8e83  IN   GigaWatt_Token0 Ether0.000156867
0x80eec902380058d1dd8b85dc12dc534d1964a966647368993838de03fbfdc63f2 days 11 hrs ago0x9ff280640c85c42946fe0e17cd32bfa354e09f1f  IN   GigaWatt_Token0 Ether0.000066867
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
View All
ParentTxHash Block Age From To Value
Contract Name: GigaWattToken
Compiler Text: v0.4.6+commit.2dabbdf0
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

/*
 * Giga Watt Token Smart Contract.  Copyright © 2016 by ABDK Consulting.
 * Author: Mikhail Vladimirov <[email protected]>
 */
pragma solidity ^0.4.1;

/**
 * ERC-20 standard token interface, as defined
 * <a href="http://github.com/ethereum/EIPs/issues/20">here</a>.
 */
contract Token {
  /**
   * Get total number of tokens in circulation.
   *
   * @return total number of tokens in circulation
   */
  function totalSupply () constant returns (uint256 supply);

  /**
   * Get number of tokens currently belonging to given owner.
   *
   * @param _owner address to get number of tokens currently belonging to the
            owner of
   * @return number of tokens currently belonging to the owner of given address
   */
  function balanceOf (address _owner) constant returns (uint256 balance);

  /**
   * Transfer given number of tokens from message sender to given recipient.
   *
   * @param _to address to transfer tokens from the owner of
   * @param _value number of tokens to transfer to the owner of given address
   * @return true if tokens were transferred successfully, false otherwise
   */
  function transfer (address _to, uint256 _value) returns (bool success);

  /**
   * Transfer given number of tokens from given owner to given recipient.
   *
   * @param _from address to transfer tokens from the owner of
   * @param _to address to transfer tokens to the owner of
   * @param _value number of tokens to transfer from given owner to given
            recipient
   * @return true if tokens were transferred successfully, false otherwise
   */
  function transferFrom (address _from, address _to, uint256 _value)
  returns (bool success);

  /**
   * Allow given spender to transfer given number of tokens from message sender.
   *
   * @param _spender address to allow the owner of to transfer tokens from
            message sender
   * @param _value number of tokens to allow to transfer
   * @return true if token transfer was successfully approved, false otherwise
   */
  function approve (address _spender, uint256 _value) returns (bool success);

  /**
   * Tell how many tokens given spender is currently allowed to transfer from
   * given owner.
   *
   * @param _owner address to get number of tokens allowed to be transferred
   *        from the owner of
   * @param _spender address to get number of tokens allowed to be transferred
   *        by the owner of
   * @return number of tokens given spender is currently allowed to transfer
   *         from given owner
   */
  function allowance (address _owner, address _spender)
  constant returns (uint256 remaining);

  /**
   * Logged when tokens were transferred from one owner to another.
   *
   * @param _from address of the owner, tokens were transferred from
   * @param _to address of the owner, tokens were transferred to
   * @param _value number of tokens transferred
   */
  event Transfer (address indexed _from, address indexed _to, uint256 _value);

  /**
   * Logged when owner approved his tokens to be transferred by some spender.
   *
   * @param _owner owner who approved his tokens to be transferred
   * @param _spender spender who were allowed to transfer the tokens belonging
   *        to the owner
   * @param _value number of tokens belonging to the owner, approved to be
   *        transferred by the spender
   */
  event Approval (
    address indexed _owner, address indexed _spender, uint256 _value);
}

/**
 * Provides methods to safely add, subtract and multiply uint256 numbers.
 */
contract SafeMath {
  uint256 constant private MAX_UINT256 =
    0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF;

  /**
   * Add two uint256 values, throw in case of overflow.
   *
   * @param x first value to add
   * @param y second value to add
   * @return x + y
   */
  function safeAdd (uint256 x, uint256 y)
  constant internal
  returns (uint256 z) {
    if (x > MAX_UINT256 - y) throw;
    return x + y;
  }

  /**
   * Subtract one uint256 value from another, throw in case of underflow.
   *
   * @param x value to subtract from
   * @param y value to subtract
   * @return x - y
   */
  function safeSub (uint256 x, uint256 y)
  constant internal
  returns (uint256 z) {
    if (x < y) throw;
    return x - y;
  }

  /**
   * Multiply two uint256 values, throw in case of overflow.
   *
   * @param x first value to multiply
   * @param y second value to multiply
   * @return x * y
   */
  function safeMul (uint256 x, uint256 y)
  constant internal
  returns (uint256 z) {
    if (y == 0) return 0; // Prevent division by zero at the next line
    if (x > MAX_UINT256 / y) throw;
    return x * y;
  }
}

/**
 * Abstract base contract for contracts implementing Token interface.
 */
contract AbstractToken is Token, SafeMath {
  /**
   * Get total number of tokens in circulation.
   *
   * @return total number of tokens in circulation
   */
  function totalSupply () constant returns (uint256 supply) {
    return tokensCount;
  }

  /**
   * Get number of tokens currently belonging to given owner.
   *
   * @param _owner address to get number of tokens currently belonging to the
            owner of
   * @return number of tokens currently belonging to the owner of given address
   */
  function balanceOf (address _owner) constant returns (uint256 balance) {
    return accounts [_owner];
  }

  /**
   * Transfer given number of tokens from message sender to given recipient.
   *
   * @param _to address to transfer tokens from the owner of
   * @param _value number of tokens to transfer to the owner of given address
   * @return true if tokens were transferred successfully, false otherwise
   */
  function transfer (address _to, uint256 _value) returns (bool success) {
    return doTransfer (msg.sender, _to, _value);
  }

  /**
   * Transfer given number of tokens from given owner to given recipient.
   *
   * @param _from address to transfer tokens from the owner of
   * @param _to address to transfer tokens to the owner of
   * @param _value number of tokens to transfer from given owner to given
            recipient
   * @return true if tokens were transferred successfully, false otherwise
   */
  function transferFrom (address _from, address _to, uint256 _value)
  returns (bool success)
  {
    if (_value > approved [_from][msg.sender]) return false;
    if (doTransfer (_from, _to, _value)) {
      approved [_from][msg.sender] =
        safeSub (approved[_from][msg.sender], _value);
      return true;
    } else return false;
  }

  /**
   * Allow given spender to transfer given number of tokens from message sender.
   *
   * @param _spender address to allow the owner of to transfer tokens from
            message sender
   * @param _value number of tokens to allow to transfer
   * @return true if token transfer was successfully approved, false otherwise
   */
  function approve (address _spender, uint256 _value) returns (bool success) {
    approved [msg.sender][_spender] = _value;
    Approval (msg.sender, _spender, _value);
    return true;
  }

  /**
   * Tell how many tokens given spender is currently allowed to transfer from
   * given owner.
   *
   * @param _owner address to get number of tokens allowed to be transferred
   *        from the owner of
   * @param _spender address to get number of tokens allowed to be transferred
   *        by the owner of
   * @return number of tokens given spender is currently allowed to transfer
   *         from given owner
   */
  function allowance (address _owner, address _spender)
  constant returns (uint256 remaining) {
    return approved [_owner][_spender];
  }

  /**
   * Create given number of new tokens and give them to given owner.
   *
   * @param _owner address to given new created tokens to the owner of
   * @param _value number of new tokens to create
   */
  function createTokens (address _owner, uint256 _value) internal {
    if (_value > 0) {
      accounts [_owner] = safeAdd (accounts [_owner], _value);
      tokensCount = safeAdd (tokensCount, _value);
    }
  }

  /**
   * Perform token transfer.
   *
   * @param _from address to transfer tokens from the owner of
   * @param _to address to transfer tokens to to the owner of
   * @param _value number of tokens to transfer
   * @return true if tokens were transferred successfully, false otherwise
   */
  function doTransfer (address _from, address _to, uint256 _value)
  private returns (bool success) {
    if (_value > accounts [_from]) return false;
    if (_value > 0 && _from != _to) {
      accounts [_from] = safeSub (accounts [_from], _value);
      accounts [_to] = safeAdd (accounts [_to], _value);
      Transfer (_from, _to, _value);
    }
    return true;
  }

  /**
   * Total number of tokens in circulation.
   */
  uint256 tokensCount;

  /**
   * Maps addresses of token owners to states of their accounts.
   */
  mapping (address => uint256) accounts;

  /**
   * Maps addresses of token owners to mappings from addresses of spenders to
   * how many tokens belonging to the owner, the spender is currently allowed to
   * transfer.
   */
  mapping (address => mapping (address => uint256)) approved;
}

/**
 * Standard Token smart contract that provides the following features:
 * <ol>
 *   <li>Centralized creation of new tokens</li> 
 *   <li>Freeze/unfreeze token transfers</li>
 *   <li>Change owner</li>
 * </ol>
 */
contract StandardToken is AbstractToken {
  /**
   * Maximum allowed tokens in circulation (2^64 - 1).
   */
  uint256 constant private MAX_TOKENS = 0xFFFFFFFFFFFFFFFF;

  /**
   * Address of the owner of the contract.
   */
  address owner;

  /**
   * Whether transfers are currently frozen.
   */
  bool frozen;

  /**
   * Instantiate the contract and make the message sender to be the owner.
   */
  function StandardToken () {
    owner = msg.sender;
  }

  /**
   * Transfer given number of tokens from message sender to given recipient.
   *
   * @param _to address to transfer tokens from the owner of
   * @param _value number of tokens to transfer to the owner of given address
   * @return true if tokens were transferred successfully, false otherwise
   */
  function transfer (address _to, uint256 _value)
  returns (bool success) {
    if (frozen) return false;
    else return AbstractToken.transfer (_to, _value);
  }

  /**
   * Transfer given number of tokens from given owner to given recipient.
   *
   * @param _from address to transfer tokens from the owner of
   * @param _to address to transfer tokens to the owner of
   * @param _value number of tokens to transfer from given owner to given
            recipient
   * @return true if tokens were transferred successfully, false otherwise
   */
  function transferFrom (address _from, address _to, uint256 _value)
  returns (bool success) {
    if (frozen) return false;
    else return AbstractToken.transferFrom (_from, _to, _value);
  }

  /**
   * Create certain number of new tokens and give them to the owner of the
   * contract.
   * 
   * @param _value number of new tokens to create
   * @return true if tokens were created successfully, false otherwise
   */
  function createTokens (uint256 _value)
  returns (bool success) {
    if (msg.sender != owner) throw;

    if (_value > MAX_TOKENS - totalSupply ()) return false;

    AbstractToken.createTokens (owner, _value);

    return true;
  }

  /**
   * Freeze token transfers.
   */
  function freezeTransfers () {
    if (msg.sender != owner) throw;

    if (!frozen)
    {
      frozen = true;
      Freeze ();
    }
  }

  /**
   * Unfreeze token transfers.
   */
  function unfreezeTransfers () {
    if (msg.sender != owner) throw;

    if (frozen) {
      frozen = false;
      Unfreeze ();
    }
  }

  /**
   * Set new owner address.
   *
   * @param _newOwner new owner address
   */
  function setOwner (address _newOwner) {
    if (msg.sender != owner) throw;

    owner = _newOwner;
  }

  /**
   * Logged when token transfers were freezed.
   */
  event Freeze ();

  /**
   * Logged when token transfers were unfreezed.
   */
  event Unfreeze ();
}

/**
 * Giga Watt Token Smart Contract.
 */
contract GigaWattToken is StandardToken {
  /**
   * Constructor just calls constructor of parent contract.
   */
  function GigaWattToken () StandardToken () {
    // Do nothing
  }
}

    Contract ABI  
[{"constant":false,"inputs":[],"name":"freezeTransfers","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"supply","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"unfreezeTransfers","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"createTokens","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"anonymous":false,"inputs":[],"name":"Freeze","type":"event"},{"anonymous":false,"inputs":[],"name":"Unfreeze","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"}]

  Contract Creation Code Switch To Opcodes View
606060405234610000575b5b60038054600160a060020a0319166c01000000000000000000000000338102041790555b5b5b6106f58061003f6000396000f3606060405236156100825760e060020a6000350463015024608114610087578063095ea7b31461009657806313af4035146100bd57806318160ddd146100cf57806323b872dd146100ee57806331c420d41461011857806370a08231146101275780637e1f2bb814610149578063a9059cbb1461016d578063dd62ed3e14610194575b610000565b34610000576100946101b9565b005b34610000576100a9600435602435610238565b604080519115158252519081900360200190f35b34610000576100946004356102a3565b005b34610000576100dc6102f2565b60408051918252519081900360200190f35b34610000576100a96004356024356044356102f9565b604080519115158252519081900360200190f35b3461000057610094610330565b005b34610000576100dc6004356103a8565b60408051918252519081900360200190f35b34610000576100a96004356103c7565b604080519115158252519081900360200190f35b34610000576100a9600435602435610425565b604080519115158252519081900360200190f35b34610000576100dc60043560243561045e565b60408051918252519081900360200190f35b60035433600160a060020a039081169116146101d457610000565b60035460a060020a900460ff161515610235576003805474ff0000000000000000000000000000000000000000191660a060020a1790556040517f615acbaede366d76a8b8cb2a9ada6a71495f0786513d71aa97aaf0c3910b78de90600090a15b5b565b600160a060020a03338116600081815260026020908152604080832094871680845294825280832086905580518681529051929493927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b60035433600160a060020a039081169116146102be57610000565b6003805473ffffffffffffffffffffffffffffffffffffffff19166c01000000000000000000000000838102041790555b50565b6000545b90565b60035460009060a060020a900460ff161561031a5750600061032856610328565b61032584848461048b565b90505b5b9392505050565b60035433600160a060020a0390811691161461034b57610000565b60035460a060020a900460ff1615610235576003805474ff0000000000000000000000000000000000000000191690556040517f2f05ba71d0df11bf5fa562a6569d70c4f80da84284badbe015ce1456063d0ded90600090a15b5b565b600160a060020a0381166000908152600160205260409020545b919050565b60035460009033600160a060020a039081169116146103e557610000565b6103ed6102f2565b67ffffffffffffffff03821115610406575060006103c2565b60035461041c90600160a060020a031683610547565b5060015b919050565b60035460009060a060020a900460ff16156104465750600061029d5661029d565b61045083836105a3565b905061029d565b5b92915050565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b600160a060020a038084166000908152600260209081526040808320339094168352929052908120548211156104c357506000610328565b6104ce8484846105b9565b1561053757600160a060020a038085166000908152600260209081526040808320339094168352929052205461050490836106bd565b600160a060020a038086166000908152600260209081526040808320339094168352929052205550600161032856610328565b506000610328565b5b9392505050565b600081111561059e57600160a060020a03821660009081526001602052604090205461057390826106d7565b600160a060020a0383166000908152600160205260408120919091555461059a90826106d7565b6000555b5b5050565b60006105b03384846105b9565b90505b92915050565b600160a060020a0383166000908152600160205260408120548211156105e157506000610328565b600082118015610603575082600160a060020a031684600160a060020a031614155b156106b257600160a060020a03841660009081526001602052604090205461062b90836106bd565b600160a060020a03808616600090815260016020526040808220939093559085168152205461065a90836106d7565b600160a060020a0380851660008181526001602090815260409182902094909455805186815290519193928816927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a35b5060015b9392505050565b6000818310156106cc57610000565b508082035b92915050565b600081600019038311156106ea57610000565b508181015b9291505056

 

View All
Block Age transaction Difficulty GasUsed 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.