ETH Price: $3,278.00 (-1.57%)
Gas: 4.16 Gwei

Contract

0xaaAEBE6Fe48E54f431b0C390CfaF0b017d09D42d
 

More Info

Private Name Tags

TokenTracker

Celsius (CEL) (@$0.1932)
Transaction Hash
Method
Block
From
To
0xcb7e6072d66f6133b372c454d9944c2afd1b8a882bc385a4d78b1b7fb517e3bb Transfer(pending)2024-12-22 1:40:1929 hrs ago1734831619IN
Celsius Network: CEL Token
0 ETH(Pending)(Pending)
Transfer214636422024-12-23 7:16:598 mins ago1734938219IN
Celsius Network: CEL Token
0 ETH0.00034286.31440298
Transfer214635252024-12-23 6:53:3531 mins ago1734936815IN
Celsius Network: CEL Token
0 ETH0.000204615.5
Transfer214634912024-12-23 6:46:4738 mins ago1734936407IN
Celsius Network: CEL Token
0 ETH0.000198036.11195617
Transfer214634732024-12-23 6:43:1142 mins ago1734936191IN
Celsius Network: CEL Token
0 ETH0.000213625.74218812
Transfer214633192024-12-23 6:12:111 hr ago1734934331IN
Celsius Network: CEL Token
0 ETH0.000329666.07099315
Transfer214631512024-12-23 5:38:351 hr ago1734932315IN
Celsius Network: CEL Token
0 ETH0.000228666.14653634
Transfer214631262024-12-23 5:33:351 hr ago1734932015IN
Celsius Network: CEL Token
0 ETH0.000314855.79956973
Transfer214629682024-12-23 5:01:352 hrs ago1734930095IN
Celsius Network: CEL Token
0 ETH0.000227477.02294349
Transfer214629032024-12-23 4:48:352 hrs ago1734929315IN
Celsius Network: CEL Token
0 ETH0.000377036.94334216
Transfer214628782024-12-23 4:43:352 hrs ago1734929015IN
Celsius Network: CEL Token
0 ETH0.000289455.33164612
Transfer214627792024-12-23 4:23:353 hrs ago1734927815IN
Celsius Network: CEL Token
0 ETH0.000241876.50153667
Transfer214620722024-12-23 2:01:115 hrs ago1734919271IN
Celsius Network: CEL Token
0 ETH0.000218946.75724203
Transfer214619142024-12-23 1:29:115 hrs ago1734917351IN
Celsius Network: CEL Token
0 ETH0.000292065.37858065
Transfer214618992024-12-23 1:26:115 hrs ago1734917171IN
Celsius Network: CEL Token
0 ETH0.000209966.4800166
Transfer214618702024-12-23 1:20:236 hrs ago1734916823IN
Celsius Network: CEL Token
0 ETH0.000278347.48189744
Approve214618472024-12-23 1:15:476 hrs ago1734916547IN
Celsius Network: CEL Token
0 ETH0.000117834.88166791
Transfer214617962024-12-23 1:05:356 hrs ago1734915935IN
Celsius Network: CEL Token
0 ETH0.000297795.48402651
Transfer214615702024-12-23 0:19:597 hrs ago1734913199IN
Celsius Network: CEL Token
0 ETH0.000251396.75752659
Transfer214613522024-12-22 23:35:477 hrs ago1734910547IN
Celsius Network: CEL Token
0 ETH0.000208686.44290339
Transfer214612402024-12-22 23:13:238 hrs ago1734909203IN
Celsius Network: CEL Token
0 ETH0.000329126.06231453
Transfer214611282024-12-22 22:50:478 hrs ago1734907847IN
Celsius Network: CEL Token
0 ETH0.000229777.09150255
Transfer214611202024-12-22 22:49:118 hrs ago1734907751IN
Celsius Network: CEL Token
0 ETH0.000276935.5958499
Transfer214610492024-12-22 22:34:598 hrs ago1734906899IN
Celsius Network: CEL Token
0 ETH0.000280677.54455405
Transfer214609912024-12-22 22:23:119 hrs ago1734906191IN
Celsius Network: CEL Token
0 ETH0.000419637.72777386
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block
From
To
153083702022-08-09 13:54:00866 days ago1660053240
Celsius Network: CEL Token
0.00488276 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CelsiusToken

