ETH Price: $3,216.56 (-1.18%)
Gas: 1 Gwei

Contract

0xDd6C68bb32462e01705011a4e2Ad1a60740f217F
 
Transaction Hash
Method
Block
From
To
Transfer203676142024-07-23 7:04:114 days ago1721718251IN
Hubii Network Token
0 ETH0.000171973.46433017
Transfer196190952024-04-09 15:52:11109 days ago1712677931IN
Hubii Network Token
0 ETH0.0021812543.94950411
Transfer196009852024-04-07 2:56:59112 days ago1712458619IN
Hubii Network Token
0 ETH0.0005955712
Transfer195332712024-03-28 14:45:11121 days ago1711637111IN
Hubii Network Token
0 ETH0.0016268750.02842931
Approve194584872024-03-18 1:42:59132 days ago1710726179IN
Hubii Network Token
0 ETH0.0005760623.64325324
Approve194584812024-03-18 1:41:47132 days ago1710726107IN
Hubii Network Token
0 ETH0.0011707225.17525469
Transfer192040392024-02-11 9:49:47167 days ago1707644987IN
Hubii Network Token
0 ETH0.0014346828.91412444
Approve189513902024-01-06 23:29:59203 days ago1704583799IN
Hubii Network Token
0 ETH0.0003495413.2959051
Approve187559202023-12-10 12:50:23230 days ago1702212623IN
Hubii Network Token
0 ETH0.0011904425.46780478
Transfer187559082023-12-10 12:47:59230 days ago1702212479IN
Hubii Network Token
0 ETH0.0012628525.4448612
Approve183949662023-10-20 23:58:23281 days ago1697846303IN
Hubii Network Token
0 ETH0.000379768.1748256
Transfer183845472023-10-19 13:02:59282 days ago1697720579IN
Hubii Network Token
0 ETH0.0007049314.2
Approve183580812023-10-15 20:11:47286 days ago1697400707IN
Hubii Network Token
0 ETH0.000316176.75554863
Approve183579922023-10-15 19:53:47286 days ago1697399627IN
Hubii Network Token
0 ETH0.000238355.09265423
Approve183575052023-10-15 18:16:11286 days ago1697393771IN
Hubii Network Token
0 ETH0.000260585.56773429
Transfer183233072023-10-10 23:23:35291 days ago1696980215IN
Hubii Network Token
0 ETH0.000280045.64116439
Approve172925792023-05-19 9:14:35435 days ago1684487675IN
Hubii Network Token
0 ETH0.0013880357.14443045
Approve172925782023-05-19 9:14:23435 days ago1684487663IN
Hubii Network Token
0 ETH0.0013701656.43646095
Approve171382442023-04-27 14:56:11457 days ago1682607371IN
Hubii Network Token
0 ETH0.0016271834.7665944
Approve171382332023-04-27 14:53:59457 days ago1682607239IN
Hubii Network Token
0 ETH0.0014509331.00084034
Approve170201852023-04-10 20:37:35474 days ago1681159055IN
Hubii Network Token
0 ETH0.0013600929.09739713
Approve168832452023-03-22 12:50:47493 days ago1679489447IN
Hubii Network Token
0 ETH0.0004743418.05110296
Transfer167755612023-03-07 9:33:35508 days ago1678181615IN
Hubii Network Token
0 ETH0.0010844421.85008295
Approve163763942023-01-10 12:25:35564 days ago1673353535IN
Hubii Network Token
0 ETH0.0007186815.35555705
Transfer163079882022-12-31 23:19:47574 days ago1672528787IN
Hubii Network Token
0 ETH0.0007246714.59770181
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block From To
41873082017-08-21 20:44:542532 days ago1503348294  Contract Creation0 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CrowdsaleToken

Compiler Version
v0.4.13+commit.fb4cb1a

Optimization Enabled:
Yes with 0 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2017-08-22
*/

pragma solidity ^0.4.13;


/**
 * @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 {
    require(newOwner != address(0));
    owner = newOwner;
  }

}

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

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

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

  function add(uint a, uint b) internal returns (uint) {
    uint 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(uint a, uint b) internal constant returns (uint) {
    return a >= b ? a : b;
  }

  function min256(uint a, uint b) internal constant returns (uint) {
    return a < b ? a : b;
  }
}

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


/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
contract ERC20 is ERC20Basic {
  function allowance(address owner, address spender) public constant returns (uint);
  function transferFrom(address from, address to, uint value) public returns (bool ok);
  function approve(address spender, uint value) public returns (bool ok);
  event Approval(address indexed owner, address indexed spender, uint value);
}

/**
 * A token that defines fractional units as decimals.
 */
contract FractionalERC20 is ERC20 {

  uint8 public decimals;

}

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

  mapping(address => uint) balances;

  /**
   * Obsolete. Removed this check based on:
   * https://blog.coinfabrik.com/smart-contract-short-address-attack-mitigation-failure/
   * @dev Fix for the ERC20 short address attack.
   *
   * modifier onlyPayloadSize(uint size) {
   *    require(msg.data.length >= size + 4);
   *    _;
   * }
   */

  /**
  * @dev transfer token for a specified address
  * @param _to The address to transfer to.
  * @param _value The amount to be transferred.
  */
  function transfer(address _to, uint _value) public returns (bool success) {
    balances[msg.sender] = balances[msg.sender].sub(_value);
    balances[_to] = balances[_to].add(_value);
    Transfer(msg.sender, _to, _value);
    return true;
  }

  /**
  * @dev Gets the balance of the specified address.
  * @param _owner The address to query the the balance of. 
  * @return An uint representing the amount owned by the passed address.
  */
  function balanceOf(address _owner) public constant returns (uint balance) {
    return balances[_owner];
  }
  
}

