ETH Price: $3,270.94 (+0.76%)
Gas: 1 Gwei

Token

Notary Platform Token (NTRY)
 

Overview

Max Total Supply

150,000,000 NTRY

Holders

448

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
1,583 NTRY

Value
$0.00
0x4a2dccbc65ba28796af0a15dd11424c14153d2d1
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
CentrallyIssuedToken

Compiler Version
v0.4.11+commit.68ef5810

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2017-07-03
*/

/**
 *  NTRY Cointract contract, ERC20 compliant (see https://github.com/ethereum/EIPs/issues/20)
 *
 *  Code is based on multiple sources:
 *  https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts
 *  https://github.com/TokenMarketNet/ico/blob/master/contracts
 *  https://github.com/ConsenSys/Tokens/blob/master/Token_Contracts/contracts
 */
pragma solidity ^0.4.11;

/**
 * Centrally issued Ethereum token.
 *
 * We mix in burnable and upgradeable traits.
 *
 * Token supply is created in the token contract creation and allocated to owner.
 * The owner can then transfer from its supply to crowdsale participants.
 * The owner, or anybody, can burn any excessive tokens they are holding.
 *
 */

/**
 *  NTRY Cointract contract, ERC20 compliant (see https://github.com/ethereum/EIPs/issues/20)
 *
 *  Code is based on multiple sources:
 *  https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts
 *  https://github.com/TokenMarketNet/ico/blob/master/contracts
 *  https://github.com/ConsenSys/Tokens/blob/master/Token_Contracts/contracts
 */


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


/**
 *  NTRY Cointract contract, ERC20 compliant (see https://github.com/ethereum/EIPs/issues/20)
 *
 *  Code is based on multiple sources:
 *  https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts
 *  https://github.com/TokenMarketNet/ico/blob/master/contracts
 *  https://github.com/ConsenSys/Tokens/blob/master/Token_Contracts/contracts
 */


/**
 * @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 success);
  function approve(address spender, uint256 value) returns (bool success);
  event Approval(address indexed owner, address indexed spender, uint256 value);
}


/**
 *  NTRY Cointract contract, ERC20 compliant (see https://github.com/ethereum/EIPs/issues/20)
 *
 *  Code is based on multiple sources:
 *  https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts
 *  https://github.com/TokenMarketNet/ico/blob/master/contracts
 *  https://github.com/ConsenSys/Tokens/blob/master/Token_Contracts/contracts
 */

contract ErrorHandler {
    bool public isInTestMode = false;
    event evRecord(address msg_sender, uint msg_value, string message);

    function doThrow(string message) internal {
        evRecord(msg.sender, msg.value, message);
        if (!isInTestMode) {
        	throw;
		}
    }
}

/**
 *  NTRY Cointract contract, ERC20 compliant (see https://github.com/ethereum/EIPs/issues/20)
 *
 *  Code is based on multiple sources:
 *  https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts
 *  https://github.com/TokenMarketNet/ico/blob/master/contracts
 *  https://github.com/ConsenSys/Tokens/blob/master/Token_Contracts/contracts
 */

/**
 * Math operations with safety checks
 */
library SafeMath {
  function mul(uint256 a, uint256 b) internal returns (uint256) {
    uint256 c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }

  function div(uint256 a, uint256 b) internal returns (uint256) {
    // assert(b > 0); // Solidity automatically throws when dividing by 0
    uint256 c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold
    return c;
  }

  function sub(uint256 a, uint256 b) internal returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  function add(uint256 a, uint256 b) internal returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    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;
  }

}


/**
 *  NTRY Cointract contract, ERC20 compliant (see https://github.com/ethereum/EIPs/issues/20)
 *
 *  Code is based on multiple sources:
 *  https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts
 *  https://github.com/TokenMarketNet/ico/blob/master/contracts
 *  https://github.com/ConsenSys/Tokens/blob/master/Token_Contracts/contracts
 */


