Contract 0x8a854288a5976036a725879164ca3e91d30c6a1b

 

TxHash Block Age From To Value [TxFee]
0xcb939751305a4f4e2cb4d1774fd020c2ced583cda12a11d5c6e0e950cbe1408f741988648 mins ago0x4e53594f0ea53cd10bd2458781b8558cde578435 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.00011563
0x1f23e578274e60e90e02712c31b9a83eaefb74c0e453e80796972ff9a71a881474192173 hrs 14 mins ago0xf5af80f3929f9f0f407b610da47583c42c2019a7 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.00147392
0x91e6fa04563067dca39c7ba873bf5e3045200a7a317aa021546250eb5e40aa3d74191963 hrs 19 mins ago0xd22dc67f319605c37b4574f4770a07947efa4aa7 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.00046316
0xb0db766c1ef70d22255626557834693464c46a8467516474aed7350fe6c4796774191853 hrs 22 mins ago0xe06f0ebd1a5a743c0b56c03bd03b803763d7d034 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.00037572
0x7e1b6dd8f5393c91ca06e3ecf86786f1a99b9614db5dec1deedb193c65674f9f74186465 hrs 24 mins ago0x398e3c0dfe5347508debfcbcdba61da06f7de501 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.000370528
0x03f74f19e39ba8d5251d054b85d54e8d4f4e67c6c490c91c64c6dbb66c465d7974185135 hrs 51 mins ago0x5f7b548db78219092865e8ab4c78a57286601af3 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.000416268
0x2690a0e94105d257f53ed232568ec8d34c0b8895deb544fd0d2d870a40b6792674174539 hrs 58 mins ago0xf124291b6387e046aaae24a7a1927d159b6f3f7b IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.0000495176
0xc3c113bef1c84622845dbc00688c56b76b68d357df980a87e78354efd71d9fc5741702311 hrs 30 mins ago0xa8282a3d5c9699a3e5e8d387c8e2f51fc8110389 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.000366432
0x34a715b940a8440df3dca1fb157fcb4e5a425375e83b4b35aef7d838816c16e1741674112 hrs 35 mins agoLiquid IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.000157332
0x8218b16300cda12783be47913278e70c6cd8abf5e4ad3f2d1211c71dcade7099741674112 hrs 35 mins agoLiquid IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.00015714
0x1a861ef0cb4c1bc1931fa8f7ef9b460cf7765c4b267a3e5aa681c8f9b0a8d253741674112 hrs 35 mins agoLiquid IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.00015714
0x5a706f0769d15e1760e48c1efd4724aeda28881ee5e62bf79b72927f714ed2ec74134731 day 49 mins ago0x286466adb8000522d330d420fb883e78fc2b3897 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.0001602612
0xb9c862f8bc7f8016032bd419a577c041068643f4a75d7f5b43d42ddfb121067274133881 day 1 hr ago0x286466adb8000522d330d420fb883e78fc2b3897 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.0004038188
0xed199fe8724fb395492387c5ab3830f2b57b1b0df7b19c84048bd3871527418b74127051 day 3 hrs ago0xf124291b6387e046aaae24a7a1927d159b6f3f7b IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.00008952
0x0ece7e276881ed77708489a3596ab370870f797996cbb5b7a03dd18f5a5e25de74117631 day 7 hrs ago0xd17f52399b65115bfc6e60a2e835a53fe1bacb88 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.000138372
0x0eb48eafbc8483a6647815eb475abe0a1d703a7cebdf8d685bc6e0775101d44174110961 day 9 hrs ago0x3f544835fb0b9bd55e7a0274e1210a4a4a69b609 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.000218367
0x19dc3368eda191150f45c0a9cae32237c727f456101a17f543adb59aac69a53074110331 day 9 hrs ago0x3f544835fb0b9bd55e7a0274e1210a4a4a69b609 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.0004638
0xd052f3f8d97516e34258ee5164a7924270609d0bc0c48caf0cda1635225d15e174110071 day 10 hrs ago0x3f544835fb0b9bd55e7a0274e1210a4a4a69b609 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.00015308
0x9b6cdfde4b3c1dce5fedbccafc433a6490f6af769410ddcb0313d1c8c5fdcb9474105821 day 11 hrs ago0xa8282a3d5c9699a3e5e8d387c8e2f51fc8110389 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.000336996
0xeeb2233137110bba1b413359cefeccaf9edd1e24180b4e7971c47af2b9c37c4c74098251 day 14 hrs ago0xfc4fd122b1d8d4a75902d32ad8cec2ad75333c19 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.000158004
0xb4db9647d7544a3e0bd6bcf832f5c03ce0288db7c665d9fd42f4c59f8024cf2074096531 day 15 hrs ago0xfe64e07d60b9c5c26afe5f73c3eff46f0b0e629c IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.001540452
0xeb111a6ca681f9f3b2f37fbc592b0768ce974bd59594b7cd8e93c39e57bcc1c074075331 day 23 hrs ago0xa65ef7adb4be3b283f8592169ef29a8ea3fe3ba9 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.000209776
0x19802488e180e740c3d05ee4761912201317764483049faf40c8402a9d937ef074073501 day 23 hrs ago0x01568e342a3a0a3e97eb9ff3e9e04d30cd51da03 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.000090288
0x038bd6143394c4f39249a0844526e771ef435c21a2cb8dd3e7c351a44413960f74068382 days 1 hr ago0xeddff4e52da5ea9205b64425d7784972971cdfc4 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.00037572
0x283117b2bf9e77f822d096effbf2df50198c1864498a3020049e9ed8ff7ca7be74067792 days 1 hr ago0x3f544835fb0b9bd55e7a0274e1210a4a4a69b609 IN  0x8a854288a5976036a725879164ca3e91d30c6a1b0 Ether0.00018552
[ Download CSV Export 

Internal Transactions as a result of Contract Execution

Parent TxHash Block Age From To Value

Contract Source Code Verified (Exact Match)

Contract Name:
GetToken

Compiler Version
v0.4.15+commit.bbb8e64f

Optimization Enabled:
Yes

Runs (Optimizer):
200

Contract Source Code

pragma solidity ^0.4.11;
/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Basic {
  uint256 public totalSupply;
  function balanceOf(address who) constant returns (uint256);
  function transfer(address to, uint256 value) returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);
}
/**
 * @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;
  /**
   * @dev The Ownable constructor sets the original `owner` of the contract to the sender
   * account.
   */
  function Ownable() {
    owner = msg.sender;
  }
  /**
   * @dev Throws if called by any account other than the owner.
   */
  modifier onlyOwner() {
    require(msg.sender == owner);
    _;
  }
  /**
   * @dev Allows the current owner to transfer control of the contract to a newOwner.
   * @param newOwner The address to transfer ownership to.
   */
  function transferOwnership(address newOwner) onlyOwner {
    if (newOwner != address(0)) {
      owner = newOwner;
    }
  }
}
// Temporarily have SafeMath here until all contracts have been migrated to SafeMathLib version from OpenZeppelin
/**
 * Math operations with safety checks
 */