/**
 * @title Standard ERC20 token
 *
 * @dev Implementation of the basic standard token.
 * @dev https://github.com/ethereum/EIPs/issues/20
 */
contract StandardToken is BasicToken, ERC20 {

  /* Token supply got increased and a new owner received these tokens */
  event Minted(address receiver, uint amount);

  mapping (address => mapping (address => uint)) allowed;

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

  /**
   * @dev Transfer tokens from one address to another
   * @param _from address The address which you want to send tokens from
   * @param _to address The address which you want to transfer to
   * @param _value uint the amout of tokens to be transfered
   */
  function transferFrom(address _from, address _to, uint _value) public returns (bool success) {
    uint _allowance = allowed[_from][msg.sender];

    // Check is not needed because sub(_allowance, _value) will already throw if this condition is not met
    // require(_value <= _allowance);
    // SafeMath uses assert instead of require though, beware when using an analysis tool

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

  /**
   * @dev Aprove the passed address to spend the specified amount of tokens on behalf of msg.sender.
   * @param _spender The address which will spend the funds.
   * @param _value The amount of tokens to be spent.
   */
  function approve(address _spender, uint _value) public 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
    require (_value == 0 || allowed[msg.sender][_spender] == 0);

    allowed[msg.sender][_spender] = _value;
    Approval(msg.sender, _spender, _value);
    return true;
  }

  /**
   * @dev Function to check the amount of tokens than an owner allowed to a spender.
   * @param _owner address The address which owns the funds.
   * @param _spender address The address which will spend the funds.
   * @return A uint specifing the amount of tokens still avaible for the spender.
   */
  function allowance(address _owner, address _spender) public constant returns (uint remaining) {
    return allowed[_owner][_spender];
  }

  /**
   * Atomic increment of approved spending
   *
   * Works around https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
   *
   */
  function addApproval(address _spender, uint _addedValue) public
  returns (bool success) {
      uint oldValue = allowed[msg.sender][_spender];
      allowed[msg.sender][_spender] = oldValue.add(_addedValue);
      Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
      return true;
  }

  /**
   * Atomic decrement of approved spending.
   *
   * Works around https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
   */
  function subApproval(address _spender, uint _subtractedValue) public
  returns (bool success) {

      uint oldVal = allowed[msg.sender][_spender];

      if (_subtractedValue > oldVal) {
          allowed[msg.sender][_spender] = 0;
      } else {
          allowed[msg.sender][_spender] = oldVal.sub(_subtractedValue);
      }
      Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
      return true;
  }
  
}

/**
 * Define interface for releasing the token transfer after a successful crowdsale.
 */
contract ReleasableToken is StandardToken, Ownable {

  /* The finalizer contract that allows lifting 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;

  /**
   * Set the contract that can call release and make the token transferable.
   *
   * Since the owner of this contract is (or should be) the crowdsale,
   * it can only be called by a corresponding exposed API in the crowdsale contract in case of input error.
   */
  function setReleaseAgent(address addr) onlyOwner inReleaseState(false) public {
    // We don't do interface check here as we might want to have a normal wallet address to act as a release agent.
    releaseAgent = addr;
  }

  /**
   * Owner can allow a particular address (e.g. 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 into the wild.
   *
   * Can be called only from the release agent that should typically be the finalize agent ICO contract.
   * In the scope of the crowdsale, it is only called if the crowdsale has been a success (first milestone reached).
   */
  function releaseTokenTransfer() public onlyReleaseAgent {
    released = true;
  }

  /**
   * Limit token transfer until the crowdsale is over.
   */
  modifier canTransfer(address _sender) {
    require(released || transferAgents[_sender]);
    _;
  }

  /** The function can be called only before or after the tokens have been released */
  modifier inReleaseState(bool releaseState) {
    require(releaseState == released);
    _;
  }

  /** The function can be called only by a whitelisted release agent. */
  modifier onlyReleaseAgent() {
    require(msg.sender == releaseAgent);
    _;
  }

  /** We restrict transfer by overriding it */
  function transfer(address _to, uint _value) public canTransfer(msg.sender) returns (bool success) {
    // Call StandardToken.transfer()
   return super.transfer(_to, _value);
  }

  /** We restrict transferFrom by overriding it */
  function transferFrom(address _from, address _to, uint _value) public canTransfer(_from) returns (bool success) {
    // Call StandardToken.transferForm()
    return super.transferFrom(_from, _to, _value);
  }

}

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


  function MintableToken(uint _initialSupply, address _multisig, bool _mintable) internal {
    require(_multisig != address(0));
    // Cannot create a token without supply and no minting
    require(_mintable || _initialSupply != 0);
    // Create initially all balance on the team multisig
    if (_initialSupply > 0)
        mintInternal(_multisig, _initialSupply);
    // No more new supply allowed after the token creation
    mintingFinished = !_mintable;
  }

  /**
   * Create new tokens and allocate them to an address.
   *
   * Only callable by a crowdsale contract (mint agent).
   */
  function mint(address receiver, uint amount) onlyMintAgent public {
    mintInternal(receiver, amount);
  }

  function mintInternal(address receiver, uint amount) canMint private {
    totalSupply = totalSupply.add(amount);
    balances[receiver] = balances[receiver].add(amount);

    // Removed because this may be confused with anonymous transfers in the upcoming fork.
    // This will make the mint transaction appear in EtherScan.io
    // We can remove this after there is a standardized minting event
    // Transfer(0, receiver, amount);

    Minted(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 mint agents are allowed to mint new tokens
    require(mintAgents[msg.sender]);
    _;
  }

  /** Make sure we are not done yet. */
  modifier canMint() {
    require(!mintingFinished);
    _;
  }
}