/**
 * 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 NTRYStandardToken is ERC20, ErrorHandler {
  address public owner;

  /* NTRY functional is paused if there is any emergency */
  bool public emergency = false;

  using SafeMath for uint;

  /* Actual balances of token holders */
  mapping(address => uint) balances;

  /* approve() allowances */
  mapping (address => mapping (address => uint)) allowed;
  
  /* freezeAccount() frozen() */
  mapping (address => bool) frozenAccount;

  /* Notify account frozen activity */
  event FrozenFunds(address target, bool frozen);

  /* Interface declaration */
  function isToken() public constant returns (bool weAre) {
    return true;
  }

  /**
   * @dev Throws if called by any account other than the owner. 
   */
  modifier onlyOwner() {
    if (msg.sender != owner) {
      doThrow("Only Owner!");
    }
    _;
  }

  /**
   * Fix for the ERC20 short address attack
   *
   * http://vessenes.com/the-erc20-short-address-attack-explained/
   */
  modifier onlyPayloadSize(uint size) {
     if(msg.data.length < size + 4) {
       doThrow("Short address attack!");
     }
     _;
  }

  modifier stopInEmergency {
    if (emergency){
        doThrow("Emergency state!");
    }
    _;
  }
  
  function transfer(address _to, uint _value) stopInEmergency onlyPayloadSize(2 * 32) returns (bool success) {
    // Check if frozen //
    if (frozenAccount[msg.sender]) doThrow("Account freezed!");  
                  
    balances[msg.sender] = balances[msg.sender].sub( _value);
    balances[_to] = balances[_to].add(_value);
    Transfer(msg.sender, _to, _value);
    return true;
  }

  function transferFrom(address _from, address _to, uint _value) stopInEmergency returns (bool success) {
    // Check if frozen //
    if (frozenAccount[_from]) doThrow("Account freezed!");

    uint _allowance = allowed[_from][msg.sender];

    balances[_to] = balances[_to].add(_value);
    balances[_from] = balances[_from].sub(_value);
    allowed[_from][msg.sender] = _allowance.sub(_value);
    Transfer(_from, _to, _value);
    return true;
  }

  function balanceOf(address _owner) constant returns (uint balance) {
    return balances[_owner];
  }

  function approve(address _spender, uint _value) stopInEmergency 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)) doThrow("Allowance race condition!");

    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];
  }


  /**
  * It is called Circuit Breakers (Pause contract functionality), it stop execution if certain conditions are met, 
  * and can be useful when new errors are discovered. For example, most actions may be suspended in a contract if a 
  * bug is discovered, so the most feasible option to stop and updated migration message about launching an updated version of contract. 
  * @param _stop Switch the circuite breaker on or off
  */
  function emergencyStop(bool _stop) onlyOwner {
      emergency = _stop;
  }

  /**
  * Owner can set any account into freeze state. It is helpful in case if account holder has 
  * lost his key and he want administrator to freeze account until account key is recovered
  * @param target The account address
  * @param freeze The state of account
  */
  function freezeAccount(address target, bool freeze) onlyOwner {
      frozenAccount[target] = freeze;
      FrozenFunds(target, freeze);
  }

  function frozen(address _target) constant returns (bool frozen) {
    return frozenAccount[_target];
  }

  /**
   * @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)) {
      balances[newOwner] = balances[owner];
      balances[owner] = 0;
      owner = newOwner;
      Transfer(owner, newOwner,balances[newOwner]);
    }
  }

}


/**
 *  NTRY Cointract contract, ERC20 compliant (see https://github.com/ethereum/EIPs/issues/20)
 *
 *  Code is based on multiple sources:
 *  https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts
 *  https://github.com/TokenMarketNet/ico/blob/master/contracts
 *  https://github.com/ConsenSys/Tokens/blob/master/Token_Contracts/contracts
 */

/**
 * 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;

}


/**
 *  NTRY Cointract contract, ERC20 compliant (see https://github.com/ethereum/EIPs/issues/20)
 *
 *  Code is based on multiple sources:
 *  https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts
 *  https://github.com/TokenMarketNet/ico/blob/master/contracts
 *  https://github.com/ConsenSys/Tokens/blob/master/Token_Contracts/contracts
 */


/**
 * 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 NTRYStandardToken {

  /** 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)) {
        doThrow("Called in a bad state!");
      }

      // Validate input value.
      if (value == 0) doThrow("Value to upgrade is zero!");

      balances[msg.sender] = balances[msg.sender].sub(value);

      // Take tokens out from circulation
      totalSupply = totalSupply.sub(value);
      totalUpgraded = totalUpgraded.add(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
        doThrow("Token state is not feasible for upgrading yet!");
      }

      if (agent == 0x0) doThrow("Invalid address!");
      // Only a master can designate the next agent
      if (msg.sender != upgradeMaster) doThrow("Only upgrade master!");
      // Upgrade has already begun for an agent
      if (getUpgradeState() == UpgradeState.Upgrading) doThrow("Upgrade started already!");

      upgradeAgent = UpgradeAgent(agent);

      // Bad interface
      if(!upgradeAgent.isUpgradeAgent()) doThrow("Bad interface!");
      // Make sure that token supplies match in source and target
      if (upgradeAgent.originalSupply() != totalSupply) doThrow("Total supply source is not equall to target!");

      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) doThrow("Invalid address of upgrade master!");
      if (msg.sender != upgradeMaster) doThrow("Only upgrade master!");
      upgradeMaster = master;
  }

  /**
   * Child contract can enable to provide the condition when the upgrade can begun.
   */
  function canUpgrade() public constant returns(bool) {
     return true;
  }

}

/**
 *  NTRY Cointract contract, ERC20 compliant (see https://github.com/ethereum/EIPs/issues/20)
 *
 *  Code is based on multiple sources:
 *  https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts
 *  https://github.com/TokenMarketNet/ico/blob/master/contracts
 *  https://github.com/ConsenSys/Tokens/blob/master/Token_Contracts/contracts
 */


contract BurnableToken is NTRYStandardToken {

  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] = balances[burner].sub(burnAmount);
    totalSupply = totalSupply.sub(burnAmount);
    Burned(burner, burnAmount);
  }
}