contract SafeMath {
  function safeMul(uint a, uint b) internal returns (uint) {
    uint c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }
  function safeDiv(uint a, uint b) internal returns (uint) {
    assert(b > 0);
    uint c = a / b;
    assert(a == b * c + a % b);
    return c;
  }
  function safeSub(uint a, uint b) internal returns (uint) {
    assert(b <= a);
    return a - b;
  }
  function safeAdd(uint a, uint b) internal returns (uint) {
    uint c = a + b;
    assert(c>=a && c>=b);
    return c;
  }
  function max64(uint64 a, uint64 b) internal constant returns (uint64) {
    return a >= b ? a : b;
  }
  function min64(uint64 a, uint64 b) internal constant returns (uint64) {
    return a < b ? a : b;
  }
  function max256(uint256 a, uint256 b) internal constant returns (uint256) {
    return a >= b ? a : b;
  }
  function min256(uint256 a, uint256 b) internal constant returns (uint256) {
    return a < b ? a : b;
  }
}
/**
 * This smart contract code is Copyright 2017 TokenMarket Ltd. For more information see https://tokenmarket.net
 *
 * Licensed under the Apache License, version 2.0: https://github.com/TokenMarketNet/ico/blob/master/LICENSE.txt
 */
/**
 * This smart contract code is Copyright 2017 TokenMarket Ltd. For more information see https://tokenmarket.net
 *
 * Licensed under the Apache License, version 2.0: https://github.com/TokenMarketNet/ico/blob/master/LICENSE.txt
 */
/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
contract ERC20 is ERC20Basic {
  function allowance(address owner, address spender) constant returns (uint256);
  function transferFrom(address from, address to, uint256 value) returns (bool);
  function approve(address spender, uint256 value) returns (bool);
  event Approval(address indexed owner, address indexed spender, uint256 value);
}
/**
 * Standard ERC20 token with Short Hand Attack and approve() race condition mitigation.
 *
 * Based on code by FirstBlood:
 * https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
 */