/**
 * 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.
 *
 * The Upgrade agent is the interface used to implement a token
 * migration in the case of an emergency.
 * The function upgradeFrom has to implement the part of the creation
 * of new tokens on behalf of the user doing the upgrade.
 *
 * The new token can implement this interface directly, or use.
 */
contract UpgradeAgent {

  /** This value should be the same as the original token's total supply */
  uint public originalSupply;

  /** Interface to ensure the contract is correctly configured */
  function isUpgradeAgent() public constant returns (bool) {
    return true;
  }

  /**
  Upgrade an account

  When the token contract is in the upgrade status the each user will
  have to call `upgrade(value)` function from UpgradeableToken.

  The upgrade function adjust the balance of the user and the supply
  of the previous token and then call `upgradeFrom(value)`.

  The UpgradeAgent is the responsible to create the tokens for the user
  in the new contract.

  * @param _from Account to upgrade.
  * @param _value Tokens to upgrade.

  */
  function upgradeFrom(address _from, uint _value) public;

}

/**
 * A token upgrade mechanism where users can opt-in amount of tokens to the next smart contract revision.
 *
 */
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. */
  uint 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, uint _value);

  /**
   * New upgrade agent available.
   */
  event UpgradeAgentSet(address agent);

  /**
   * Do not allow construction without upgrade master set.
   */
  function UpgradeableToken(address _upgradeMaster) {
    setUpgradeMaster(_upgradeMaster);
  }

  /**
   * Allow the token holder to upgrade some of their tokens to a new contract.
   */
  function upgrade(uint value) public {
    UpgradeState state = getUpgradeState();
    // Ensure it's not called in a bad state
    require(state == UpgradeState.ReadyToUpgrade || state == UpgradeState.Upgrading);

    // Validate input value.
    require(value != 0);

    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 the upgrade process
   */
  function setUpgradeAgent(address agent) external {
    // Check whether the token is in a state that we could think of upgrading
    require(canUpgrade());

    require(agent != 0x0);
    // Only a master can designate the next agent
    require(msg.sender == upgradeMaster);
    // Upgrade has already begun for an agent
    require(getUpgradeState() != UpgradeState.Upgrading);

    upgradeAgent = UpgradeAgent(agent);

    // Bad interface
    require(upgradeAgent.isUpgradeAgent());
    // Make sure that token supplies match in source and target
    require(upgradeAgent.originalSupply() == totalSupply);

    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 changeUpgradeMaster(address new_master) public {
    require(msg.sender == upgradeMaster);
    setUpgradeMaster(new_master);
  }

  /**
   * Internal upgrade master setter.
   */
  function setUpgradeMaster(address new_master) private {
    require(new_master != 0x0);
    upgradeMaster = new_master;
  }

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

}


/**
 * A crowdsale 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 the 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, FractionalERC20 {

  event UpdatedTokenInformation(string newName, string newSymbol);

  string public name;

  string public symbol;

  /**
   * 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 - typically it's 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, uint8 _decimals, address _multisig, bool _mintable)
    UpgradeableToken(_multisig) MintableToken(_initialSupply, _multisig, _mintable) {
    name = _name;
    symbol = _symbol;
    decimals = _decimals;
  }

  /**
   * When token is released to be transferable, prohibit new token creation.
   */
  function releaseTokenTransfer() public onlyReleaseAgent {
    mintingFinished = true;
    super.releaseTokenTransfer();
  }

  /**
   * Allow upgrade agent functionality to kick in only if the crowdsale was a success.
   */
  function canUpgrade() public constant returns(bool) {
    return released && super.canUpgrade();
  }

  /**
   * Owner can update token information here
   */
  function setTokenInformation(string _name, string _symbol) onlyOwner {
    name = _name;
    symbol = _symbol;

    UpdatedTokenInformation(name, symbol);
  }

}

Contract Security Audit

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":"uint8"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"receiver","type":"address"},{"name":"amount","type":"uint256"}],"name":"mint","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":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"addApproval","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":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"subApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"new_master","type":"address"}],"name":"changeUpgradeMaster","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"},{"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_initialSupply","type":"uint256"},{"name":"_decimals","type":"uint8"},{"name":"_multisig","type":"address"},{"name":"_mintable","type":"bool"}],"payable":false,"type":"constructor"},{"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"}]