contract CentrallyIssuedToken is BurnableToken, UpgradeableToken {

  string public name;
  string public symbol;
  uint public decimals;

  function CentrallyIssuedToken() UpgradeableToken(owner) {
    name = "Notary Platform Token";
    symbol = "NTRY";
    decimals = 18;
    owner = 0x1538EF80213cde339A333Ee420a85c21905b1b2D;

    totalSupply = 150000000 * 1 ether;
    
    // Allocate initial balance to the owner //
    balances[owner] = 150000000 * 1 ether;

    // Freeze notary team funds for one year (One month with pre ico already passed)//
    unlockedAt =  now + 330 * 1 days;
  }

  uint256 public constant teamAllocations = 15000000 * 1 ether;
  uint256 public unlockedAt;
  mapping (address => uint256) allocations;
  function allocate() public {
      allocations[0xab1cb1740344A9280dC502F3B8545248Dc3045eA] = 2500000 * 1 ether;
      allocations[0x330709A59Ab2D1E1105683F92c1EE8143955a357] = 2500000 * 1 ether;
      allocations[0xAa0887fc6e8896C4A80Ca3368CFd56D203dB39db] = 2500000 * 1 ether;
      allocations[0x1fbA1d22435DD3E7Fa5ba4b449CC550a933E72b3] = 2500000 * 1 ether;
      allocations[0xC9d5E2c7e40373ae576a38cD7e62E223C95aBFD4] = 500000 * 1 ether;
      allocations[0xabc0B64a38DE4b767313268F0db54F4cf8816D9C] = 500000 * 1 ether;
      allocations[0x5d85bCDe5060C5Bd00DBeDF5E07F43CE3Ccade6f] = 250000 * 1 ether;
      allocations[0xecb1b0231CBC0B04015F9e5132C62465C128B578] = 250000 * 1 ether;
      allocations[0xF9b1Cfc7fe3B63bEDc594AD20132CB06c18FD5F2] = 250000 * 1 ether;
      allocations[0xDbb89a87d9f91EA3f0Ab035a67E3A951A05d0130] = 250000 * 1 ether;
      allocations[0xC1530645E21D27AB4b567Bac348721eE3E244Cbd] = 200000 * 1 ether;
      allocations[0xcfb44162030e6CBca88e65DffA21911e97ce8533] = 200000 * 1 ether;
      allocations[0x64f748a5C5e504DbDf61d49282d6202Bc1311c3E] = 200000 * 1 ether;
      allocations[0xFF22FA2B3e5E21817b02a45Ba693B7aC01485a9C] = 200000 * 1 ether;
      allocations[0xC9856112DCb8eE449B83604438611EdCf61408AF] = 200000 * 1 ether;
      allocations[0x689CCfEABD99081D061aE070b1DA5E1f6e4B9fB2] = 2000000 * 1 ether;
  }

  function withDraw() public {
      if(now < unlockedAt){ 
          doThrow("Allocations are freezed!");
      }
      if (allocations[msg.sender] == 0){
          doThrow("No allocation found!");
      }
      balances[owner] -= allocations[msg.sender];
      balances[msg.sender] += allocations[msg.sender];
      Transfer(owner, msg.sender, allocations[msg.sender]);
      allocations[msg.sender] = 0;
      
  }
  
   function () {
        //if ether is sent to this address, send it back.
        throw;
    }
  
}

Contract Security Audit

Contract ABI

[{"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":false,"inputs":[{"name":"_stop","type":"bool"}],"name":"emergencyStop","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"withDraw","outputs":[],"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":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"burnAmount","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"value","type":"uint256"}],"name":"upgrade","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"upgradeAgent","outputs":[{"name":"","type":"address"}],"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":"teamAllocations","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"unlockedAt","outputs":[{"name":"","type":"uint256"}],"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":"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":false,"inputs":[],"name":"allocate","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"isInTestMode","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalUpgraded","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"emergency","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_target","type":"address"}],"name":"frozen","outputs":[{"name":"frozen","type":"bool"}],"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":false,"inputs":[{"name":"target","type":"address"},{"name":"freeze","type":"bool"}],"name":"freezeAccount","outputs":[],"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"},{"payable":false,"type":"fallback"},{"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":"burner","type":"address"},{"indexed":false,"name":"burnedAmount","type":"uint256"}],"name":"Burned","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"target","type":"address"},{"indexed":false,"name":"frozen","type":"bool"}],"name":"FrozenFunds","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"msg_sender","type":"address"},{"indexed":false,"name":"msg_value","type":"uint256"},{"indexed":false,"name":"message","type":"string"}],"name":"evRecord","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"}]