contract StandardToken is ERC20, SafeMath {
  /* Token supply got increased and a new owner received these tokens */
  event Minted(address receiver, uint amount);
  /* Actual balances of token holders */
  mapping(address => uint) balances;
  /* approve() allowances */
  mapping (address => mapping (address => uint)) allowed;
  /* Interface declaration */
  function isToken() public constant returns (bool weAre) {
    return true;
  }
  function transfer(address _to, uint _value) returns (bool success) {
    balances[msg.sender] = safeSub(balances[msg.sender], _value);
    balances[_to] = safeAdd(balances[_to], _value);
    Transfer(msg.sender, _to, _value);
    return true;
  }
  function transferFrom(address _from, address _to, uint _value) returns (bool success) {
    uint _allowance = allowed[_from][msg.sender];
    balances[_to] = safeAdd(balances[_to], _value);
    balances[_from] = safeSub(balances[_from], _value);
    allowed[_from][msg.sender] = safeSub(_allowance, _value);
    Transfer(_from, _to, _value);
    return true;
  }
  function balanceOf(address _owner) constant returns (uint balance) {
    return balances[_owner];
  }
  function approve(address _spender, uint _value) returns (bool success) {
    // To change the approve amount you first have to reduce the addresses`
    //  allowance to zero by calling `approve(_spender, 0)` if it is not
    //  already 0 to mitigate the race condition described here:
    //  https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
    if ((_value != 0) && (allowed[msg.sender][_spender] != 0)) throw;
    allowed[msg.sender][_spender] = _value;
    Approval(msg.sender, _spender, _value);
    return true;
  }
  function allowance(address _owner, address _spender) constant returns (uint remaining) {
    return allowed[_owner][_spender];
  }
}
/**
 * This smart contract code is Copyright 2017 TokenMarket Ltd. For more information see https://tokenmarket.net
 *
 * Licensed under the Apache License, version 2.0: https://github.com/TokenMarketNet/ico/blob/master/LICENSE.txt
 */
/**
 * This smart contract code is Copyright 2017 TokenMarket Ltd. For more information see https://tokenmarket.net
 *
 * Licensed under the Apache License, version 2.0: https://github.com/TokenMarketNet/ico/blob/master/LICENSE.txt
 */
/**
 * Upgrade agent interface inspired by Lunyr.
 *
 * Upgrade agent transfers tokens to a new contract.
 * Upgrade agent itself can be the token contract, or just a middle man contract doing the heavy lifting.
 */
contract UpgradeAgent {
  uint public originalSupply;
  /** Interface marker */
  function isUpgradeAgent() public constant returns (bool) {
    return true;
  }
  function upgradeFrom(address _from, uint256 _value) public;
}
/**
 * A token upgrade mechanism where users can opt-in amount of tokens to the next smart contract revision.
 *
 * First envisioned by Golem and Lunyr projects.
 */
contract UpgradeableToken is StandardToken {
  /** Contract / person who can set the upgrade path. This can be the same as team multisig wallet, as what it is with its default value. */
  address public upgradeMaster;
  /** The next contract where the tokens will be migrated. */
  UpgradeAgent public upgradeAgent;
  /** How many tokens we have upgraded by now. */
  uint256 public totalUpgraded;
  /**
   * Upgrade states.
   *
   * - NotAllowed: The child contract has not reached a condition where the upgrade can bgun
   * - WaitingForAgent: Token allows upgrade, but we don't have a new agent yet
   * - ReadyToUpgrade: The agent is set, but not a single token has been upgraded yet
   * - Upgrading: Upgrade agent is set and the balance holders can upgrade their tokens
   *
   */
  enum UpgradeState {Unknown, NotAllowed, WaitingForAgent, ReadyToUpgrade, Upgrading}
  /**
   * Somebody has upgraded some of his tokens.
   */
  event Upgrade(address indexed _from, address indexed _to, uint256 _value);
  /**
   * New upgrade agent available.
   */
  event UpgradeAgentSet(address agent);
  /**
   * Do not allow construction without upgrade master set.
   */
  function UpgradeableToken(address _upgradeMaster) {
    upgradeMaster = _upgradeMaster;
  }
  /**
   * Allow the token holder to upgrade some of their tokens to a new contract.
   */
  function upgrade(uint256 value) public {
      UpgradeState state = getUpgradeState();
      if(!(state == UpgradeState.ReadyToUpgrade || state == UpgradeState.Upgrading)) {
        // Called in a bad state
        throw;
      }
      // Validate input value.
      if (value == 0) throw;
      balances[msg.sender] = safeSub(balances[msg.sender], value);
      // Take tokens out from circulation
      totalSupply = safeSub(totalSupply, value);
      totalUpgraded = safeAdd(totalUpgraded, value);
      // Upgrade agent reissues the tokens
      upgradeAgent.upgradeFrom(msg.sender, value);
      Upgrade(msg.sender, upgradeAgent, value);
  }
  /**
   * Set an upgrade agent that handles
   */
  function setUpgradeAgent(address agent) external {
      if(!canUpgrade()) {
        // The token is not yet in a state that we could think upgrading
        throw;
      }
      if (agent == 0x0) throw;
      // Only a master can designate the next agent
      if (msg.sender != upgradeMaster) throw;
      // Upgrade has already begun for an agent
      if (getUpgradeState() == UpgradeState.Upgrading) throw;
      upgradeAgent = UpgradeAgent(agent);
      // Bad interface
      if(!upgradeAgent.isUpgradeAgent()) throw;
      // Make sure that token supplies match in source and target
      if (upgradeAgent.originalSupply() != totalSupply) throw;
      UpgradeAgentSet(upgradeAgent);
  }
  /**
   * Get the state of the token upgrade.
   */
  function getUpgradeState() public constant returns(UpgradeState) {
    if(!canUpgrade()) return UpgradeState.NotAllowed;
    else if(address(upgradeAgent) == 0x00) return UpgradeState.WaitingForAgent;
    else if(totalUpgraded == 0) return UpgradeState.ReadyToUpgrade;
    else return UpgradeState.Upgrading;
  }
  /**
   * Change the upgrade master.
   *
   * This allows us to set a new owner for the upgrade mechanism.
   */
  function setUpgradeMaster(address master) public {
      if (master == 0x0) throw;
      if (msg.sender != upgradeMaster) throw;
      upgradeMaster = master;
  }
  /**
   * Child contract can enable to provide the condition when the upgrade can begun.
   */
  function canUpgrade() public constant returns(bool) {
     return true;
  }
}
/**
 * This smart contract code is Copyright 2017 TokenMarket Ltd. For more information see https://tokenmarket.net
 *
 * Licensed under the Apache License, version 2.0: https://github.com/TokenMarketNet/ico/blob/master/LICENSE.txt
 */