60606040526004805460a060020a60ff02191690556006805460ff1916905534156200002a57600080fd5b60405162001b9838038062001b98833981016040528080518201919060200180518201919060200180519190602001805191906020018051919060200180519150505b815b8483835b5b60038054600160a060020a03191633600160a060020a03161790555b600160a060020a0382161515620000a657600080fd5b8080620000b257508215155b1515620000be57600080fd5b6000831115620000e257620000e28284640100000000620015546200015d82021704565b5b6006805460ff191682151790555b5050506200011381620002296401000000000262001725176401000000009004565b5b50600c8680516200012a92916020019062000279565b50600d8580516200014092916020019062000279565b50600b805460ff191660ff85161790555b50505050505062000323565b60065460ff16156200016e57600080fd5b6000546200018b9082640100000000620016226200025e82021704565b6000908155600160a060020a038316815260016020526040902054620001c09082640100000000620016226200025e82021704565b600160a060020a03831660009081526001602052604090819020919091557f30385c845b448a36257a6a1716e6ad2e1bc2cbe333cde1e69fe849ad6511adfe908390839051600160a060020a03909216825260208201526040908101905180910390a15b5b5050565b600160a060020a03811615156200023f57600080fd5b60088054600160a060020a031916600160a060020a0383161790555b50565b6000828201838110156200026e57fe5b8091505b5092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002bc57805160ff1916838001178555620002ec565b82800160010185558215620002ec579182015b82811115620002ec578251825591602001919060010190620002cf565b5b50620002fb929150620002ff565b5090565b6200032091905b80821115620002fb576000815560010162000306565b5090565b90565b61186580620003336000396000f300606060405236156101855763ffffffff60e060020a60003504166302f652a3811461018a57806305d2035b146101b057806306fdde03146101d7578063095ea7b31461026257806318160ddd1461029857806323b872dd146102bd57806329ff4f53146102f9578063313ce5671461031a57806340c10f191461034357806342c1867b14610367578063432146751461039a57806345977d03146103c05780634eee966f146103d85780635de4ccb01461046d5780635f412d4f1461049c578063600440cb146104b157806370a08231146104e05780638444b39114610511578063867c2857146105485780638da5cb5b1461057b57806395d89b41146105aa57806396132521146106355780639738968c1461065c578063a9059cbb14610683578063ac3cb72c146106b9578063c752ff62146106ef578063d1f276d314610714578063d7e7088a14610743578063dd62ed3e14610764578063e2301d021461079b578063ea56a44d146107d1578063eefa597b146107f2578063f2fde38b14610819575b600080fd5b341561019557600080fd5b6101ae600160a060020a0360043516602435151561083a565b005b34156101bb57600080fd5b6101c361089b565b604051901515815260200160405180910390f35b34156101e257600080fd5b6101ea6108a4565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102275780820151818401525b60200161020e565b50505050905090810190601f1680156102545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561026d57600080fd5b6101c3600160a060020a0360043516602435610942565b604051901515815260200160405180910390f35b34156102a357600080fd5b6102ab6109d7565b60405190815260200160405180910390f35b34156102c857600080fd5b6101c3600160a060020a03600435811690602435166044356109dd565b604051901515815260200160405180910390f35b341561030457600080fd5b6101ae600160a060020a0360043516610a34565b005b341561032557600080fd5b61032d610a8b565b60405160ff909116815260200160405180910390f35b341561034e57600080fd5b6101ae600160a060020a0360043516602435610a94565b005b341561037257600080fd5b6101c3600160a060020a0360043516610acb565b604051901515815260200160405180910390f35b34156103a557600080fd5b6101ae600160a060020a03600435166024351515610ae0565b005b34156103cb57600080fd5b6101ae600435610b7f565b005b34156103e357600080fd5b6101ae60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650610ceb95505050505050565b005b341561047857600080fd5b610480610e5b565b604051600160a060020a03909116815260200160405180910390f35b34156104a757600080fd5b6101ae610e6a565b005b34156104bc57600080fd5b610480610e9e565b604051600160a060020a03909116815260200160405180910390f35b34156104eb57600080fd5b6102ab600160a060020a0360043516610ead565b60405190815260200160405180910390f35b341561051c57600080fd5b610524610ecc565b6040518082600481111561053457fe5b60ff16815260200191505060405180910390f35b341561055357600080fd5b6101c3600160a060020a0360043516610f19565b604051901515815260200160405180910390f35b341561058657600080fd5b610480610f2e565b604051600160a060020a03909116815260200160405180910390f35b34156105b557600080fd5b6101ea610f3d565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102275780820151818401525b60200161020e565b50505050905090810190601f1680156102545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561064057600080fd5b6101c3610fdb565b604051901515815260200160405180910390f35b341561066757600080fd5b6101c3610feb565b604051901515815260200160405180910390f35b341561068e57600080fd5b6101c3600160a060020a0360043516602435611011565b604051901515815260200160405180910390f35b34156106c457600080fd5b6101c3600160a060020a0360043516602435611066565b604051901515815260200160405180910390f35b34156106fa57600080fd5b6102ab6110fb565b60405190815260200160405180910390f35b341561071f57600080fd5b610480611101565b604051600160a060020a03909116815260200160405180910390f35b341561074e57600080fd5b6101ae600160a060020a0360043516611110565b005b341561076f57600080fd5b6102ab600160a060020a03600435811690602435166112bc565b60405190815260200160405180910390f35b34156107a657600080fd5b6101c3600160a060020a03600435166024356112e9565b604051901515815260200160405180910390f35b34156107dc57600080fd5b6101ae600160a060020a03600435166113d3565b005b34156107fd57600080fd5b6101c36113fb565b604051901515815260200160405180910390f35b341561082457600080fd5b6101ae600160a060020a0360043516611401565b005b60035433600160a060020a0390811691161461085557600080fd5b60045460009060a060020a900460ff161561086f57600080fd5b600160a060020a0383166000908152600560205260409020805460ff19168315151790555b5b505b5050565b60065460ff1681565b600c8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561093a5780601f1061090f5761010080835404028352916020019161093a565b820191906000526020600020905b81548152906001019060200180831161091d57829003601f168201915b505050505081565b60008115806109745750600160a060020a03338116600090815260026020908152604080832093871683529290522054155b151561097f57600080fd5b600160a060020a033381166000818152600260209081526040808320948816808452949091529081902085905560008051602061181a8339815191529085905190815260200160405180910390a35060015b92915050565b60005481565b600454600090849060a060020a900460ff1680610a125750600160a060020a03811660009081526005602052604090205460ff165b1515610a1d57600080fd5b610a28858585611451565b91505b5b509392505050565b60035433600160a060020a03908116911614610a4f57600080fd5b60045460009060a060020a900460ff1615610a6957600080fd5b60048054600160a060020a031916600160a060020a0384161790555b5b505b50565b600b5460ff1681565b600160a060020a03331660009081526007602052604090205460ff161515610abb57600080fd5b6108978282611554565b5b5b5050565b60076020526000908152604090205460ff1681565b60035433600160a060020a03908116911614610afb57600080fd5b60065460ff1615610b0b57600080fd5b600160a060020a03821660009081526007602052604090819020805460ff19168315151790557f4b0adf6c802794c7dde28a08a4e07131abcff3bf9603cd71f14f90bec7865efa908390839051600160a060020a039092168252151560208201526040908101905180910390a15b5b5b5050565b6000610b89610ecc565b905060035b816004811115610b9a57fe5b1480610bb2575060045b816004811115610bb057fe5b145b1515610bbd57600080fd5b811515610bc957600080fd5b600160a060020a033316600090815260016020526040902054610bf2908363ffffffff61160b16565b600160a060020a03331660009081526001602052604081209190915554610c1f908363ffffffff61160b16565b600055600a54610c35908363ffffffff61162216565b600a55600954600160a060020a031663753e88e5338460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515610c8e57600080fd5b6102c65a03f11515610c9f57600080fd5b5050600954600160a060020a03908116915033167f7e5c344a8141a805725cb476f76c6953b842222b967edd1f78ddb6e8b3f397ac8460405190815260200160405180910390a35b5050565b60035433600160a060020a03908116911614610d0657600080fd5b600c828051610d19929160200190611759565b50600d818051610d2d929160200190611759565b507fd131ab1e6f279deea74e13a18477e13e2107deb6dc8ae955648948be5841fb46600c600d604051604080825283546002600019610100600184161502019091160490820181905281906020820190606083019086908015610dd15780601f10610da657610100808354040283529160200191610dd1565b820191906000526020600020905b815481529060010190602001808311610db457829003601f168201915b5050838103825284546002600019610100600184161502019091160480825260209091019085908015610e455780601f10610e1a57610100808354040283529160200191610e45565b820191906000526020600020905b815481529060010190602001808311610e2857829003601f168201915b505094505050505060405180910390a15b5b5050565b600954600160a060020a031681565b60045433600160a060020a03908116911614610e8557600080fd5b6006805460ff19166001179055610e9a61163c565b5b5b565b600854600160a060020a031681565b600160a060020a0381166000908152600160205260409020545b919050565b6000610ed6610feb565b1515610ee457506001610f13565b600954600160a060020a03161515610efe57506002610f13565b600a541515610f0f57506003610f13565b5060045b5b5b5b90565b60056020526000908152604090205460ff1681565b600354600160a060020a031681565b600d8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561093a5780601f1061090f5761010080835404028352916020019161093a565b820191906000526020600020905b81548152906001019060200180831161091d57829003601f168201915b505050505081565b60045460a060020a900460ff1681565b60045460009060a060020a900460ff16801561100a575061100a6113fb565b5b90505b90565b600454600090339060a060020a900460ff16806110465750600160a060020a03811660009081526005602052604090205460ff165b151561105157600080fd5b61105b8484611677565b91505b5b5092915050565b600160a060020a03338116600090815260026020908152604080832093861683529290529081205461109e818463ffffffff61162216565b600160a060020a033381166000818152600260209081526040808320948a1680845294909152908190208490559192909160008051602061181a83398151915291905190815260200160405180910390a3600191505b5092915050565b600a5481565b600454600160a060020a031681565b611118610feb565b151561112357600080fd5b600160a060020a038116151561113857600080fd5b60085433600160a060020a0390811691161461115357600080fd5b60045b61115e610ecc565b600481111561116957fe5b141561117457600080fd5b60098054600160a060020a031916600160a060020a038381169190911791829055166361d3d7a66000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111d257600080fd5b6102c65a03f115156111e357600080fd5b5050506040518051905015156111f857600080fd5b600080546009549091600160a060020a0390911690634b2ba0dd90604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561124857600080fd5b6102c65a03f1151561125957600080fd5b5050506040518051905014151561126f57600080fd5b6009547f7845d5aa74cc410e35571258d954f23b82276e160fe8c188fa80566580f279cc90600160a060020a0316604051600160a060020a03909116815260200160405180910390a15b50565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b600160a060020a0333811660009081526002602090815260408083209386168352929052908120548083111561134657600160a060020a03338116600090815260026020908152604080832093881683529290529081205561137d565b61109e818463ffffffff61160b16565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a03338116600081815260026020908152604080832094891680845294909152908190205460008051602061181a833981519152915190815260200160405180910390a3600191505b5092915050565b60085433600160a060020a039081169116146113ee57600080fd5b610a8881611725565b5b50565b60015b90565b60035433600160a060020a0390811691161461141c57600080fd5b600160a060020a038116151561143157600080fd5b60038054600160a060020a031916600160a060020a0383161790555b5b50565b600160a060020a038084166000908152600260209081526040808320338516845282528083205493861683526001909152812054909190611498908463ffffffff61162216565b600160a060020a0380861660009081526001602052604080822093909355908716815220546114cd908463ffffffff61160b16565b600160a060020a0386166000908152600160205260409020556114f6818463ffffffff61160b16565b600160a060020a03808716600081815260026020908152604080832033861684529091529081902093909355908616916000805160206117fa8339815191529086905190815260200160405180910390a3600191505b509392505050565b60065460ff161561156457600080fd5b600054611577908263ffffffff61162216565b6000908155600160a060020a0383168152600160205260409020546115a2908263ffffffff61162216565b600160a060020a03831660009081526001602052604090819020919091557f30385c845b448a36257a6a1716e6ad2e1bc2cbe333cde1e69fe849ad6511adfe908390839051600160a060020a03909216825260208201526040908101905180910390a15b5b5050565b60008282111561161757fe5b508082035b92915050565b60008282018381101561163157fe5b8091505b5092915050565b60045433600160a060020a0390811691161461165757600080fd5b6004805460a060020a60ff02191660a060020a1790555b5b565b60015b90565b600160a060020a0333166000908152600160205260408120546116a0908363ffffffff61160b16565b600160a060020a0333811660009081526001602052604080822093909355908516815220546116d5908363ffffffff61162216565b600160a060020a0380851660008181526001602052604090819020939093559133909116906000805160206117fa8339815191529085905190815260200160405180910390a35060015b92915050565b600160a060020a038116151561173a57600080fd5b60088054600160a060020a031916600160a060020a0383161790555b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061179a57805160ff19168380011785556117c7565b828001600101855582156117c7579182015b828111156117c75782518255916020019190600101906117ac565b5b506117d49291506117d8565b5090565b610f1391905b808211156117d457600081556001016117de565b5090565b905600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925a165627a7a7230582081828f9ae489ed77919587782a892cfe871396b934c3819f5804c4d9732b6c1e002900000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f000000000000000000000000800e1dcc20d95e60ff8b3106e6eaa1cb73d5d16f00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007487562696974730000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034842540000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x606060405236156101855763ffffffff60e060020a60003504166302f652a3811461018a57806305d2035b146101b057806306fdde03146101d7578063095ea7b31461026257806318160ddd1461029857806323b872dd146102bd57806329ff4f53146102f9578063313ce5671461031a57806340c10f191461034357806342c1867b14610367578063432146751461039a57806345977d03146103c05780634eee966f146103d85780635de4ccb01461046d5780635f412d4f1461049c578063600440cb146104b157806370a08231146104e05780638444b39114610511578063867c2857146105485780638da5cb5b1461057b57806395d89b41146105aa57806396132521146106355780639738968c1461065c578063a9059cbb14610683578063ac3cb72c146106b9578063c752ff62146106ef578063d1f276d314610714578063d7e7088a14610743578063dd62ed3e14610764578063e2301d021461079b578063ea56a44d146107d1578063eefa597b146107f2578063f2fde38b14610819575b600080fd5b341561019557600080fd5b6101ae600160a060020a0360043516602435151561083a565b005b34156101bb57600080fd5b6101c361089b565b604051901515815260200160405180910390f35b34156101e257600080fd5b6101ea6108a4565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102275780820151818401525b60200161020e565b50505050905090810190601f1680156102545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561026d57600080fd5b6101c3600160a060020a0360043516602435610942565b604051901515815260200160405180910390f35b34156102a357600080fd5b6102ab6109d7565b60405190815260200160405180910390f35b34156102c857600080fd5b6101c3600160a060020a03600435811690602435166044356109dd565b604051901515815260200160405180910390f35b341561030457600080fd5b6101ae600160a060020a0360043516610a34565b005b341561032557600080fd5b61032d610a8b565b60405160ff909116815260200160405180910390f35b341561034e57600080fd5b6101ae600160a060020a0360043516602435610a94565b005b341561037257600080fd5b6101c3600160a060020a0360043516610acb565b604051901515815260200160405180910390f35b34156103a557600080fd5b6101ae600160a060020a03600435166024351515610ae0565b005b34156103cb57600080fd5b6101ae600435610b7f565b005b34156103e357600080fd5b6101ae60046024813581810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284378201915050505050509190803590602001908201803590602001908080601f016020809104026020016040519081016040528181529291906020840183838082843750949650610ceb95505050505050565b005b341561047857600080fd5b610480610e5b565b604051600160a060020a03909116815260200160405180910390f35b34156104a757600080fd5b6101ae610e6a565b005b34156104bc57600080fd5b610480610e9e565b604051600160a060020a03909116815260200160405180910390f35b34156104eb57600080fd5b6102ab600160a060020a0360043516610ead565b60405190815260200160405180910390f35b341561051c57600080fd5b610524610ecc565b6040518082600481111561053457fe5b60ff16815260200191505060405180910390f35b341561055357600080fd5b6101c3600160a060020a0360043516610f19565b604051901515815260200160405180910390f35b341561058657600080fd5b610480610f2e565b604051600160a060020a03909116815260200160405180910390f35b34156105b557600080fd5b6101ea610f3d565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102275780820151818401525b60200161020e565b50505050905090810190601f1680156102545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561064057600080fd5b6101c3610fdb565b604051901515815260200160405180910390f35b341561066757600080fd5b6101c3610feb565b604051901515815260200160405180910390f35b341561068e57600080fd5b6101c3600160a060020a0360043516602435611011565b604051901515815260200160405180910390f35b34156106c457600080fd5b6101c3600160a060020a0360043516602435611066565b604051901515815260200160405180910390f35b34156106fa57600080fd5b6102ab6110fb565b60405190815260200160405180910390f35b341561071f57600080fd5b610480611101565b604051600160a060020a03909116815260200160405180910390f35b341561074e57600080fd5b6101ae600160a060020a0360043516611110565b005b341561076f57600080fd5b6102ab600160a060020a03600435811690602435166112bc565b60405190815260200160405180910390f35b34156107a657600080fd5b6101c3600160a060020a03600435166024356112e9565b604051901515815260200160405180910390f35b34156107dc57600080fd5b6101ae600160a060020a03600435166113d3565b005b34156107fd57600080fd5b6101c36113fb565b604051901515815260200160405180910390f35b341561082457600080fd5b6101ae600160a060020a0360043516611401565b005b60035433600160a060020a0390811691161461085557600080fd5b60045460009060a060020a900460ff161561086f57600080fd5b600160a060020a0383166000908152600560205260409020805460ff19168315151790555b5b505b5050565b60065460ff1681565b600c8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561093a5780601f1061090f5761010080835404028352916020019161093a565b820191906000526020600020905b81548152906001019060200180831161091d57829003601f168201915b505050505081565b60008115806109745750600160a060020a03338116600090815260026020908152604080832093871683529290522054155b151561097f57600080fd5b600160a060020a033381166000818152600260209081526040808320948816808452949091529081902085905560008051602061181a8339815191529085905190815260200160405180910390a35060015b92915050565b60005481565b600454600090849060a060020a900460ff1680610a125750600160a060020a03811660009081526005602052604090205460ff165b1515610a1d57600080fd5b610a28858585611451565b91505b5b509392505050565b60035433600160a060020a03908116911614610a4f57600080fd5b60045460009060a060020a900460ff1615610a6957600080fd5b60048054600160a060020a031916600160a060020a0384161790555b5b505b50565b600b5460ff1681565b600160a060020a03331660009081526007602052604090205460ff161515610abb57600080fd5b6108978282611554565b5b5b5050565b60076020526000908152604090205460ff1681565b60035433600160a060020a03908116911614610afb57600080fd5b60065460ff1615610b0b57600080fd5b600160a060020a03821660009081526007602052604090819020805460ff19168315151790557f4b0adf6c802794c7dde28a08a4e07131abcff3bf9603cd71f14f90bec7865efa908390839051600160a060020a039092168252151560208201526040908101905180910390a15b5b5b5050565b6000610b89610ecc565b905060035b816004811115610b9a57fe5b1480610bb2575060045b816004811115610bb057fe5b145b1515610bbd57600080fd5b811515610bc957600080fd5b600160a060020a033316600090815260016020526040902054610bf2908363ffffffff61160b16565b600160a060020a03331660009081526001602052604081209190915554610c1f908363ffffffff61160b16565b600055600a54610c35908363ffffffff61162216565b600a55600954600160a060020a031663753e88e5338460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515610c8e57600080fd5b6102c65a03f11515610c9f57600080fd5b5050600954600160a060020a03908116915033167f7e5c344a8141a805725cb476f76c6953b842222b967edd1f78ddb6e8b3f397ac8460405190815260200160405180910390a35b5050565b60035433600160a060020a03908116911614610d0657600080fd5b600c828051610d19929160200190611759565b50600d818051610d2d929160200190611759565b507fd131ab1e6f279deea74e13a18477e13e2107deb6dc8ae955648948be5841fb46600c600d604051604080825283546002600019610100600184161502019091160490820181905281906020820190606083019086908015610dd15780601f10610da657610100808354040283529160200191610dd1565b820191906000526020600020905b815481529060010190602001808311610db457829003601f168201915b5050838103825284546002600019610100600184161502019091160480825260209091019085908015610e455780601f10610e1a57610100808354040283529160200191610e45565b820191906000526020600020905b815481529060010190602001808311610e2857829003601f168201915b505094505050505060405180910390a15b5b5050565b600954600160a060020a031681565b60045433600160a060020a03908116911614610e8557600080fd5b6006805460ff19166001179055610e9a61163c565b5b5b565b600854600160a060020a031681565b600160a060020a0381166000908152600160205260409020545b919050565b6000610ed6610feb565b1515610ee457506001610f13565b600954600160a060020a03161515610efe57506002610f13565b600a541515610f0f57506003610f13565b5060045b5b5b5b90565b60056020526000908152604090205460ff1681565b600354600160a060020a031681565b600d8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561093a5780601f1061090f5761010080835404028352916020019161093a565b820191906000526020600020905b81548152906001019060200180831161091d57829003601f168201915b505050505081565b60045460a060020a900460ff1681565b60045460009060a060020a900460ff16801561100a575061100a6113fb565b5b90505b90565b600454600090339060a060020a900460ff16806110465750600160a060020a03811660009081526005602052604090205460ff165b151561105157600080fd5b61105b8484611677565b91505b5b5092915050565b600160a060020a03338116600090815260026020908152604080832093861683529290529081205461109e818463ffffffff61162216565b600160a060020a033381166000818152600260209081526040808320948a1680845294909152908190208490559192909160008051602061181a83398151915291905190815260200160405180910390a3600191505b5092915050565b600a5481565b600454600160a060020a031681565b611118610feb565b151561112357600080fd5b600160a060020a038116151561113857600080fd5b60085433600160a060020a0390811691161461115357600080fd5b60045b61115e610ecc565b600481111561116957fe5b141561117457600080fd5b60098054600160a060020a031916600160a060020a038381169190911791829055166361d3d7a66000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156111d257600080fd5b6102c65a03f115156111e357600080fd5b5050506040518051905015156111f857600080fd5b600080546009549091600160a060020a0390911690634b2ba0dd90604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561124857600080fd5b6102c65a03f1151561125957600080fd5b5050506040518051905014151561126f57600080fd5b6009547f7845d5aa74cc410e35571258d954f23b82276e160fe8c188fa80566580f279cc90600160a060020a0316604051600160a060020a03909116815260200160405180910390a15b50565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b600160a060020a0333811660009081526002602090815260408083209386168352929052908120548083111561134657600160a060020a03338116600090815260026020908152604080832093881683529290529081205561137d565b61109e818463ffffffff61160b16565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a03338116600081815260026020908152604080832094891680845294909152908190205460008051602061181a833981519152915190815260200160405180910390a3600191505b5092915050565b60085433600160a060020a039081169116146113ee57600080fd5b610a8881611725565b5b50565b60015b90565b60035433600160a060020a0390811691161461141c57600080fd5b600160a060020a038116151561143157600080fd5b60038054600160a060020a031916600160a060020a0383161790555b5b50565b600160a060020a038084166000908152600260209081526040808320338516845282528083205493861683526001909152812054909190611498908463ffffffff61162216565b600160a060020a0380861660009081526001602052604080822093909355908716815220546114cd908463ffffffff61160b16565b600160a060020a0386166000908152600160205260409020556114f6818463ffffffff61160b16565b600160a060020a03808716600081815260026020908152604080832033861684529091529081902093909355908616916000805160206117fa8339815191529086905190815260200160405180910390a3600191505b509392505050565b60065460ff161561156457600080fd5b600054611577908263ffffffff61162216565b6000908155600160a060020a0383168152600160205260409020546115a2908263ffffffff61162216565b600160a060020a03831660009081526001602052604090819020919091557f30385c845b448a36257a6a1716e6ad2e1bc2cbe333cde1e69fe849ad6511adfe908390839051600160a060020a03909216825260208201526040908101905180910390a15b5b5050565b60008282111561161757fe5b508082035b92915050565b60008282018381101561163157fe5b8091505b5092915050565b60045433600160a060020a0390811691161461165757600080fd5b6004805460a060020a60ff02191660a060020a1790555b5b565b60015b90565b600160a060020a0333166000908152600160205260408120546116a0908363ffffffff61160b16565b600160a060020a0333811660009081526001602052604080822093909355908516815220546116d5908363ffffffff61162216565b600160a060020a0380851660008181526001602052604090819020939093559133909116906000805160206117fa8339815191529085905190815260200160405180910390a35060015b92915050565b600160a060020a038116151561173a57600080fd5b60088054600160a060020a031916600160a060020a0383161790555b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061179a57805160ff19168380011785556117c7565b828001600101855582156117c7579182015b828111156117c75782518255916020019190600101906117ac565b5b506117d49291506117d8565b5090565b610f1391905b808211156117d457600081556001016117de565b5090565b905600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925a165627a7a7230582081828f9ae489ed77919587782a892cfe871396b934c3819f5804c4d9732b6c1e0029

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

00000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f000000000000000000000000800E1Dcc20D95e60fF8B3106e6EaA1cB73D5D16f00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007487562696974730000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034842540000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _name (string): Hubiits
Arg [1] : _symbol (string): HBT
Arg [2] : _initialSupply (uint256): 0
Arg [3] : _decimals (uint8): 15
Arg [4] : _multisig (address): 0x800E1Dcc20D95e60fF8B3106e6EaA1cB73D5D16f
Arg [5] : _mintable (bool): True

-----Encoded View---------------
10 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000100
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [3] : 000000000000000000000000000000000000000000000000000000000000000f
Arg [4] : 000000000000000000000000800E1Dcc20D95e60fF8B3106e6EaA1cB73D5D16f
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000007
Arg [7] : 4875626969747300000000000000000000000000000000000000000000000000
Arg [8] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [9] : 4842540000000000000000000000000000000000000000000000000000000000


Swarm Source

bzzr://81828f9ae489ed77919587782a892cfe871396b934c3819f5804c4d9732b6c1e

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.