Compiler Version
v0.4.20+commit.3155dd80

Optimization Enabled:
Yes with 200 runs

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

pragma solidity ^0.4.16;

/*
 * Abstract Token Smart Contract.  Copyright © 2017 by ABDK Consulting.
 * Author: Mikhail Vladimirov <[email protected]>
 */
pragma solidity ^0.4.20;

/*
 * EIP-20 Standard Token Smart Contract Interface.
 * Copyright © 2016–2018 by ABDK Consulting.
 * Author: Mikhail Vladimirov <[email protected]>
 */
pragma solidity ^0.4.20;

/**
 * ERC-20 standard token interface, as defined
 * <a href="https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md">here</a>.
 */
contract Token {
  /**
   * Get total number of tokens in circulation.
   *
   * @return total number of tokens in circulation
   */
  function totalSupply () public view 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) public view returns (uint256 balance);

  /**
   * Transfer given number of tokens from message sender to given recipient.
   *
   * @param _to address to transfer tokens to 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)
  public 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)
  public 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)
  public 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)
  public view 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);
}
/*
 * Safe Math Smart Contract.  Copyright © 2016–2017 by ABDK Consulting.
 * Author: Mikhail Vladimirov <[email protected]>
 */
pragma solidity ^0.4.20;

/**
 * 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)
  pure internal
  returns (uint256 z) {
    assert (x <= MAX_UINT256 - y);
    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)
  pure internal
  returns (uint256 z) {
    assert (x >= y);
    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)
  pure internal
  returns (uint256 z) {
    if (y == 0) return 0; // Prevent division by zero at the next line
    assert (x <= MAX_UINT256 / y);
    return x * y;
  }
}


/**
 * Abstract Token Smart Contract that could be used as a base contract for
 * ERC-20 token contracts.
 */
contract AbstractToken is Token, SafeMath {
  /**
   * Create new Abstract Token contract.
   */
  function AbstractToken () public {
    // Do nothing
  }

  /**
   * 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) public view returns (uint256 balance) {
    return accounts [_owner];
  }

  /**
   * Transfer given number of tokens from message sender to given recipient.
   *
   * @param _to address to transfer tokens to 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)
  public returns (bool success) {
    uint256 fromBalance = accounts [msg.sender];
    if (fromBalance < _value) return false;
    if (_value > 0 && msg.sender != _to) {
      accounts [msg.sender] = safeSub (fromBalance, _value);
      accounts [_to] = safeAdd (accounts [_to], _value);
    }
    Transfer (msg.sender, _to, _value);
    return true;
  }

  /**
   * 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)
  public returns (bool success) {
    uint256 spenderAllowance = allowances [_from][msg.sender];
    if (spenderAllowance < _value) return false;
    uint256 fromBalance = accounts [_from];
    if (fromBalance < _value) return false;

    allowances [_from][msg.sender] =
      safeSub (spenderAllowance, _value);

    if (_value > 0 && _from != _to) {
      accounts [_from] = safeSub (fromBalance, _value);
      accounts [_to] = safeAdd (accounts [_to], _value);
    }
    Transfer (_from, _to, _value);
    return true;
  }

  /**
   * 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)
  public returns (bool success) {
    allowances [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)
  public view returns (uint256 remaining) {
    return allowances [_owner][_spender];
  }

  /**
   * Mapping from addresses of token holders to the numbers of tokens belonging
   * to these token holders.
   */
  mapping (address => uint256) internal accounts;

  /**
   * Mapping from addresses of token holders to the mapping of addresses of
   * spenders to the allowances set by these token holders to these spenders.
   */
  mapping (address => mapping (address => uint256)) internal allowances;
}


/**
 * Celsius Network token smart contract.
 */