/**
 * Define interface for releasing the token transfer after a successful crowdsale.
 */
contract ReleasableToken is ERC20, Ownable {
  /* The finalizer contract that allows unlift the transfer limits on this token */
  address public releaseAgent;
  /** A crowdsale contract can release us to the wild if ICO success. If false we are are in transfer lock up period.*/
  bool public released = false;
  /** Map of agents that are allowed to transfer tokens regardless of the lock down period. These are crowdsale contracts and possible the team multisig itself. */
  mapping (address => bool) public transferAgents;
  /**
   * Limit token transfer until the crowdsale is over.
   *
   */
  modifier canTransfer(address _sender) {
    if(!released) {
        if(!transferAgents[_sender]) {
            throw;
        }
    }
    _;
  }
  /**
   * Set the contract that can call release and make the token transferable.
   *
   * Design choice. Allow reset the release agent to fix fat finger mistakes.
   */
  function setReleaseAgent(address addr) onlyOwner inReleaseState(false) public {
    // We don't do interface check here as we might want to a normal wallet address to act as a release agent
    releaseAgent = addr;
  }
  /**
   * Owner can allow a particular address (a crowdsale contract) to transfer tokens despite the lock up period.
   */
  function setTransferAgent(address addr, bool state) onlyOwner inReleaseState(false) public {
    transferAgents[addr] = state;
  }
  /**
   * One way function to release the tokens to the wild.
   *
   * Can be called only from the release agent that is the final ICO contract. It is only called if the crowdsale has been success (first milestone reached).
   */
  function releaseTokenTransfer() public onlyReleaseAgent {
    released = true;
  }
  /** The function can be called only before or after the tokens have been releasesd */
  modifier inReleaseState(bool releaseState) {
    if(releaseState != released) {
        throw;
    }
    _;
  }
  /** The function can be called only by a whitelisted release agent. */
  modifier onlyReleaseAgent() {
    if(msg.sender != releaseAgent) {
        throw;
    }
    _;
  }
  function transfer(address _to, uint _value) canTransfer(msg.sender) returns (bool success) {
    // Call StandardToken.transfer()
   return super.transfer(_to, _value);
  }
  function transferFrom(address _from, address _to, uint _value) canTransfer(_from) returns (bool success) {
    // Call StandardToken.transferForm()
    return super.transferFrom(_from, _to, _value);
  }
}
/**
 * This smart contract code is Copyright 2017 TokenMarket Ltd. For more information see https://tokenmarket.net
 *
 * Licensed under the Apache License, version 2.0: https://github.com/TokenMarketNet/ico/blob/master/LICENSE.txt
 */
/**
 * This smart contract code is Copyright 2017 TokenMarket Ltd. For more information see https://tokenmarket.net
 *
 * Licensed under the Apache License, version 2.0: https://github.com/TokenMarketNet/ico/blob/master/LICENSE.txt
 */
/**
 * Safe unsigned safe math.
 *
 * https://blog.aragon.one/library-driven-development-in-solidity-2bebcaf88736#.750gwtwli
 *
 * Originally from https://raw.githubusercontent.com/AragonOne/zeppelin-solidity/master/contracts/SafeMathLib.sol
 *
 * Maintained here until merged to mainline zeppelin-solidity.
 *
 */
library SafeMathLib {
  function times(uint a, uint b) returns (uint) {
    uint c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }
  function minus(uint a, uint b) returns (uint) {
    assert(b <= a);
    return a - b;
  }
  function plus(uint a, uint b) returns (uint) {
    uint c = a + b;
    assert(c>=a);
    return c;
  }
}
/**
 * A token that can increase its supply by another contract.
 *
 * This allows uncapped crowdsale by dynamically increasing the supply when money pours in.
 * Only mint agents, contracts whitelisted by owner, can mint new tokens.
 *
 */
