Contract 0xa645264C5603E96c3b0B078cdab68733794B0A71 1

 
Txn Hash Method
Block
From
To
Value
0xfd659f83edcd62bcfcb2cd32b3d6f2a4c41c70c211f80c605b02d2cc9ab31b57Upgrade(pending)2021-09-17 19:34:291 hr 10 mins ago0x1c8d2f8f64ddc032220481c111ee1ef845844102 IN Mysterium Token0 Ether(Pending)(Pending)
0x95a4400e8d465001347eae189a7d2b7bbaae95e17660d1307a181a74b84d82fdUpgrade132409212021-09-17 3:48:3916 hrs 56 mins ago0xe89e7c684c40f528acd005186f304143239478d6 IN  Mysterium Token0 Ether0.003754011662 60.667954085
0xc9394d9a084d78741cfc5308f32da16836ea5be26f08e5f7eb5dc5bcb1971c5aUpgrade132408902021-09-17 3:41:3717 hrs 3 mins ago0xe89e7c684c40f528acd005186f304143239478d6 IN  Mysterium Token0 Ether0.00568233908 71.981189737
0x699477eaf551deaa8248786b92de3e71c1fa46b68e7d1146f4864532f0a51b44Upgrade132293962021-09-15 9:06:342 days 11 hrs ago0x6c7b7b774297f592ad655dddec109c8f1473a28d IN  Mysterium Token0 Ether0.002886504356 38.913213569
0xc59c651d1c9ec90d192b755a4ccc584733c66e46191ee0a33b0fa25cb75188a3Transfer132127842021-09-12 19:14:085 days 1 hr ago0x245d5dfd1e783b6c101b9c84a5e17d8ec8752674 IN  Mysterium Token0 Ether0.00102949
0xc5b2d4ff67bf71af414e4724cf8179b98eb8aa6e942069062e82cbf156652e14Upgrade131992392021-09-10 16:56:447 days 3 hrs ago0xa49ec4fd375d7121eb64faa1344790e923b4cce3 IN  Mysterium Token0 Ether0.0057572472477.601391564
0xa70b2fe162c1202e12a1afae87a928493a4ce79fe4f70df02440edd2b584bd3aTransfer131942332021-09-09 22:19:047 days 22 hrs agoBittrex IN  Mysterium Token0 Ether0.00478350216396.268835431
0x69987e64a37383b68ecfe2e7f665b334f7fad3ba4974e069c87a05d378f03274Upgrade131720052021-09-06 11:52:4111 days 8 hrs ago0xcee18a2b2972cd766e44c9890a9f33f6376739df IN  Mysterium Token0 Ether0.00741007434499.879691939
0x9cd2ca736ae7ad98b1868b6fcbadeecbac65238c0eab84e8004f8cf41f3fdd67Upgrade131692942021-09-06 1:37:1411 days 19 hrs ago0x6cc380ddcf710070efc10ed7e4cb7b4a0d228f8c IN  Mysterium Token0 Ether0.003594864941 85.592022422
0x74486af2c8876cc23ac2fa1316cd96ef86c938c240adf698d90ccdd41e6c48f0Upgrade131515652021-09-03 8:06:0714 days 12 hrs ago0xbb68f52847777c3da2993fd82c2506f5e246e828 IN  Mysterium Token0 Ether0.009874680532133.099885863
0x314788b826df31112f9eadc2116cc434945483a442b5fe4a84c52c67bc142a6aTransfer131396902021-09-01 12:01:5616 days 8 hrs ago0x614cfcdbc83793c023ba3f408406ab479b7c826e IN  Mysterium Token0 Ether0.004485005037 90.261527455
0x8f77289c2cded715746f771cc87cfa0984a5556e9d0a35634c9163f306b46b8aUpgrade131361232021-08-31 22:51:3116 days 21 hrs ago0xb398cf202259a206b4a3511d5216c49a15d53169 IN  Mysterium Token0 Ether0.005193370
0xa2954b62cdf9a2f268a4f57dbfb3312e5908e7f2f20a35a126fa643ac9b2bebbUpgrade131225632021-08-29 20:36:0219 days 9 mins ago0x6c3ba38fd4dfc7db737796b1db957ee2ceeee5d0 IN  Mysterium Token0 Ether0.0069654095393.886096924
0x7dcb7cfbc21a12029ac863383f2aa162fff35b624d28d458042a6525fbadb1eeTransfer131222722021-08-29 19:36:0319 days 1 hr ago0x6c3ba38fd4dfc7db737796b1db957ee2ceeee5d0 IN  Mysterium Token0 Ether0.010526934547116.965939421
0x769e798fd8ccdd2c37b110ce2fe2f2f021efe7614f38f47283fe3592dfa73a8fTransfer131221672021-08-29 19:11:2419 days 1 hr ago0x4ef5f865dcc846e62fe49fca385fd99adca987bd IN  Mysterium Token0 Ether0.00439280036134.79395993
0x34db1f4570ef1b7dd55da1faffddb0d0f617b3ba65bf6db01bab5c539512bd7aTransfer131212942021-08-29 15:55:4019 days 4 hrs ago0xef834a287a4bd2065f60a9c200b1da7da100ae40 IN  Mysterium Token0 Ether0.006114983693123.0948667
0x90b99c0c045fd1733ae97b711d0ea854144408d5c23bcd1a1ea3abd37213d220Upgrade131184692021-08-29 5:15:5719 days 15 hrs ago0xac2cd2f1d3395cc59d6620e526192689e90c7314 IN  Mysterium Token0 Ether0.00348109296546.921323166
0x2d405e64ddd0cf20fc31a68072eb3d03e66bf891fa500157ce035064a57a1540Upgrade131181532021-08-29 4:05:1119 days 16 hrs ago0xa42b20c73869342c0a1fda34d0ad1c07a589b302 IN  Mysterium Token0 Ether0.00532848280871.810501177
0x3118381f934355d8a74d6b52e281fe8cccb629d8f34812d6ea82e6676ea132d9Transfer130867402021-08-24 7:38:5524 days 13 hrs ago0x92bf02c94ebf6b4fd6ecc039eeca87ca2a96125a IN  Mysterium Token0 Ether0.00298454635960.06452855
0x8e7eb4d4b7be04a3470b22fb95c7e95b30ceed4697fb524f3634c3b4285ec938Upgrade130712842021-08-21 22:15:1126 days 22 hrs ago0x8b9989fc59b7a5c33e59335aae933ea31b08db30 IN  Mysterium Token0 Ether0.0033385545
0xfacbdd3b0df77bc8cf01ee3e9d0728f1a583c9fe24abc617dbc5897661d97905Upgrade130638292021-08-20 18:51:0828 days 1 hr ago0x90864bc4e58c9f208447254a745bcc24b8c4f505 IN  Mysterium Token0 Ether0.002679716915 36.119651102
0x4c8c7de76fbd71c073fef8cc6a20eab11210003bf86c7cae2542038bf11c31a4Upgrade130631232021-08-20 16:13:0528 days 4 hrs ago0x5eb1ca2d9d250ffad144c7b6f0191fafc97ae1ee IN  Mysterium Token0 Ether0.00587890951879.241265916
0x21a282617f7b3b25afe99ad9dca2ed52ad4c5a47171257239fbb6b59fcb94740Upgrade130588452021-08-19 23:57:4628 days 20 hrs ago0x13598c138e1c04ceaf1d5bcd9591526c57b6d264 IN  Mysterium Token0 Ether0.00181362223724.445642781
0xc5b09f46be623f68b53235f704015a5c0ab536f19ce0aa184d9964eb1d1d548fTransfer130531122021-08-19 3:02:2429 days 17 hrs agoENS Name foreverbull.eth IN  Mysterium Token0 Ether0.00258385812 28.709534677
0x8939f040202fd2336953ed88ec15d2eb13d9c9de72244c005008feb8231ff5a0Transfer130530882021-08-19 2:58:5729 days 17 hrs agoENS Name foreverbull.eth IN  Mysterium Token0 Ether0.000603575938 28.74171135
[ Download CSV Export 
View more zero value Internal Transactions in Advanced View mode
Loading
This contract contains unverified libraries: SafeMathLib

Contract Source Code Verified (Exact Match)

Contract Name:
CrowdsaleToken

Compiler Version
v0.4.8+commit.60cc1668

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2017-05-29
*/

/*
 * ERC20 interface
 * see https://github.com/ethereum/EIPs/issues/20
 */
contract ERC20 {
  uint public totalSupply;
  function balanceOf(address who) constant returns (uint);
  function allowance(address owner, address spender) constant returns (uint);

  function transfer(address to, uint value) returns (bool ok);
  function transferFrom(address from, address to, uint value) returns (bool ok);
  function approve(address spender, uint value) returns (bool ok);
  event Transfer(address indexed from, address indexed to, uint value);
  event Approval(address indexed owner, address indexed spender, uint value);
}



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

  function safeDiv(uint a, uint b) internal returns (uint) {
    assert(b > 0);
    uint c = a / b;
    assert(a == b * c + a % b);
    return c;
  }

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

  function safeAdd(uint a, uint b) internal returns (uint) {
    uint c = a + b;
    assert(c>=a && c>=b);
    return c;
  }

  function max64(uint64 a, uint64 b) internal constant returns (uint64) {
    return a >= b ? a : b;
  }

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

  function max256(uint256 a, uint256 b) internal constant returns (uint256) {
    return a >= b ? a : b;
  }

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

  function assert(bool assertion) internal {
    if (!assertion) {
      throw;
    }
  }
}