contract CelsiusToken is AbstractToken {
  /**
   * Address of the owner of this smart contract.
   */
  address private owner;

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

  /**
   * True if tokens transfers are currently frozen, false otherwise.
   */
  bool frozen = false;

  /**
   * Create new Celsius Network token smart contract, with given number of tokens issued
   * and given to msg.sender, and make msg.sender the owner of this smart
   * contract.
   *
   * @param _tokenCount number of tokens to issue and give to msg.sender
   */
  function CelsiusToken (uint256 _tokenCount) public {
    owner = msg.sender;
    tokenCount = _tokenCount;
    accounts [msg.sender] = _tokenCount;
  }

  /**
   * Get total number of tokens in circulation.
   *
   * @return total number of tokens in circulation
   */
  function totalSupply () public view returns (uint256 supply) {
    return tokenCount;
  }

  /**
   * Get name of this token.
   *
   * @return name of this token
   */
  function name () public pure returns (string result) {
    return "Celsius";
  }

  /**
   * Get symbol of this token.
   *
   * @return symbol of this token
   */
  function symbol () public pure returns (string result) {
    return "CEL";
  }

  /**
   * Get number of decimals for this token.
   *
   * @return number of decimals for this token
   */
  function decimals () public pure returns (uint8 result) {
    return 4;
  }

  /**
   * Transfer given number of tokens from message sender to given recipient.
   *
   * @param _to address to transfer tokens to 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)
    public 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)
    public returns (bool success) {
    if (frozen) return false;
    else return AbstractToken.transferFrom (_from, _to, _value);
  }

  /**
   * Change how many tokens given spender is allowed to transfer from message
   * spender.  In order to prevent double spending of allowance, this method
   * receives assumed current allowance value as an argument.  If actual
   * allowance differs from an assumed one, this method just returns false.
   *
   * @param _spender address to allow the owner of to transfer tokens from
   *        message sender
   * @param _currentValue assumed number of tokens currently allowed to be
   *        transferred
   * @param _newValue number of tokens to allow to transfer
   * @return true if token transfer was successfully approved, false otherwise
   */
  function approve (address _spender, uint256 _currentValue, uint256 _newValue)
    public returns (bool success) {
    if (allowance (msg.sender, _spender) == _currentValue)
      return approve (_spender, _newValue);
    else return false;
  }

  /**
   * Burn given number of tokens belonging to message sender.
   *
   * @param _value number of tokens to burn
   * @return true on success, false on error
   */
  function burnTokens (uint256 _value) public returns (bool success) {
    if (_value > accounts [msg.sender]) return false;
    else if (_value > 0) {
      accounts [msg.sender] = safeSub (accounts [msg.sender], _value);
      tokenCount = safeSub (tokenCount, _value);

      Transfer (msg.sender, address (0), _value);
      return true;
    } else return true;
  }

  /**
   * Set new owner for the smart contract.
   * May only be called by smart contract owner.
   *
   * @param _newOwner address of new owner of the smart contract
   */
  function setOwner (address _newOwner) public {
    require (msg.sender == owner);

    owner = _newOwner;
  }

  /**
   * Freeze token transfers.
   * May only be called by smart contract owner.
   */
  function freezeTransfers () public {
    require (msg.sender == owner);

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

  /**
   * Unfreeze token transfers.
   * May only be called by smart contract owner.
   */
  function unfreezeTransfers () public {
    require (msg.sender == owner);

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

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

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

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[],"name":"freezeTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"result","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"supply","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":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"result","type":"uint8"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[],"name":"unfreezeTransfers","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_currentValue","type":"uint256"},{"name":"_newValue","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burnTokens","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"result","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_tokenCount","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","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"}]

60606040526004805460ff19169055341561001957600080fd5b6040516020806109ca8339810160405280805160028054600160a060020a033316600160a060020a031990911681179091556003829055600090815260208190526040902055505061095a806100706000396000f3006060604052600436106100cf5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630150246081146100d457806306fdde03146100e9578063095ea7b31461017357806313af4035146101a957806318160ddd146101c857806323b872dd146101ed578063313ce5671461021557806331c420d41461023e578063426a8493146102515780636d1b229d1461027657806370a082311461028c57806395d89b41146102ab578063a9059cbb146102be578063dd62ed3e146102e0575b600080fd5b34156100df57600080fd5b6100e7610305565b005b34156100f457600080fd5b6100fc610368565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610138578082015183820152602001610120565b50505050905090810190601f1680156101655780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561017e57600080fd5b610195600160a060020a03600435166024356103a9565b604051901515815260200160405180910390f35b34156101b457600080fd5b6100e7600160a060020a0360043516610416565b34156101d357600080fd5b6101db610460565b60405190815260200160405180910390f35b34156101f857600080fd5b610195600160a060020a0360043581169060243516604435610466565b341561022057600080fd5b610228610491565b60405160ff909116815260200160405180910390f35b341561024957600080fd5b6100e7610496565b341561025c57600080fd5b610195600160a060020a03600435166024356044356104f4565b341561028157600080fd5b610195600435610519565b341561029757600080fd5b6101db600160a060020a03600435166105e6565b34156102b657600080fd5b6100fc610601565b34156102c957600080fd5b610195600160a060020a0360043516602435610642565b34156102eb57600080fd5b6101db600160a060020a0360043581169060243516610669565b60025433600160a060020a0390811691161461032057600080fd5b60045460ff161515610366576004805460ff191660011790557f615acbaede366d76a8b8cb2a9ada6a71495f0786513d71aa97aaf0c3910b78de60405160405180910390a15b565b61037061091c565b60408051908101604052600781527f43656c73697573000000000000000000000000000000000000000000000000006020820152905090565b600160a060020a03338116600081815260016020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b60025433600160a060020a0390811691161461043157600080fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60035490565b60045460009060ff161561047c5750600061048a565b610487848484610694565b90505b9392505050565b600490565b60025433600160a060020a039081169116146104b157600080fd5b60045460ff1615610366576004805460ff191690557f2f05ba71d0df11bf5fa562a6569d70c4f80da84284badbe015ce1456063d0ded60405160405180910390a1565b6000826105013386610669565b14156105115761048784836103a9565b50600061048a565b600160a060020a033316600090815260208190526040812054821115610541575060006105e1565b60008211156105dd57600160a060020a03331660009081526020819052604090205461056d90836107fd565b600160a060020a03331660009081526020819052604090205560035461059390836107fd565b600355600033600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a35060016105e1565b5060015b919050565b600160a060020a031660009081526020819052604090205490565b61060961091c565b60408051908101604052600381527f43454c00000000000000000000000000000000000000000000000000000000006020820152905090565b60045460009060ff161561065857506000610410565b610662838361080f565b9050610410565b600160a060020a03918216600090815260016020908152604080832093909416825291909152205490565b600160a060020a0380841660009081526001602090815260408083203390941683529290529081205481838210156106cf57600092506107f4565b50600160a060020a038516600090815260208190526040902054838110156106fa57600092506107f4565b61070482856107fd565b600160a060020a0380881660009081526001602090815260408083203390941683529290529081209190915584118015610750575084600160a060020a031686600160a060020a031614155b156107a85761075f81856107fd565b600160a060020a03808816600090815260208190526040808220939093559087168152205461078e9085610906565b600160a060020a0386166000908152602081905260409020555b84600160a060020a031686600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8660405190815260200160405180910390a3600192505b50509392505050565b60008183101561080957fe5b50900390565b600160a060020a0333166000908152602081905260408120548281101561083957600091506108ff565b60008311801561085b575083600160a060020a031633600160a060020a031614155b156108b35761086a81846107fd565b600160a060020a0333811660009081526020819052604080822093909355908616815220546108999084610906565b600160a060020a0385166000908152602081905260409020555b83600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405190815260200160405180910390a3600191505b5092915050565b600060001982900383111561091757fe5b500190565b602060405190810160405260008152905600a165627a7a72305820ed8a2d97280d9fb91c377e092906a069089f9e0c5c065649490ec34da7f29de700290000000000000000000000000000000000000000000000000000065dd0837000

Deployed Bytecode

0x6060604052600436106100cf5763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630150246081146100d457806306fdde03146100e9578063095ea7b31461017357806313af4035146101a957806318160ddd146101c857806323b872dd146101ed578063313ce5671461021557806331c420d41461023e578063426a8493146102515780636d1b229d1461027657806370a082311461028c57806395d89b41146102ab578063a9059cbb146102be578063dd62ed3e146102e0575b600080fd5b34156100df57600080fd5b6100e7610305565b005b34156100f457600080fd5b6100fc610368565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610138578082015183820152602001610120565b50505050905090810190601f1680156101655780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561017e57600080fd5b610195600160a060020a03600435166024356103a9565b604051901515815260200160405180910390f35b34156101b457600080fd5b6100e7600160a060020a0360043516610416565b34156101d357600080fd5b6101db610460565b60405190815260200160405180910390f35b34156101f857600080fd5b610195600160a060020a0360043581169060243516604435610466565b341561022057600080fd5b610228610491565b60405160ff909116815260200160405180910390f35b341561024957600080fd5b6100e7610496565b341561025c57600080fd5b610195600160a060020a03600435166024356044356104f4565b341561028157600080fd5b610195600435610519565b341561029757600080fd5b6101db600160a060020a03600435166105e6565b34156102b657600080fd5b6100fc610601565b34156102c957600080fd5b610195600160a060020a0360043516602435610642565b34156102eb57600080fd5b6101db600160a060020a0360043581169060243516610669565b60025433600160a060020a0390811691161461032057600080fd5b60045460ff161515610366576004805460ff191660011790557f615acbaede366d76a8b8cb2a9ada6a71495f0786513d71aa97aaf0c3910b78de60405160405180910390a15b565b61037061091c565b60408051908101604052600781527f43656c73697573000000000000000000000000000000000000000000000000006020820152905090565b600160a060020a03338116600081815260016020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b60025433600160a060020a0390811691161461043157600080fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60035490565b60045460009060ff161561047c5750600061048a565b610487848484610694565b90505b9392505050565b600490565b60025433600160a060020a039081169116146104b157600080fd5b60045460ff1615610366576004805460ff191690557f2f05ba71d0df11bf5fa562a6569d70c4f80da84284badbe015ce1456063d0ded60405160405180910390a1565b6000826105013386610669565b14156105115761048784836103a9565b50600061048a565b600160a060020a033316600090815260208190526040812054821115610541575060006105e1565b60008211156105dd57600160a060020a03331660009081526020819052604090205461056d90836107fd565b600160a060020a03331660009081526020819052604090205560035461059390836107fd565b600355600033600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a35060016105e1565b5060015b919050565b600160a060020a031660009081526020819052604090205490565b61060961091c565b60408051908101604052600381527f43454c00000000000000000000000000000000000000000000000000000000006020820152905090565b60045460009060ff161561065857506000610410565b610662838361080f565b9050610410565b600160a060020a03918216600090815260016020908152604080832093909416825291909152205490565b600160a060020a0380841660009081526001602090815260408083203390941683529290529081205481838210156106cf57600092506107f4565b50600160a060020a038516600090815260208190526040902054838110156106fa57600092506107f4565b61070482856107fd565b600160a060020a0380881660009081526001602090815260408083203390941683529290529081209190915584118015610750575084600160a060020a031686600160a060020a031614155b156107a85761075f81856107fd565b600160a060020a03808816600090815260208190526040808220939093559087168152205461078e9085610906565b600160a060020a0386166000908152602081905260409020555b84600160a060020a031686600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8660405190815260200160405180910390a3600192505b50509392505050565b60008183101561080957fe5b50900390565b600160a060020a0333166000908152602081905260408120548281101561083957600091506108ff565b60008311801561085b575083600160a060020a031633600160a060020a031614155b156108b35761086a81846107fd565b600160a060020a0333811660009081526020819052604080822093909355908616815220546108999084610906565b600160a060020a0385166000908152602081905260409020555b83600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405190815260200160405180910390a3600191505b5092915050565b600060001982900383111561091757fe5b500190565b602060405190810160405260008152905600a165627a7a72305820ed8a2d97280d9fb91c377e092906a069089f9e0c5c065649490ec34da7f29de70029

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

0000000000000000000000000000000000000000000000000000065dd0837000

-----Decoded View---------------
Arg [0] : _tokenCount (uint256): 7000000000000

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000065dd0837000


Swarm Source

bzzr://ed8a2d97280d9fb91c377e092906a069089f9e0c5c065649490ec34da7f29de7

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.