contract MintableToken is StandardToken, Ownable {
  using SafeMathLib for uint;
  bool public mintingFinished = false;
  /** List of agents that are allowed to create new tokens */
  mapping (address => bool) public mintAgents;
  event MintingAgentChanged(address addr, bool state  );
  /**
   * Create new tokens and allocate them to an address..
   *
   * Only callably by a crowdsale contract (mint agent).
   */
  function mint(address receiver, uint amount) onlyMintAgent canMint public {
    totalSupply = totalSupply.plus(amount);
    balances[receiver] = balances[receiver].plus(amount);
    // This will make the mint transaction apper in EtherScan.io
    // We can remove this after there is a standardized minting event
    Transfer(0, receiver, amount);
  }
  /**
   * Owner can allow a crowdsale contract to mint new tokens.
   */
  function setMintAgent(address addr, bool state) onlyOwner canMint public {
    mintAgents[addr] = state;
    MintingAgentChanged(addr, state);
  }
  modifier onlyMintAgent() {
    // Only crowdsale contracts are allowed to mint new tokens
    if(!mintAgents[msg.sender]) {
        throw;
    }
    _;
  }
  /** Make sure we are not done yet. */
  modifier canMint() {
    if(mintingFinished) throw;
    _;
  }
}
/**
 * A crowdsaled token.
 *
 * An ERC-20 token designed specifically for crowdsales with investor protection and further development path.
 *
 * - The token transfer() is disabled until the crowdsale is over
 * - The token contract gives an opt-in upgrade path to a new contract
 * - The same token can be part of several crowdsales through approve() mechanism
 * - The token can be capped (supply set in the constructor) or uncapped (crowdsale contract can mint new tokens)
 *
 */
contract CrowdsaleToken is ReleasableToken, MintableToken, UpgradeableToken {
  /** Name and symbol were updated. */
  event UpdatedTokenInformation(string newName, string newSymbol);
  string public name;
  string public symbol;
  uint public decimals;
  /**
   * Construct the token.
   *
   * This token must be created through a team multisig wallet, so that it is owned by that wallet.
   *
   * @param _name Token name
   * @param _symbol Token symbol - should be all caps
   * @param _initialSupply How many tokens we start with
   * @param _decimals Number of decimal places
   * @param _mintable Are new tokens created over the crowdsale or do we distribute only the initial supply? Note that when the token becomes transferable the minting always ends.
   */
  function CrowdsaleToken(string _name, string _symbol, uint _initialSupply, uint _decimals, bool _mintable)
    UpgradeableToken(msg.sender) {
    // Create any address, can be transferred
    // to team multisig via changeOwner(),
    // also remember to call setUpgradeMaster()
    owner = msg.sender;
    name = _name;
    symbol = _symbol;
    totalSupply = _initialSupply;
    decimals = _decimals;
    // Create initially all balance on the team multisig
    balances[owner] = totalSupply;
    if(totalSupply > 0) {
      Minted(owner, totalSupply);
    }
    // No more new supply allowed after the token creation
    if(!_mintable) {
      mintingFinished = true;
      if(totalSupply == 0) {
        throw; // Cannot create a token without supply and no minting
      }
    }
  }
  /**
   * When token is released to be transferable, enforce no new tokens can be created.
   */
  function releaseTokenTransfer() public onlyReleaseAgent {
    mintingFinished = true;
    super.releaseTokenTransfer();
  }
  /**
   * Allow upgrade agent functionality kick in only if the crowdsale was success.
   */
  function canUpgrade() public constant returns(bool) {
    return released && super.canUpgrade();
  }
  /**
   * Owner can update token information here.
   *
   * It is often useful to conceal the actual token association, until
   * the token operations, like central issuance or reissuance have been completed.
   *
   * This function allows the token owner to rename the token after the operations
   * have been completed and then point the audience to use the token contract.
   */
  function setTokenInformation(string _name, string _symbol) onlyOwner {
    name = _name;
    symbol = _symbol;
    UpdatedTokenInformation(name, symbol);
  }
}
/**
 * This smart contract code is Copyright 2017 TokenMarket Ltd. For more information see https://tokenmarket.net
 *
 * Licensed under the Apache License, version 2.0: https://github.com/TokenMarketNet/ico/blob/master/LICENSE.txt
 */
contract BurnableToken is StandardToken {
  address public constant BURN_ADDRESS = 0;
  /** How many tokens we burned */
  event Burned(address burner, uint burnedAmount);
  /**
   * Burn extra tokens from a balance.
   *
   */
  function burn(uint burnAmount) {
    address burner = msg.sender;
    balances[burner] = safeSub(balances[burner], burnAmount);
    totalSupply = safeSub(totalSupply, burnAmount);
    Burned(burner, burnAmount);
  }
}
contract GetToken is CrowdsaleToken, BurnableToken {
    function GetToken() CrowdsaleToken(
            "Guaranteed Entrance Token", 
            "GET", 
            0,  // We don't want to have initial supply
            18,
            true // Mintable
        )
    {}
}