60606040526001805460ff60a860020a60ff02011916905534156200002057fe5b5b6001546101009004600160a060020a03165b60058054600160a060020a031916600160a060020a0383161790555b506040805180820190915260158082527f4e6f7461727920506c6174666f726d20546f6b656e0000000000000000000000602090920191825262000096916008916200014d565b506040805180820190915260048082527f4e545259000000000000000000000000000000000000000000000000000000006020909201918252620000dd916009916200014d565b506012600a5560018054741538ef80213cde339a333ee420a85c21905b1b2d0061010060a860020a031990911617908190556a7c13bc4b2c133c560000006000818155610100909204600160a060020a0316825260026020526040909120556301b30f004201600b555b620001f7565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200019057805160ff1916838001178555620001c0565b82800160010185558215620001c0579182015b82811115620001c0578251825591602001919060010190620001a3565b5b50620001cf929150620001d3565b5090565b620001f491905b80821115620001cf5760008155600101620001da565b5090565b90565b611c7480620002076000396000f300606060405236156101885763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461019e578063095ea7b31461022e5780630ac62e02146102615780630fdb1c101461027857806318160ddd1461028a57806323b872dd146102ac578063313ce567146102e557806342966c681461030757806345977d031461031c5780635de4ccb014610331578063600440cb1461035d57806370a08231146103895780638444b391146103b757806386b8f0a2146103eb5780638cb1e9c11461040d5780638da5cb5b1461042f57806395d89b411461045b5780639738968c146104eb578063a9059cbb1461050f578063abaa991614610542578063b656e9f414610554578063c752ff6214610578578063caa6fea41461059a578063d0516650146105be578063d7e7088a146105ee578063dd62ed3e1461060c578063e724529c14610640578063eefa597b146104eb578063f2fde38b14610687578063fccc2813146106a5578063ffeb7d75146106d1575b341561019057fe5b61019c5b60006000fd5b565b005b34156101a657fe5b6101ae6106ef565b6040805160208082528351818301528351919283929083019185019080838382156101f4575b8051825260208311156101f457601f1990920191602091820191016101d4565b505050905090810190601f1680156102205780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561023657fe5b61024d600160a060020a036004351660243561077d565b604080519115158252519081900360200190f35b341561026957fe5b61019c60043515156108b2565b005b341561028057fe5b61019c61093b565b005b341561029257fe5b61029a610a7e565b60408051918252519081900360200190f35b34156102b457fe5b61024d600160a060020a0360043581169060243516604435610a84565b604080519115158252519081900360200190f35b34156102ed57fe5b61029a610c3e565b60408051918252519081900360200190f35b341561030f57fe5b61019c600435610c44565b005b341561032457fe5b61019c600435610ce1565b005b341561033957fe5b610341610ed7565b60408051600160a060020a039092168252519081900360200190f35b341561036557fe5b610341610ee6565b60408051600160a060020a039092168252519081900360200190f35b341561039157fe5b61029a600160a060020a0360043516610ef5565b60408051918252519081900360200190f35b34156103bf57fe5b6103c7610f14565b604051808260048111156103d757fe5b60ff16815260200191505060405180910390f35b34156103f357fe5b61029a610f61565b60408051918252519081900360200190f35b341561041557fe5b61029a610f70565b60408051918252519081900360200190f35b341561043757fe5b610341610f76565b60408051600160a060020a039092168252519081900360200190f35b341561046357fe5b6101ae610f8a565b6040805160208082528351818301528351919283929083019185019080838382156101f4575b8051825260208311156101f457601f1990920191602091820191016101d4565b505050905090810190601f1680156102205780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156104f357fe5b61024d611018565b604080519115158252519081900360200190f35b341561051757fe5b61024d600160a060020a036004351660243561101e565b604080519115158252519081900360200190f35b341561054a57fe5b61019c6111d1565b005b341561055c57fe5b61024d611460565b604080519115158252519081900360200190f35b341561058057fe5b61029a611469565b60408051918252519081900360200190f35b34156105a257fe5b61024d61146f565b604080519115158252519081900360200190f35b34156105c657fe5b61024d600160a060020a036004351661147f565b604080519115158252519081900360200190f35b34156105f657fe5b61019c600160a060020a03600435166114a1565b005b341561061457fe5b61029a600160a060020a0360043581169060243516611826565b60408051918252519081900360200190f35b341561064857fe5b61019c600160a060020a03600435166024351515611853565b005b34156104f357fe5b61024d611018565b604080519115158252519081900360200190f35b341561068f57fe5b61019c600160a060020a036004351661191a565b005b34156106ad57fe5b610341611a1c565b60408051600160a060020a039092168252519081900360200190f35b34156106d957fe5b61019c600160a060020a0360043516611a21565b005b6008805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156107755780601f1061074a57610100808354040283529160200191610775565b820191906000526020600020905b81548152906001019060200180831161075857829003601f168201915b505050505081565b60015460009060a860020a900460ff16156107d1576107d1604060405190810160405280601081526020017f456d657267656e63792073746174652100000000000000000000000000000000815250611b19565b5b81158015906108055750600160a060020a0333811660009081526003602090815260408083209387168352929052205415155b1561084957610849604060405190810160405280601981526020017f416c6c6f77616e6365207261636520636f6e646974696f6e2100000000000000815250611b19565b5b600160a060020a03338116600081815260036020908152604080832094881680845294825291829020869055815186815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a35060015b5b92915050565b60015433600160a060020a03908116610100909204161461090c5761090c604060405190810160405280600b81526020017f4f6e6c79204f776e657221000000000000000000000000000000000000000000815250611b19565b5b6001805475ff000000000000000000000000000000000000000000191660a860020a831515021790555b5b50565b600b5442101561098457610984604060405190810160405280601881526020017f416c6c6f636174696f6e732061726520667265657a6564210000000000000000815250611b19565b5b600160a060020a0333166000908152600c602052604090205415156109e3576109e3604060405190810160405280601481526020017f4e6f20616c6c6f636174696f6e20666f756e6421000000000000000000000000815250611b19565b5b600160a060020a033381166000818152600c60208181526040808420805460018054610100908190048a1688526002865284882080549390930390925587875282549684902080549097019096559454938352548151908152905194959390920490921692600080516020611c29833981519152929181900390910190a3600160a060020a0333166000908152600c60205260408120555b565b60005481565b600154600090819060a860020a900460ff1615610ada57610ada604060405190810160405280601081526020017f456d657267656e63792073746174652100000000000000000000000000000000815250611b19565b5b600160a060020a03851660009081526004602052604090205460ff1615610b3b57610b3b604060405190810160405280601081526020017f4163636f756e7420667265657a65642100000000000000000000000000000000815250611b19565b5b50600160a060020a038085166000908152600360209081526040808320338516845282528083205493871683526002909152902054610b81908463ffffffff611bf716565b600160a060020a038086166000908152600260205260408082209390935590871681522054610bb6908463ffffffff611c1116565b600160a060020a038616600090815260026020526040902055610bdf818463ffffffff611c1116565b600160a060020a03808716600081815260036020908152604080832033861684528252918290209490945580518781529051928816939192600080516020611c29833981519152929181900390910190a3600191505b5b509392505050565b600a5481565b33600160a060020a038116600090815260026020526040902054610c689083611c11565b600160a060020a03821660009081526002602052604081209190915554610c95908363ffffffff611c1116565b60005560408051600160a060020a03831681526020810184905281517f696de425f79f4a40bc6d2122ca50507f0efbeabbff86a84871b7196ab8ea8df7929181900390910190a15b5050565b6000610ceb610f14565b905060035b816004811115610cfc57fe5b1480610d14575060045b816004811115610d1257fe5b145b1515610d5957610d59604060405190810160405280601681526020017f43616c6c656420696e2061206261642073746174652100000000000000000000815250611b19565b5b811515610da057610da0604060405190810160405280601981526020017f56616c756520746f2075706772616465206973207a65726f2100000000000000815250611b19565b5b600160a060020a033316600090815260026020526040902054610dca908363ffffffff611c1116565b600160a060020a03331660009081526002602052604081209190915554610df7908363ffffffff611c1116565b600055600754610e0d908363ffffffff611bf716565b600755600654604080517f753e88e5000000000000000000000000000000000000000000000000000000008152600160a060020a033381166004830152602482018690529151919092169163753e88e591604480830192600092919082900301818387803b1515610e7a57fe5b6102c65a03f11515610e8857fe5b5050600654604080518581529051600160a060020a03928316935033909216917f7e5c344a8141a805725cb476f76c6953b842222b967edd1f78ddb6e8b3f397ac9181900360200190a35b5050565b600654600160a060020a031681565b600554600160a060020a031681565b600160a060020a0381166000908152600260205260409020545b919050565b6000610f1e611018565b1515610f2c57506001610f5b565b600654600160a060020a03161515610f4657506002610f5b565b6007541515610f5757506003610f5b565b5060045b5b5b5b90565b6a0c685fa11e01ec6f00000081565b600b5481565b6001546101009004600160a060020a031681565b6009805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156107755780601f1061074a57610100808354040283529160200191610775565b820191906000526020600020905b81548152906001019060200180831161075857829003601f168201915b505050505081565b60015b90565b60015460009060a860020a900460ff161561107257611072604060405190810160405280601081526020017f456d657267656e63792073746174652100000000000000000000000000000000815250611b19565b5b604060443610156110bd576110bd604060405190810160405280601581526020017f53686f727420616464726573732061747461636b210000000000000000000000815250611b19565b5b600160a060020a03331660009081526004602052604090205460ff161561111e5761111e604060405190810160405280601081526020017f4163636f756e7420667265657a65642100000000000000000000000000000000815250611b19565b5b600160a060020a033316600090815260026020526040902054611148908463ffffffff611c1116565b600160a060020a03338116600090815260026020526040808220939093559086168152205461117d908463ffffffff611bf716565b600160a060020a03808616600081815260026020908152604091829020949094558051878152905191933390931692600080516020611c2983398151915292918290030190a3600191505b5b505b92915050565b600c6020526a02116545850052128000007f9501e5ede1fb9f3a2c598fff77cfea3c23df826af76d60ca51fc0e0cb66112918190557fc7ca7b956b83ee4583b4f4611955a9b5c9e5800e703fdd0333bc5ad4b2ba7f588190557f7f8518c77fe6bb7471910753a701aaa183c282d221e96687410788d01eaaa3a18190557f627f413f76031905bd2f77a0db7beebb1bfc0b084e40a958400f72ced53e9ffd556969e10de76676d08000007f2ac7911ea403a011e44b7aa5a833c0cf83d356fed01f9424a2f947f865b00d1a8190557f30c53e6e8a57a0fa5ea08c001b3001791aca44b9df3336904237c8115a3285df556934f086f3b33b684000007f77acdf1ed14c24b3b10cd05ba3710f32009cd7f7ba6145da66b1e598025ee2838190557f84862b8626aeb1b74ce77c325365a3de3887989f8e93f4ce79c4d07e9a22311a8190557f663a7f53c827e6c8151a1ce1d9369fefb02ad57c7941993633341fba8bae34fe8190557f93b561ec2703f2500a6a6f8ad8c698284b15c206e0fbc0117e76c4c012d7521e55692a5a058fc295ed0000007ff4a8dfe2b1193a51a035be292c85d80fb827a5d3eab8ce73035587dafa4b2b498190557f43bdd8cbcd806a89139ec118d149e2983299258fc96822d6fa117b2af97a9d9d8190557f78c978bd8e250e573070820df501a9e42404448becba608cffca615d9d73c89d8190557f96ea2b90f71956dfb8b1bdc42c721c948d3bf5d89327a7e72362694891a297b68190557fec15c48f7ff10e3172b11a89c9cabfae7fa87c9b3764d9039517c2bba2a211fa5573689ccfeabd99081d061ae070b1da5e1f6e4b9fb26000526a01a784379d99db420000007f46c1a09a6806bcbfab4ce70d4fa8ef385017832cfe522f0df915db206bf384e9555b565b60015460ff1681565b60075481565b60015460a860020a900460ff1681565b600160a060020a03811660009081526004602052604090205460ff165b919050565b6114a9611018565b151561151457611514606060405190810160405280602e81526020017f546f6b656e207374617465206973206e6f74206665617369626c6520666f722081526020017f757067726164696e672079657421000000000000000000000000000000000000815250611b19565b5b600160a060020a038116151561156457611564604060405190810160405280601081526020017f496e76616c696420616464726573732100000000000000000000000000000000815250611b19565b5b60055433600160a060020a039081169116146115ba576115ba604060405190810160405280601481526020017f4f6e6c792075706772616465206d617374657221000000000000000000000000815250611b19565b5b60045b6115c6610f14565b60048111156115d157fe5b141561161657611616604060405190810160405280601881526020017f55706772616465207374617274656420616c7265616479210000000000000000815250611b19565b5b6006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038381169190911791829055604080516000602091820181905282517f61d3d7a6000000000000000000000000000000000000000000000000000000008152925194909316936361d3d7a6936004808501948390030190829087803b151561169d57fe5b6102c65a03f115156116ab57fe5b505060405151151590506116f8576116f8604060405190810160405280600e81526020017f42616420696e7465726661636521000000000000000000000000000000000000815250611b19565b5b6000805460065460408051602090810185905281517f4b2ba0dd00000000000000000000000000000000000000000000000000000000815291519394600160a060020a0390931693634b2ba0dd936004808501948390030190829087803b151561175f57fe5b6102c65a03f1151561176d57fe5b5050604051519190911490506117e2576117e2606060405190810160405280602c81526020017f546f74616c20737570706c7920736f75726365206973206e6f7420657175616c81526020017f6c20746f20746172676574210000000000000000000000000000000000000000815250611b19565b5b60065460408051600160a060020a039092168252517f7845d5aa74cc410e35571258d954f23b82276e160fe8c188fa80566580f279cc9181900360200190a15b50565b600160a060020a038083166000908152600360209081526040808320938516835292905220545b92915050565b60015433600160a060020a0390811661010090920416146118ad576118ad604060405190810160405280600b81526020017f4f6e6c79204f776e657221000000000000000000000000000000000000000000815250611b19565b5b600160a060020a038216600081815260046020908152604091829020805460ff191685151590811790915582519384529083015280517f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a59281900390910190a15b5b5050565b60015b90565b60015433600160a060020a03908116610100909204161461197457611974604060405190810160405280600b81526020017f4f6e6c79204f776e657221000000000000000000000000000000000000000000815250611b19565b5b600160a060020a03811615610937576001805461010090819004600160a060020a03908116600090815260026020908152604080832054878516808552828520918255875487900486168552828520859055875474ffffffffffffffffffffffffffffffffffffffff001916818802179788905593849052548151908152905192959490940490921692600080516020611c2983398151915292908290030190a35b5b5b50565b600081565b600160a060020a0381161515611a9657611a96606060405190810160405280602281526020017f496e76616c69642061646472657373206f662075706772616465206d6173746581526020017f7221000000000000000000000000000000000000000000000000000000000000815250611b19565b5b60055433600160a060020a03908116911614611aec57611aec604060405190810160405280601481526020017f4f6e6c792075706772616465206d617374657221000000000000000000000000815250611b19565b5b6005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b7fe9c64ad7aacefe9ed905822d2a5a6ca63ffdc82b257709dc05a534d60d92f9103334836040518084600160a060020a0316600160a060020a0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360008314611ba6575b805182526020831115611ba657601f199092019160209182019101611b86565b505050905090810190601f168015611bd25780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160015460ff1615156109375760006000fd5b5b50565b600082820183811015611c0657fe5b8091505b5092915050565b600082821115611c1d57fe5b508082035b929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582085eda844e97315bb44c6be34968c64ff5ca6b094685cc9a3ef802137497864ef0029