/**
 * Standard ERC20 token with Short Hand Attack and approve() race condition mitigation.
 *
 * Based on code by FirstBlood:
 * https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
 */
contract StandardToken is ERC20, SafeMath {

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

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

  /* approve() allowances */
  mapping (address => mapping (address => uint)) allowed;

  /**
   *
   * 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) {
       throw;
     }
     _;
  }

  function transfer(address _to, uint _value) onlyPayloadSize(2 * 32) returns (bool success) {
    balances[msg.sender] = safeSub(balances[msg.sender], _value);
    balances[_to] = safeAdd(balances[_to], _value);
    Transfer(msg.sender, _to, _value);
    return true;
  }

  function transferFrom(address _from, address _to, uint _value) returns (bool success) {
    uint _allowance = allowed[_from][msg.sender];

    // Check is not needed because safeSub(_allowance, _value) will already throw if this condition is not met
    // if (_value > _allowance) throw;

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

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

  function approve(address _spender, uint _value) returns (bool success) {

    // To change the approve amount you first have to reduce the addresses`
    //  allowance to zero by calling `approve(_spender, 0)` if it is not
    //  already 0 to mitigate the race condition described here:
    //  https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
    if ((_value != 0) && (allowed[msg.sender][_spender] != 0)) throw;

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

  function allowance(address _owner, address _spender) constant returns (uint remaining) {
    return allowed[_owner][_spender];
  }

  /**
   * Atomic increment of approved spending
   *
   * Works around https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
   *
   */
  function addApproval(address _spender, uint _addedValue)
  onlyPayloadSize(2 * 32)
  returns (bool success) {
      uint oldValue = allowed[msg.sender][_spender];
      allowed[msg.sender][_spender] = safeAdd(oldValue, _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)
  onlyPayloadSize(2 * 32)
  returns (bool success) {

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

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

}





/**
 * Upgrade agent interface inspired by Lunyr.
 *
 * Upgrade agent transfers tokens to a new contract.
 * Upgrade agent itself can be the token contract, or just a middle man contract doing the heavy lifting.
 */
contract UpgradeAgent {

  uint public originalSupply;

  /** Interface marker */
  function isUpgradeAgent() public constant returns (bool) {
    return true;
  }

  function upgradeFrom(address _from, uint256 _value) public;

}


/**
 * A token upgrade mechanism where users can opt-in amount of tokens to the next smart contract revision.
 *
 * First envisioned by Golem and Lunyr projects.
 */
contract UpgradeableToken is StandardToken {

  /** Contract / person who can set the upgrade path. This can be the same as team multisig wallet, as what it is with its default value. */
  address public upgradeMaster;

  /** The next contract where the tokens will be migrated. */
  UpgradeAgent public upgradeAgent;

  /** How many tokens we have upgraded by now. */
  uint256 public totalUpgraded;

  /**
   * Upgrade states.
   *
   * - NotAllowed: The child contract has not reached a condition where the upgrade can bgun
   * - WaitingForAgent: Token allows upgrade, but we don't have a new agent yet
   * - ReadyToUpgrade: The agent is set, but not a single token has been upgraded yet
   * - Upgrading: Upgrade agent is set and the balance holders can upgrade their tokens
   *
   */
  enum UpgradeState {Unknown, NotAllowed, WaitingForAgent, ReadyToUpgrade, Upgrading}

  /**
   * Somebody has upgraded some of his tokens.
   */
  event Upgrade(address indexed _from, address indexed _to, uint256 _value);

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

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

  /**
   * Allow the token holder to upgrade some of their tokens to a new contract.
   */
  function upgrade(uint256 value) public {

      UpgradeState state = getUpgradeState();
      if(!(state == UpgradeState.ReadyToUpgrade || state == UpgradeState.Upgrading)) {
        // Called in a bad state
        throw;
      }

      // Validate input value.
      if (value == 0) throw;

      balances[msg.sender] = safeSub(balances[msg.sender], value);

      // Take tokens out from circulation
      totalSupply = safeSub(totalSupply, value);
      totalUpgraded = safeAdd(totalUpgraded, value);

      // Upgrade agent reissues the tokens
      upgradeAgent.upgradeFrom(msg.sender, value);
      Upgrade(msg.sender, upgradeAgent, value);
  }

  /**
   * Set an upgrade agent that handles
   */
  function setUpgradeAgent(address agent) external {

      if(!canUpgrade()) {
        // The token is not yet in a state that we could think upgrading
        throw;
      }

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

      upgradeAgent = UpgradeAgent(agent);

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

      UpgradeAgentSet(upgradeAgent);
  }

  /**
   * Get the state of the token upgrade.
   */
  function getUpgradeState() public constant returns(UpgradeState) {
    if(!canUpgrade()) return UpgradeState.NotAllowed;
    else if(address(upgradeAgent) == 0x00) return UpgradeState.WaitingForAgent;
    else if(totalUpgraded == 0) return UpgradeState.ReadyToUpgrade;
    else return UpgradeState.Upgrading;
  }

  /**
   * Change the upgrade master.
   *
   * This allows us to set a new owner for the upgrade mechanism.
   */
  function setUpgradeMaster(address master) public {
      if (master == 0x0) throw;
      if (msg.sender != upgradeMaster) throw;
      upgradeMaster = master;
  }

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

}




/*
 * Ownable
 *
 * Base contract with an owner.
 * Provides onlyOwner modifier, which prevents function from running if it is called by anyone other than the owner.
 */
contract Ownable {
  address public owner;

  function Ownable() {
    owner = msg.sender;
  }

  modifier onlyOwner() {
    if (msg.sender != owner) {
      throw;
    }
    _;
  }

  function transferOwnership(address newOwner) onlyOwner {
    if (newOwner != address(0)) {
      owner = newOwner;
    }
  }

}




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

  /* The finalizer contract that allows unlift the transfer limits on this token */
  address public releaseAgent;

  /** A crowdsale contract can release us to the wild if ICO success. If false we are are in transfer lock up period.*/
  bool public released = false;

  /** Map of agents that are allowed to transfer tokens regardless of the lock down period. These are crowdsale contracts and possible the team multisig itself. */
  mapping (address => bool) public transferAgents;

  /**
   * Limit token transfer until the crowdsale is over.
   *
   */
  modifier canTransfer(address _sender) {

    if(!released) {
        if(!transferAgents[_sender]) {
            throw;
        }
    }

    _;
  }

  /**
   * Set the contract that can call release and make the token transferable.
   *
   * Design choice. Allow reset the release agent to fix fat finger mistakes.
   */
  function setReleaseAgent(address addr) onlyOwner inReleaseState(false) public {

    // We don't do interface check here as we might want to a normal wallet address to act as a release agent
    releaseAgent = addr;
  }

  /**
   * Owner can allow a particular address (a crowdsale contract) to transfer tokens despite the lock up period.
   */
  function setTransferAgent(address addr, bool state) onlyOwner inReleaseState(false) public {
    transferAgents[addr] = state;
  }

  /**
   * One way function to release the tokens to the wild.
   *
   * Can be called only from the release agent that is the final ICO contract. It is only called if the crowdsale has been success (first milestone reached).
   */
  function releaseTokenTransfer() public onlyReleaseAgent {
    released = true;
  }

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

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

  function transfer(address _to, uint _value) canTransfer(msg.sender) returns (bool success) {
    // Call StandardToken.transfer()
   return super.transfer(_to, _value);
  }

  function transferFrom(address _from, address _to, uint _value) canTransfer(_from) returns (bool success) {
    // Call StandardToken.transferForm()
    return super.transferFrom(_from, _to, _value);
  }

}





/**
 * Safe unsigned safe math.
 *
 * https://blog.aragon.one/library-driven-development-in-solidity-2bebcaf88736#.750gwtwli
 *
 * Originally from https://raw.githubusercontent.com/AragonOne/zeppelin-solidity/master/contracts/SafeMathLib.sol
 *
 * Maintained here until merged to mainline zeppelin-solidity.
 *
 */
library SafeMathLib {

  function times(uint a, uint b) returns (uint) {
    uint c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }

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

  function plus(uint a, uint b) returns (uint) {
    uint c = a + b;
    assert(c>=a && c>=b);
    return c;
  }

  function assert(bool assertion) private {
    if (!assertion) throw;
  }
}



/**
 * A token that can increase its supply by another contract.
 *
 * This allows uncapped crowdsale by dynamically increasing the supply when money pours in.
 * Only mint agents, contracts whitelisted by owner, can mint new tokens.
 *
 */
contract MintableToken is StandardToken, Ownable {

  using SafeMathLib for uint;

  bool public mintingFinished = false;

  /** List of agents that are allowed to create new tokens */
  mapping (address => bool) public mintAgents;

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

    if(amount == 0) {
      throw;
    }

    totalSupply = totalSupply.plus(amount);
    balances[receiver] = balances[receiver].plus(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;
  }

  modifier onlyMintAgent() {
    // Only crowdsale contracts are allowed to mint new tokens
    if(!mintAgents[msg.sender]) {
        throw;
    }
    _;
  }

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




/**
 * A crowdsaled token.
 *
 * An ERC-20 token designed specifically for crowdsales with investor protection and further development path.
 *
 * - The token transfer() is disabled until the crowdsale is over
 * - The token contract gives an opt-in upgrade path to a new contract
 * - The same token can be part of several crowdsales through approve() mechanism
 * - The token can be capped (supply set in the constructor) or uncapped (crowdsale contract can mint new tokens)
 *
 */
contract CrowdsaleToken is ReleasableToken, MintableToken, UpgradeableToken {

  event UpdatedTokenInformation(string newName, string newSymbol);

  string public name;

  string public symbol;

  uint public decimals;

  /**
   * Construct the token.
   *
   * This token must be created through a team multisig wallet, so that it is owned by that wallet.
   */
  function CrowdsaleToken(string _name, string _symbol, uint _initialSupply, uint _decimals)
    UpgradeableToken(msg.sender) {

    // Create any address, can be transferred
    // to team multisig via changeOwner(),
    // also remember to call setUpgradeMaster()
    owner = msg.sender;

    name = _name;
    symbol = _symbol;

    totalSupply = _initialSupply;

    decimals = _decimals;

    // Create initially all balance on the team multisig
    balances[owner] = totalSupply;
  }

  /**
   * When token is released to be transferable, enforce no new tokens can be created.
   */
  function releaseTokenTransfer() public onlyReleaseAgent {
    mintingFinished = true;
    super.releaseTokenTransfer();
  }

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

  /**
   * 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":"uint256"}],"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":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"master","type":"address"}],"name":"setUpgradeMaster","outputs":[],"payable":false,"type":"function"},{"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_initialSupply","type":"uint256"},{"name":"_decimals","type":"uint256"}],"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":"receiver","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Minted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"}]

60606040526004805460a060020a60ff02191690556006805460ff1916905534620000005760405162001ab638038062001ab683398101604090815281516020830151918301516060840151918401939290920191905b335b5b60038054600160a060020a03191633600160a060020a03161790555b60088054600160a060020a031916600160a060020a0383161790555b5060038054600160a060020a03191633600160a060020a03161790558351600b8054600082905290917f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db9602060026101006001861615026000190190941693909304601f9081018490048201938901908390106200011b57805160ff19168380011785556200014b565b828001600101855582156200014b579182015b828111156200014b5782518255916020019190600101906200012e565b5b506200016f9291505b808211156200016b576000815560010162000155565b5090565b505082600c9080519060200190828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001bf57805160ff1916838001178555620001ef565b82800160010185558215620001ef579182015b82811115620001ef578251825591602001919060010190620001d2565b5b50620002139291505b808211156200016b576000815560010162000155565b5090565b50506000828155600d829055600354600160a060020a031681526001602052604090208290555b505050505b611867806200024f6000396000f3006060604052361561017a5763ffffffff60e060020a60003504166302f652a3811461017f57806305d2035b1461019f57806306fdde03146101c0578063095ea7b31461024d57806318160ddd1461027d57806323b872dd1461029c57806329ff4f53146102d2578063313ce567146102ed57806340c10f191461030c57806342c1867b1461032a578063432146751461035757806345977d03146103775780634eee966f146103895780635de4ccb01461041b5780635f412d4f14610444578063600440cb1461045357806370a082311461047c5780638444b391146104a7578063867c2857146104d55780638da5cb5b1461050257806395d89b411461052b57806396132521146105b85780639738968c146105d9578063a9059cbb146105fa578063ac3cb72c1461062a578063c752ff621461065a578063d1f276d314610679578063d7e7088a146106a2578063dd62ed3e146106bd578063e2301d02146106ee578063f2fde38b1461071e578063ffeb7d7514610739575b610000565b346100005761019d600160a060020a03600435166024351515610754565b005b34610000576101ac6107b5565b604080519115158252519081900360200190f35b34610000576101cd6107be565b604080516020808252835181830152835191928392908301918501908083838215610213575b80518252602083111561021357601f1990920191602091820191016101f3565b505050905090810190601f16801561023f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34610000576101ac600160a060020a036004351660243561084c565b604080519115158252519081900360200190f35b346100005761028a6108f2565b60408051918252519081900360200190f35b34610000576101ac600160a060020a03600435811690602435166044356108f8565b604080519115158252519081900360200190f35b346100005761019d600160a060020a036004351661094f565b005b346100005761028a6109a6565b60408051918252519081900360200190f35b346100005761019d600160a060020a03600435166024356109ac565b005b34610000576101ac600160a060020a0360043516610b59565b604080519115158252519081900360200190f35b346100005761019d600160a060020a03600435166024351515610b6e565b005b346100005761019d600435610bc4565b005b346100005761019d600480803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284375050604080516020601f89358b01803591820183900483028401830190945280835297999881019791965091820194509250829150840183828082843750949650610d2395505050505050565b005b3461000057610428610fa6565b60408051600160a060020a039092168252519081900360200190f35b346100005761019d610fb5565b005b3461000057610428610fe9565b60408051600160a060020a039092168252519081900360200190f35b346100005761028a600160a060020a0360043516610ff8565b60408051918252519081900360200190f35b34610000576104b4611017565b6040518082600481116100005760ff16815260200191505060405180910390f35b34610000576101ac600160a060020a0360043516611064565b604080519115158252519081900360200190f35b3461000057610428611079565b60408051600160a060020a039092168252519081900360200190f35b34610000576101cd611088565b604080516020808252835181830152835191928392908301918501908083838215610213575b80518252602083111561021357601f1990920191602091820191016101f3565b505050905090810190601f16801561023f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34610000576101ac611116565b604080519115158252519081900360200190f35b34610000576101ac611126565b604080519115158252519081900360200190f35b34610000576101ac600160a060020a0360043516602435611137565b604080519115158252519081900360200190f35b34610000576101ac600160a060020a036004351660243561118c565b604080519115158252519081900360200190f35b346100005761028a61123f565b60408051918252519081900360200190f35b3461000057610428611245565b60408051600160a060020a039092168252519081900360200190f35b346100005761019d600160a060020a0360043516611254565b005b346100005761028a600160a060020a036004358116906024351661140c565b60408051918252519081900360200190f35b34610000576101ac600160a060020a0360043516602435611439565b604080519115158252519081900360200190f35b346100005761019d600160a060020a0360043516611542565b005b346100005761019d600160a060020a036004351661158d565b005b60035433600160a060020a0390811691161461076f57610000565b60045460009060a060020a900460ff161561078957610000565b600160a060020a0383166000908152600560205260409020805460ff19168315151790555b5b505b5050565b60065460ff1681565b600b805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108445780601f1061081957610100808354040283529160200191610844565b820191906000526020600020905b81548152906001019060200180831161082757829003601f168201915b505050505081565b600081158015906108815750600160a060020a0333811660009081526002602090815260408083209387168352929052205415155b1561088b57610000565b600160a060020a03338116600081815260026020908152604080832094881680845294825291829020869055815186815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a35060015b92915050565b60005481565b600454600090849060a060020a900460ff16151561093757600160a060020a03811660009081526005602052604090205460ff16151561093757610000565b5b6109438585856115dc565b91505b5b509392505050565b60035433600160a060020a0390811691161461096a57610000565b60045460009060a060020a900460ff161561098457610000565b60048054600160a060020a031916600160a060020a0384161790555b5b505b50565b600d5481565b600160a060020a03331660009081526007602052604090205460ff1615156109d357610000565b60065460ff16156109e357610000565b8015156109ef57610000565b6000547366e853cd839e4c52415a03f13c34af1879c7a50f6366098d4f9091836000604051602001526040518363ffffffff1660e060020a028152600401808381526020018281526020019250505060206040518083038186803b156100005760325a03f4156100005750506040805180516000908155600160a060020a038616815260016020908152838220549281019190915282517f66098d4f00000000000000000000000000000000000000000000000000000000815260048101929092526024820185905291517366e853cd839e4c52415a03f13c34af1879c7a50f93506366098d4f92604480840193919291829003018186803b156100005760325a03f415610000575050604080518051600160a060020a03861660008181526001602090815290859020929092558252810184905281517f30385c845b448a36257a6a1716e6ad2e1bc2cbe333cde1e69fe849ad6511adfe93509081900390910190a15b5b5b5050565b60076020526000908152604090205460ff1681565b60035433600160a060020a03908116911614610b8957610000565b60065460ff1615610b9957610000565b600160a060020a0382166000908152600760205260409020805460ff19168215151790555b5b5b5050565b6000610bce611017565b905060038160048111610000571480610bef57506004816004811161000057145b1515610bfa57610000565b811515610c0657610000565b600160a060020a033316600090815260016020526040902054610c2990836116df565b600160a060020a03331660009081526001602052604081209190915554610c5090836116df565b600055600a54610c6090836116f8565b600a55600954604080517f753e88e5000000000000000000000000000000000000000000000000000000008152600160a060020a033381166004830152602482018690529151919092169163753e88e591604480830192600092919082900301818387803b156100005760325a03f115610000575050600954604080518581529051600160a060020a03928316935033909216917f7e5c344a8141a805725cb476f76c6953b842222b967edd1f78ddb6e8b3f397ac9181900360200190a35b5050565b60035433600160a060020a03908116911614610d3e57610000565b81600b9080519060200190828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610d8a57805160ff1916838001178555610db7565b82800160010185558215610db7579182015b82811115610db7578251825591602001919060010190610d9c565b5b50610dd89291505b80821115610dd45760008155600101610dc0565b5090565b505080600c9080519060200190828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610e2657805160ff1916838001178555610e53565b82800160010185558215610e53579182015b82811115610e53578251825591602001919060010190610e38565b5b50610e749291505b80821115610dd45760008155600101610dc0565b5090565b505060408051818152600b8054600260001961010060018416150201909116049282018390527fd131ab1e6f279deea74e13a18477e13e2107deb6dc8ae955648948be5841fb46929091600c9181906020820190606083019086908015610f1c5780601f10610ef157610100808354040283529160200191610f1c565b820191906000526020600020905b815481529060010190602001808311610eff57829003601f168201915b5050838103825284546002600019610100600184161502019091160480825260209091019085908015610f905780601f10610f6557610100808354040283529160200191610f90565b820191906000526020600020905b815481529060010190602001808311610f7357829003601f168201915b505094505050505060405180910390a15b5b5050565b600954600160a060020a031681565b60045433600160a060020a03908116911614610fd057610000565b6006805460ff19166001179055610fe5611720565b5b5b565b600854600160a060020a031681565b600160a060020a0381166000908152600160205260409020545b919050565b6000611021611126565b151561102f5750600161105e565b600954600160a060020a031615156110495750600261105e565b600a54151561105a5750600361105e565b5060045b5b5b5b90565b60056020526000908152604090205460ff1681565b600354600160a060020a031681565b600c805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108445780601f1061081957610100808354040283529160200191610844565b820191906000526020600020905b81548152906001019060200180831161082757829003601f168201915b505050505081565b60045460a060020a900460ff1681565b60045460a060020a900460ff165b90565b600454600090339060a060020a900460ff16151561117657600160a060020a03811660009081526005602052604090205460ff16151561117657610000565b5b6111818484611763565b91505b5b5092915050565b60008060403660441461119e57610000565b600160a060020a0333811660009081526002602090815260408083209389168352929052205491506111d082856116f8565b600160a060020a033381166000818152600260209081526040808320948b168084529482529182902085905581519485529051929391927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3600192505b5b505092915050565b600a5481565b600454600160a060020a031681565b61125c611126565b151561126757610000565b600160a060020a038116151561127c57610000565b60085433600160a060020a0390811691161461129757610000565b60046112a1611017565b600481116100005714156112b457610000565b60098054600160a060020a031916600160a060020a038381169190911791829055604080516000602091820181905282517f61d3d7a6000000000000000000000000000000000000000000000000000000008152925194909316936361d3d7a6936004808501948390030190829087803b156100005760325a03f115610000575050604051511515905061134757610000565b6000805460095460408051602090810185905281517f4b2ba0dd00000000000000000000000000000000000000000000000000000000815291519394600160a060020a0390931693634b2ba0dd936004808501948390030190829087803b156100005760325a03f115610000575050604051519190911490506113c957610000565b60095460408051600160a060020a039092168252517f7845d5aa74cc410e35571258d954f23b82276e160fe8c188fa80566580f279cc9181900360200190a15b50565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b60008060403660441461144b57610000565b600160a060020a033381166000908152600260209081526040808320938916835292905220549150818411156114a857600160a060020a0333811660009081526002602090815260408083209389168352929052908120556114d9565b6111d082856116df565b600160a060020a033381166000908152600260209081526040808320938a16835292905220555b600160a060020a033381166000818152600260209081526040808320948a168084529482529182902054825190815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3600192505b5b505092915050565b60035433600160a060020a0390811691161461155d57610000565b600160a060020a038116156109a35760038054600160a060020a031916600160a060020a0383161790555b5b5b50565b600160a060020a03811615156115a257610000565b60085433600160a060020a039081169116146115bd57610000565b60088054600160a060020a031916600160a060020a0383161790555b50565b600160a060020a03808416600090815260026020908152604080832033851684528252808320549386168352600190915281205490919061161d90846116f8565b600160a060020a03808616600090815260016020526040808220939093559087168152205461164c90846116df565b600160a060020a03861660009081526001602052604090205561166f81846116df565b600160a060020a038087166000818152600260209081526040808320338616845282529182902094909455805187815290519288169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a3600191505b509392505050565b60006116ed8383111561182b565b508082035b92915050565b60008282016117158482108015906117105750838210155b61182b565b8091505b5092915050565b60045433600160a060020a0390811691161461173b57610000565b6004805474ff0000000000000000000000000000000000000000191660a060020a1790555b5b565b600060403660441461177457610000565b600160a060020a03331660009081526001602052604090205461179790846116df565b600160a060020a0333811660009081526001602052604080822093909355908616815220546117c690846116f8565b600160a060020a038086166000818152600160209081526040918290209490945580518781529051919333909316927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3600191505b5b5092915050565b8015156109a357610000565b5b505600a165627a7a7230582096680c60aec07de6d2ad4c763ad0fb6b7602ba2b3c745287a408c11a38dc534c0029000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000084d7569726573796d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045453594d00000000000000000000000000000000000000000000000000000000

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

000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000084d7569726573796d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045453594d00000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _name (string): Muiresym
Arg [1] : _symbol (string): TSYM
Arg [2] : _initialSupply (uint256): 0
Arg [3] : _decimals (uint256): 8

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000008
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000008
Arg [5] : 4d7569726573796d000000000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [7] : 5453594d00000000000000000000000000000000000000000000000000000000


Libraries Used



Swarm Source

bzzr://96680c60aec07de6d2ad4c763ad0fb6b7602ba2b3c745287a408c11a38dc534c
Block Transaction Difficulty Gas Used Reward
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.