Contract ABI

[{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"state","type":"bool"}],"name":"setTransferAgent","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"mintingFinished","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"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":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","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":"addr","type":"address"}],"name":"setReleaseAgent","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"receiver","type":"address"},{"name":"amount","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"burnAmount","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"mintAgents","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"state","type":"bool"}],"name":"setMintAgent","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"value","type":"uint256"}],"name":"upgrade","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"}],"name":"setTokenInformation","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"upgradeAgent","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"releaseTokenTransfer","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"upgradeMaster","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"getUpgradeState","outputs":[{"name":"","type":"uint8"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"transferAgents","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"released","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"canUpgrade","outputs":[{"name":"","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":"totalUpgraded","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"releaseAgent","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"agent","type":"address"}],"name":"setUpgradeAgent","outputs":[],"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"},{"constant":true,"inputs":[],"name":"isToken","outputs":[{"name":"weAre","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"BURN_ADDRESS","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"master","type":"address"}],"name":"setUpgradeMaster","outputs":[],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"burner","type":"address"},{"indexed":false,"name":"burnedAmount","type":"uint256"}],"name":"Burned","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newName","type":"string"},{"indexed":false,"name":"newSymbol","type":"string"}],"name":"UpdatedTokenInformation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Upgrade","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"agent","type":"address"}],"name":"UpgradeAgentSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"addr","type":"address"},{"indexed":false,"name":"state","type":"bool"}],"name":"MintingAgentChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"receiver","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Minted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]

Contract Creation Code