Deployed Bytecode

0x606060405236156101885763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461019e578063095ea7b31461022e5780630ac62e02146102615780630fdb1c101461027857806318160ddd1461028a57806323b872dd146102ac578063313ce567146102e557806342966c681461030757806345977d031461031c5780635de4ccb014610331578063600440cb1461035d57806370a08231146103895780638444b391146103b757806386b8f0a2146103eb5780638cb1e9c11461040d5780638da5cb5b1461042f57806395d89b411461045b5780639738968c146104eb578063a9059cbb1461050f578063abaa991614610542578063b656e9f414610554578063c752ff6214610578578063caa6fea41461059a578063d0516650146105be578063d7e7088a146105ee578063dd62ed3e1461060c578063e724529c14610640578063eefa597b146104eb578063f2fde38b14610687578063fccc2813146106a5578063ffeb7d75146106d1575b341561019057fe5b61019c5b60006000fd5b565b005b34156101a657fe5b6101ae6106ef565b6040805160208082528351818301528351919283929083019185019080838382156101f4575b8051825260208311156101f457601f1990920191602091820191016101d4565b505050905090810190601f1680156102205780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561023657fe5b61024d600160a060020a036004351660243561077d565b604080519115158252519081900360200190f35b341561026957fe5b61019c60043515156108b2565b005b341561028057fe5b61019c61093b565b005b341561029257fe5b61029a610a7e565b60408051918252519081900360200190f35b34156102b457fe5b61024d600160a060020a0360043581169060243516604435610a84565b604080519115158252519081900360200190f35b34156102ed57fe5b61029a610c3e565b60408051918252519081900360200190f35b341561030f57fe5b61019c600435610c44565b005b341561032457fe5b61019c600435610ce1565b005b341561033957fe5b610341610ed7565b60408051600160a060020a039092168252519081900360200190f35b341561036557fe5b610341610ee6565b60408051600160a060020a039092168252519081900360200190f35b341561039157fe5b61029a600160a060020a0360043516610ef5565b60408051918252519081900360200190f35b34156103bf57fe5b6103c7610f14565b604051808260048111156103d757fe5b60ff16815260200191505060405180910390f35b34156103f357fe5b61029a610f61565b60408051918252519081900360200190f35b341561041557fe5b61029a610f70565b60408051918252519081900360200190f35b341561043757fe5b610341610f76565b60408051600160a060020a039092168252519081900360200190f35b341561046357fe5b6101ae610f8a565b6040805160208082528351818301528351919283929083019185019080838382156101f4575b8051825260208311156101f457601f1990920191602091820191016101d4565b505050905090810190601f1680156102205780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156104f357fe5b61024d611018565b604080519115158252519081900360200190f35b341561051757fe5b61024d600160a060020a036004351660243561101e565b604080519115158252519081900360200190f35b341561054a57fe5b61019c6111d1565b005b341561055c57fe5b61024d611460565b604080519115158252519081900360200190f35b341561058057fe5b61029a611469565b60408051918252519081900360200190f35b34156105a257fe5b61024d61146f565b604080519115158252519081900360200190f35b34156105c657fe5b61024d600160a060020a036004351661147f565b604080519115158252519081900360200190f35b34156105f657fe5b61019c600160a060020a03600435166114a1565b005b341561061457fe5b61029a600160a060020a0360043581169060243516611826565b60408051918252519081900360200190f35b341561064857fe5b61019c600160a060020a03600435166024351515611853565b005b34156104f357fe5b61024d611018565b604080519115158252519081900360200190f35b341561068f57fe5b61019c600160a060020a036004351661191a565b005b34156106ad57fe5b610341611a1c565b60408051600160a060020a039092168252519081900360200190f35b34156106d957fe5b61019c600160a060020a0360043516611a21565b005b6008805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156107755780601f1061074a57610100808354040283529160200191610775565b820191906000526020600020905b81548152906001019060200180831161075857829003601f168201915b505050505081565b60015460009060a860020a900460ff16156107d1576107d1604060405190810160405280601081526020017f456d657267656e63792073746174652100000000000000000000000000000000815250611b19565b5b81158015906108055750600160a060020a0333811660009081526003602090815260408083209387168352929052205415155b1561084957610849604060405190810160405280601981526020017f416c6c6f77616e6365207261636520636f6e646974696f6e2100000000000000815250611b19565b5b600160a060020a03338116600081815260036020908152604080832094881680845294825291829020869055815186815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a35060015b5b92915050565b60015433600160a060020a03908116610100909204161461090c5761090c604060405190810160405280600b81526020017f4f6e6c79204f776e657221000000000000000000000000000000000000000000815250611b19565b5b6001805475ff000000000000000000000000000000000000000000191660a860020a831515021790555b5b50565b600b5442101561098457610984604060405190810160405280601881526020017f416c6c6f636174696f6e732061726520667265657a6564210000000000000000815250611b19565b5b600160a060020a0333166000908152600c602052604090205415156109e3576109e3604060405190810160405280601481526020017f4e6f20616c6c6f636174696f6e20666f756e6421000000000000000000000000815250611b19565b5b600160a060020a033381166000818152600c60208181526040808420805460018054610100908190048a1688526002865284882080549390930390925587875282549684902080549097019096559454938352548151908152905194959390920490921692600080516020611c29833981519152929181900390910190a3600160a060020a0333166000908152600c60205260408120555b565b60005481565b600154600090819060a860020a900460ff1615610ada57610ada604060405190810160405280601081526020017f456d657267656e63792073746174652100000000000000000000000000000000815250611b19565b5b600160a060020a03851660009081526004602052604090205460ff1615610b3b57610b3b604060405190810160405280601081526020017f4163636f756e7420667265657a65642100000000000000000000000000000000815250611b19565b5b50600160a060020a038085166000908152600360209081526040808320338516845282528083205493871683526002909152902054610b81908463ffffffff611bf716565b600160a060020a038086166000908152600260205260408082209390935590871681522054610bb6908463ffffffff611c1116565b600160a060020a038616600090815260026020526040902055610bdf818463ffffffff611c1116565b600160a060020a03808716600081815260036020908152604080832033861684528252918290209490945580518781529051928816939192600080516020611c29833981519152929181900390910190a3600191505b5b509392505050565b600a5481565b33600160a060020a038116600090815260026020526040902054610c689083611c11565b600160a060020a03821660009081526002602052604081209190915554610c95908363ffffffff611c1116565b60005560408051600160a060020a03831681526020810184905281517f696de425f79f4a40bc6d2122ca50507f0efbeabbff86a84871b7196ab8ea8df7929181900390910190a15b5050565b6000610ceb610f14565b905060035b816004811115610cfc57fe5b1480610d14575060045b816004811115610d1257fe5b145b1515610d5957610d59604060405190810160405280601681526020017f43616c6c656420696e2061206261642073746174652100000000000000000000815250611b19565b5b811515610da057610da0604060405190810160405280601981526020017f56616c756520746f2075706772616465206973207a65726f2100000000000000815250611b19565b5b600160a060020a033316600090815260026020526040902054610dca908363ffffffff611c1116565b600160a060020a03331660009081526002602052604081209190915554610df7908363ffffffff611c1116565b600055600754610e0d908363ffffffff611bf716565b600755600654604080517f753e88e5000000000000000000000000000000000000000000000000000000008152600160a060020a033381166004830152602482018690529151919092169163753e88e591604480830192600092919082900301818387803b1515610e7a57fe5b6102c65a03f11515610e8857fe5b5050600654604080518581529051600160a060020a03928316935033909216917f7e5c344a8141a805725cb476f76c6953b842222b967edd1f78ddb6e8b3f397ac9181900360200190a35b5050565b600654600160a060020a031681565b600554600160a060020a031681565b600160a060020a0381166000908152600260205260409020545b919050565b6000610f1e611018565b1515610f2c57506001610f5b565b600654600160a060020a03161515610f4657506002610f5b565b6007541515610f5757506003610f5b565b5060045b5b5b5b90565b6a0c685fa11e01ec6f00000081565b600b5481565b6001546101009004600160a060020a031681565b6009805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156107755780601f1061074a57610100808354040283529160200191610775565b820191906000526020600020905b81548152906001019060200180831161075857829003601f168201915b505050505081565b60015b90565b60015460009060a860020a900460ff161561107257611072604060405190810160405280601081526020017f456d657267656e63792073746174652100000000000000000000000000000000815250611b19565b5b604060443610156110bd576110bd604060405190810160405280601581526020017f53686f727420616464726573732061747461636b210000000000000000000000815250611b19565b5b600160a060020a03331660009081526004602052604090205460ff161561111e5761111e604060405190810160405280601081526020017f4163636f756e7420667265657a65642100000000000000000000000000000000815250611b19565b5b600160a060020a033316600090815260026020526040902054611148908463ffffffff611c1116565b600160a060020a03338116600090815260026020526040808220939093559086168152205461117d908463ffffffff611bf716565b600160a060020a03808616600081815260026020908152604091829020949094558051878152905191933390931692600080516020611c2983398151915292918290030190a3600191505b5b505b92915050565b600c6020526a02116545850052128000007f9501e5ede1fb9f3a2c598fff77cfea3c23df826af76d60ca51fc0e0cb66112918190557fc7ca7b956b83ee4583b4f4611955a9b5c9e5800e703fdd0333bc5ad4b2ba7f588190557f7f8518c77fe6bb7471910753a701aaa183c282d221e96687410788d01eaaa3a18190557f627f413f76031905bd2f77a0db7beebb1bfc0b084e40a958400f72ced53e9ffd556969e10de76676d08000007f2ac7911ea403a011e44b7aa5a833c0cf83d356fed01f9424a2f947f865b00d1a8190557f30c53e6e8a57a0fa5ea08c001b3001791aca44b9df3336904237c8115a3285df556934f086f3b33b684000007f77acdf1ed14c24b3b10cd05ba3710f32009cd7f7ba6145da66b1e598025ee2838190557f84862b8626aeb1b74ce77c325365a3de3887989f8e93f4ce79c4d07e9a22311a8190557f663a7f53c827e6c8151a1ce1d9369fefb02ad57c7941993633341fba8bae34fe8190557f93b561ec2703f2500a6a6f8ad8c698284b15c206e0fbc0117e76c4c012d7521e55692a5a058fc295ed0000007ff4a8dfe2b1193a51a035be292c85d80fb827a5d3eab8ce73035587dafa4b2b498190557f43bdd8cbcd806a89139ec118d149e2983299258fc96822d6fa117b2af97a9d9d8190557f78c978bd8e250e573070820df501a9e42404448becba608cffca615d9d73c89d8190557f96ea2b90f71956dfb8b1bdc42c721c948d3bf5d89327a7e72362694891a297b68190557fec15c48f7ff10e3172b11a89c9cabfae7fa87c9b3764d9039517c2bba2a211fa5573689ccfeabd99081d061ae070b1da5e1f6e4b9fb26000526a01a784379d99db420000007f46c1a09a6806bcbfab4ce70d4fa8ef385017832cfe522f0df915db206bf384e9555b565b60015460ff1681565b60075481565b60015460a860020a900460ff1681565b600160a060020a03811660009081526004602052604090205460ff165b919050565b6114a9611018565b151561151457611514606060405190810160405280602e81526020017f546f6b656e207374617465206973206e6f74206665617369626c6520666f722081526020017f757067726164696e672079657421000000000000000000000000000000000000815250611b19565b5b600160a060020a038116151561156457611564604060405190810160405280601081526020017f496e76616c696420616464726573732100000000000000000000000000000000815250611b19565b5b60055433600160a060020a039081169116146115ba576115ba604060405190810160405280601481526020017f4f6e6c792075706772616465206d617374657221000000000000000000000000815250611b19565b5b60045b6115c6610f14565b60048111156115d157fe5b141561161657611616604060405190810160405280601881526020017f55706772616465207374617274656420616c7265616479210000000000000000815250611b19565b5b6006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038381169190911791829055604080516000602091820181905282517f61d3d7a6000000000000000000000000000000000000000000000000000000008152925194909316936361d3d7a6936004808501948390030190829087803b151561169d57fe5b6102c65a03f115156116ab57fe5b505060405151151590506116f8576116f8604060405190810160405280600e81526020017f42616420696e7465726661636521000000000000000000000000000000000000815250611b19565b5b6000805460065460408051602090810185905281517f4b2ba0dd00000000000000000000000000000000000000000000000000000000815291519394600160a060020a0390931693634b2ba0dd936004808501948390030190829087803b151561175f57fe5b6102c65a03f1151561176d57fe5b5050604051519190911490506117e2576117e2606060405190810160405280602c81526020017f546f74616c20737570706c7920736f75726365206973206e6f7420657175616c81526020017f6c20746f20746172676574210000000000000000000000000000000000000000815250611b19565b5b60065460408051600160a060020a039092168252517f7845d5aa74cc410e35571258d954f23b82276e160fe8c188fa80566580f279cc9181900360200190a15b50565b600160a060020a038083166000908152600360209081526040808320938516835292905220545b92915050565b60015433600160a060020a0390811661010090920416146118ad576118ad604060405190810160405280600b81526020017f4f6e6c79204f776e657221000000000000000000000000000000000000000000815250611b19565b5b600160a060020a038216600081815260046020908152604091829020805460ff191685151590811790915582519384529083015280517f48335238b4855f35377ed80f164e8c6f3c366e54ac00b96a6402d4a9814a03a59281900390910190a15b5b5050565b60015b90565b60015433600160a060020a03908116610100909204161461197457611974604060405190810160405280600b81526020017f4f6e6c79204f776e657221000000000000000000000000000000000000000000815250611b19565b5b600160a060020a03811615610937576001805461010090819004600160a060020a03908116600090815260026020908152604080832054878516808552828520918255875487900486168552828520859055875474ffffffffffffffffffffffffffffffffffffffff001916818802179788905593849052548151908152905192959490940490921692600080516020611c2983398151915292908290030190a35b5b5b50565b600081565b600160a060020a0381161515611a9657611a96606060405190810160405280602281526020017f496e76616c69642061646472657373206f662075706772616465206d6173746581526020017f7221000000000000000000000000000000000000000000000000000000000000815250611b19565b5b60055433600160a060020a03908116911614611aec57611aec604060405190810160405280601481526020017f4f6e6c792075706772616465206d617374657221000000000000000000000000815250611b19565b5b6005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b7fe9c64ad7aacefe9ed905822d2a5a6ca63ffdc82b257709dc05a534d60d92f9103334836040518084600160a060020a0316600160a060020a0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360008314611ba6575b805182526020831115611ba657601f199092019160209182019101611b86565b505050905090810190601f168015611bd25780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a160015460ff1615156109375760006000fd5b5b50565b600082820183811015611c0657fe5b8091505b5092915050565b600082821115611c1d57fe5b508082035b929150505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a7230582085eda844e97315bb44c6be34968c64ff5ca6b094685cc9a3ef802137497864ef0029

Swarm Source

bzzr://85eda844e97315bb44c6be34968c64ff5ca6b094685cc9a3ef802137497864ef
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.