60606040526004805460a060020a60ff02191690556006805460ff1916905534156200002a57600080fd5b5b604080519081016040908152601982527f47756172616e7465656420456e7472616e636520546f6b656e0000000000000060208301528051908101604052600381527f474554000000000000000000000000000000000000000000000000000000000060208201526000601260015b335b5b60038054600160a060020a03191633600160a060020a03161790555b60088054600160a060020a031916600160a060020a0383161790555b5060038054600160a060020a03191633600160a060020a0316179055600b85805162000106929160200190620001cf565b50600c8480516200011c929160200190620001cf565b506000838155600d839055600354600160a060020a031681526001602052604081208490558311156200019d576003546000547f30385c845b448a36257a6a1716e6ad2e1bc2cbe333cde1e69fe849ad6511adfe91600160a060020a031690604051600160a060020a03909216825260208201526040908101905180910390a15b801515620001c1576006805460ff191660011790556000541515620001c157600080fd5b5b5b50505050505b62000279565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200021257805160ff191683800117855562000242565b8280016001018555821562000242579182015b828111156200024257825182559160200191906001019062000225565b5b506200025192915062000255565b5090565b6200027691905b808211156200025157600081556001016200025c565b5090565b90565b61181080620002896000396000f300606060405236156101855763ffffffff60e060020a60003504166302f652a3811461018a57806305d2035b146101b057806306fdde03146101d7578063095ea7b31461026257806318160ddd1461029857806323b872dd146102bd57806329ff4f53146102f9578063313ce5671461031a57806340c10f191461033f57806342966c681461036357806342c1867b1461037b57806343214675146103ae57806345977d03146103d45780634eee966f146103ec5780635de4ccb0146104815780635f412d4f146104b0578063600440cb146104c557806370a08231146104f45780638444b39114610525578063867c28571461055c5780638da5cb5b1461058f57806395d89b41146105be57806396132521146106495780639738968c14610670578063a9059cbb14610697578063c752ff62146106cd578063d1f276d3146106f2578063d7e7088a14610721578063dd62ed3e14610742578063eefa597b14610779578063f2fde38b146107a0578063fccc2813146107c1578063ffeb7d75146107f0575b600080fd5b341561019557600080fd5b6101ae600160a060020a03600435166024351515610811565b005b34156101bb57600080fd5b6101c3610872565b604051901515815260200160405180910390f35b34156101e257600080fd5b6101ea61087b565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102275780820151818401525b60200161020e565b50505050905090810190601f1680156102545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561026d57600080fd5b6101c3600160a060020a0360043516602435610919565b604051901515815260200160405180910390f35b34156102a357600080fd5b6102ab6109c2565b60405190815260200160405180910390f35b34156102c857600080fd5b6101c3600160a060020a03600435811690602435166044356109c8565b604051901515815260200160405180910390f35b341561030457600080fd5b6101ae600160a060020a0360043516610a1f565b005b341561032557600080fd5b6102ab610a83565b60405190815260200160405180910390f35b341561034a57600080fd5b6101ae600160a060020a0360043516602435610a89565b005b341561036e57600080fd5b6101ae600435610c2b565b005b341561038657600080fd5b6101c3600160a060020a0360043516610cc2565b604051901515815260200160405180910390f35b34156103b957600080fd5b6101ae600160a060020a03600435166024351515610cd7565b005b34156103df57600080fd5b6101ae600435610d76565b005b34156103f757600080fd5b6101ae60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650610ed095505050505050565b005b341561048c57600080fd5b610494611040565b604051600160a060020a03909116815260200160405180910390f35b34156104bb57600080fd5b6101ae61104f565b005b34156104d057600080fd5b610494611083565b604051600160a060020a03909116815260200160405180910390f35b34156104ff57600080fd5b6102ab600160a060020a0360043516611092565b60405190815260200160405180910390f35b341561053057600080fd5b6105386110b1565b6040518082600481111561054857fe5b60ff16815260200191505060405180910390f35b341561056757600080fd5b6101c3600160a060020a03600435166110fe565b604051901515815260200160405180910390f35b341561059a57600080fd5b610494611113565b604051600160a060020a03909116815260200160405180910390f35b34156105c957600080fd5b6101ea611122565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102275780820151818401525b60200161020e565b50505050905090810190601f1680156102545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561065457600080fd5b6101c36111c0565b604051901515815260200160405180910390f35b341561067b57600080fd5b6101c36111d0565b604051901515815260200160405180910390f35b34156106a257600080fd5b6101c3600160a060020a03600435166024356111f6565b604051901515815260200160405180910390f35b34156106d857600080fd5b6102ab61124b565b60405190815260200160405180910390f35b34156106fd57600080fd5b610494611251565b604051600160a060020a03909116815260200160405180910390f35b341561072c57600080fd5b6101ae600160a060020a0360043516611260565b005b341561074d57600080fd5b6102ab600160a060020a0360043581169060243516611419565b60405190815260200160405180910390f35b341561078457600080fd5b6101c3611446565b604051901515815260200160405180910390f35b34156107ab57600080fd5b6101ae600160a060020a036004351661144c565b005b34156107cc57600080fd5b6104946114a4565b604051600160a060020a03909116815260200160405180910390f35b34156107fb57600080fd5b6101ae600160a060020a03600435166114a9565b005b60035433600160a060020a0390811691161461082c57600080fd5b60045460009060a060020a900460ff161561084657600080fd5b600160a060020a0383166000908152600560205260409020805460ff19168315151790555b5b505b5050565b60065460ff1681565b600b8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109115780601f106108e657610100808354040283529160200191610911565b820191906000526020600020905b8154815290600101906020018083116108f457829003601f168201915b505050505081565b6000811580159061094e5750600160a060020a0333811660009081526002602090815260408083209387168352929052205415155b1561095857600080fd5b600160a060020a03338116600081815260026020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b60005481565b600454600090849060a060020a900460ff161515610a0757600160a060020a03811660009081526005602052604090205460ff161515610a0757600080fd5b5b610a13858585611505565b91505b5b509392505050565b60035433600160a060020a03908116911614610a3a57600080fd5b60045460009060a060020a900460ff1615610a5457600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384161790555b5b505b50565b600d5481565b600160a060020a03331660009081526007602052604090205460ff161515610ab057600080fd5b60065460ff1615610ac057600080fd5b60005473bd9fb53b9491790c2f7157151f10017a958724e16366098d4f90918360006040516020015260405160e060020a63ffffffff85160281526004810192909252602482015260440160206040518083038186803b1515610b2257600080fd5b6102c65a03f41515610b3357600080fd5b50505060405180516000908155600160a060020a0384168152600160205260408082205473bd9fb53b9491790c2f7157151f10017a958724e193506366098d4f929091859190516020015260405160e060020a63ffffffff85160281526004810192909252602482015260440160206040518083038186803b1515610bb757600080fd5b6102c65a03f41515610bc857600080fd5b5050506040518051600160a060020a03841660008181526001602052604080822093909355909250907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35b5b5b5050565b33600160a060020a038116600090815260016020526040902054610c4f9083611608565b600160a060020a03821660009081526001602052604081209190915554610c769083611608565b6000557f696de425f79f4a40bc6d2122ca50507f0efbeabbff86a84871b7196ab8ea8df78183604051600160a060020a03909216825260208201526040908101905180910390a15b5050565b60076020526000908152604090205460ff1681565b60035433600160a060020a03908116911614610cf257600080fd5b60065460ff1615610d0257600080fd5b600160a060020a03821660009081526007602052604090819020805460ff19168315151790557f4b0adf6c802794c7dde28a08a4e07131abcff3bf9603cd71f14f90bec7865efa908390839051600160a060020a039092168252151560208201526040908101905180910390a15b5b5b5050565b6000610d806110b1565b905060035b816004811115610d9157fe5b1480610da9575060045b816004811115610da757fe5b145b1515610db457600080fd5b811515610dc057600080fd5b600160a060020a033316600090815260016020526040902054610de39083611608565b600160a060020a03331660009081526001602052604081209190915554610e0a9083611608565b600055600a54610e1a908361161f565b600a55600954600160a060020a031663753e88e5338460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515610e7357600080fd5b6102c65a03f11515610e8457600080fd5b5050600954600160a060020a03908116915033167f7e5c344a8141a805725cb476f76c6953b842222b967edd1f78ddb6e8b3f397ac8460405190815260200160405180910390a35b5050565b60035433600160a060020a03908116911614610eeb57600080fd5b600b828051610efe929160200190611744565b50600c818051610f12929160200190611744565b507fd131ab1e6f279deea74e13a18477e13e2107deb6dc8ae955648948be5841fb46600b600c604051604080825283546002600019610100600184161502019091160490820181905281906020820190606083019086908015610fb65780601f10610f8b57610100808354040283529160200191610fb6565b820191906000526020600020905b815481529060010190602001808311610f9957829003601f168201915b505083810382528454600260001961010060018416150201909116048082526020909101908590801561102a5780601f10610fff5761010080835404028352916020019161102a565b820191906000526020600020905b81548152906001019060200180831161100d57829003601f168201915b505094505050505060405180910390a15b5b5050565b600954600160a060020a031681565b60045433600160a060020a0390811691161461106a57600080fd5b6006805460ff1916600117905561107f611647565b5b5b565b600854600160a060020a031681565b600160a060020a0381166000908152600160205260409020545b919050565b60006110bb6111d0565b15156110c9575060016110f8565b600954600160a060020a031615156110e3575060026110f8565b600a5415156110f4575060036110f8565b5060045b5b5b5b90565b60056020526000908152604090205460ff1681565b600354600160a060020a031681565b600c8054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109115780601f106108e657610100808354040283529160200191610911565b820191906000526020600020905b8154815290600101906020018083116108f457829003601f168201915b505050505081565b60045460a060020a900460ff1681565b60045460009060a060020a900460ff1680156111ef57506111ef611446565b5b90505b90565b600454600090339060a060020a900460ff16151561123557600160a060020a03811660009081526005602052604090205460ff16151561123557600080fd5b5b6112408484611690565b91505b5b5092915050565b600a5481565b600454600160a060020a031681565b6112686111d0565b151561127357600080fd5b600160a060020a038116151561128857600080fd5b60085433600160a060020a039081169116146112a357600080fd5b60045b6112ae6110b1565b60048111156112b957fe5b14156112c457600080fd5b6009805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038381169190911791829055166361d3d7a66000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561132f57600080fd5b6102c65a03f1151561134057600080fd5b50505060405180519050151561135557600080fd5b600080546009549091600160a060020a0390911690634b2ba0dd90604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156113a557600080fd5b6102c65a03f115156113b657600080fd5b505050604051805190501415156113cc57600080fd5b6009547f7845d5aa74cc410e35571258d954f23b82276e160fe8c188fa80566580f279cc90600160a060020a0316604051600160a060020a03909116815260200160405180910390a15b50565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b60015b90565b60035433600160a060020a0390811691161461146757600080fd5b600160a060020a03811615610a80576003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b5b50565b600081565b600160a060020a03811615156114be57600080fd5b60085433600160a060020a039081169116146114d957600080fd5b6008805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b600160a060020a038084166000908152600260209081526040808320338516845282528083205493861683526001909152812054909190611546908461161f565b600160a060020a0380861660009081526001602052604080822093909355908716815220546115759084611608565b600160a060020a0386166000908152600160205260409020556115988184611608565b600160a060020a03808716600081815260026020908152604080832033861684529091529081902093909355908616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a3600191505b509392505050565b60008282111561161457fe5b508082035b92915050565b60008282018381108015906116345750828110155b151561163c57fe5b8091505b5092915050565b60045433600160a060020a0390811691161461166257600080fd5b6004805474ff0000000000000000000000000000000000000000191660a060020a1790555b5b565b60015b90565b600160a060020a0333166000908152600160205260408120546116b39083611608565b600160a060020a0333811660009081526001602052604080822093909355908516815220546116e2908361161f565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061178557805160ff19168380011785556117b2565b828001600101855582156117b2579182015b828111156117b2578251825591602001919060010190611797565b5b506117bf9291506117c3565b5090565b6110f891905b808211156117bf57600081556001016117c9565b5090565b905600a165627a7a723058208e323855814b06212689f0f94a8bb10acf86c387d07056191c974246d60987200029

Swarm Source

bzzr://8e323855814b06212689f0f94a8bb10acf86c387d07056191c974246d6098720
Block Age Transaction Difficulty GasUsed Reward
Block Age Uncle Number Difficulty GasUsed Reward
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.