Contract Overview | HydroCoin
Balance: 0 Ether
Ether Value: $0
Transactions: 4579 txns
Token Tracker: H2O Token (H2O)
 Latest 25 txns From a total of 4579 Transactions

TxHash Age From To Value [TxFee]
0xfa4cd14fc240e489f53ac07f5f8a2449f1ab9f57209a2a78da814a570c375d1821 hrs 29 mins ago0xa08f303e754dc3d40fce27774b5002a8a5b36ee5  IN   HydroCoin0 Ether0.000184384
0x26486400c87ee3e8c668c45a0283aa1c450209e2d8c2905629dd28c1086b549b1 day 3 hrs ago0x0b3ffbc3eb6c3005a204610ac19446ad9167f460  IN   HydroCoin0 Ether0.0011508
0xf09af6f8cb32ca2a28cb822574eb6bae8d01ed88ceba6772348314590672c1e45 days 13 hrs agoCoss.io  IN   HydroCoin0 Ether0.00061108
0x0b9111aba9b9de8d68aec6b75b496ea2b55ad6842ac5de818c86c80bf0eed2795 days 13 hrs ago0x1a44ed0a7f6437e16f3e31cdf8862980c5968948  IN   HydroCoin0 Ether0.000165432
0x0dd2cf23427641ab373f34fdaa0b6d151b970df591af4b62192ab0d706db6c358 days 20 hrs ago0x881ebb57ba83ef46d126ef0d99115031d558c72a  IN   HydroCoin0 Ether0.000184128
0xf58ade84e0fc8e14e7c89591d057aa467491b9cb06f64090240b983ae135818f10 days 21 hrs ago0x075d124302a7a9ad17ca9f462ac1ecfc1a2e7b85  IN   HydroCoin0 Ether0.00046096
0x595732cfd549f378baf9696421e6ac895f458e1d5e5e323859570d93b4b8a70510 days 21 hrs ago0xa5c2805738b6a0e29b55c3a866e687be5d9df8f7  IN   HydroCoin0 Ether0.00110242
0xf56bad3453a97a5d73fdd05dc0111ecb67833d4f9ed4910dbf052b45f954e22d13 days 4 hrs agoCoss.io  IN   HydroCoin0 Ether0.00089236
0xcd5c969f22d80b5616bfd498967cbb1da73b4661cbd83f1fff0259956fd4b84e13 days 5 hrs agoCoss.io  IN   HydroCoin0 Ether0.00122216
0x8741f1b9726bf250f887e5db455bb4600cd710b98626f6dfa938f7e1811d63ca13 days 5 hrs ago0xbfcd7701706ec8f698d2b1adddf675e26f54841c  IN   HydroCoin0 Ether0.001073644
0x516ca8f0d60c46da90d6053508bfcd5dcd4677536aca5aa6620d9b457771f85a13 days 5 hrs ago0xbfcd7701706ec8f698d2b1adddf675e26f54841c  IN   HydroCoin0 Ether0.003548925
0x06795e663b74e34dd373845e1df53f4cdc0f5f34baf1f0956b3c9d80f03f293013 days 14 hrs ago0x71e468a4ae4a5116923ac238263d8d214d77df10  IN   HydroCoin0 Ether0.003525696
0xdb029dc6784d96bfb3e9bb00beb548b08d1762b5dc760b747f509734e4014b0f13 days 22 hrs agoCoss.io  IN   HydroCoin0 Ether0.000893
0x84759b8d2640981eab61b15cdb0c597d5e6ac2e73c61be4762053940de3286a013 days 22 hrs ago0xbfcd7701706ec8f698d2b1adddf675e26f54841c  IN   HydroCoin0 Ether0.003637986
0xeba5baa1a9eafbb8460569064cf24cafd6a6065a28f601540f3058d4be1ad69c14 days 12 hrs ago0x2fc65071cf2603b283ed30d86ddbb537abdc71e1  IN   HydroCoin0 Ether0.000220356
0x7d86288ba587641c4142565576f85211e53948fcb1d4200738f9a00849feabec15 days 13 hrs agoCoss.io  IN   HydroCoin0 Ether0.00089236
0x3b0a2a54460c1575b1e01ac9ca7c9f5772f67dfa33d216c83e5932f17c77538615 days 14 hrs ago0xbfcd7701706ec8f698d2b1adddf675e26f54841c  IN   HydroCoin0 Ether0.004114897
0xe6ac28d3df4a5f6bafbb7f57a7842120cd0e6b991c2f31328b27359a1a9280a716 days 13 hrs ago0xc0f509db6c09b4a1fad5f08a436b790fb8c014cf  IN   HydroCoin0 Ether0.0000110114
0xcaacbb586ab1437a86b2bd06925fab90b0efa2a70e33b723493cba0aecdeabe617 days 1 hr agoCoss.io  IN   HydroCoin0 Ether0.00089172
0xb05f57b9ba29a134e9e1225bf50eaaf38f37f42a132a9382538907a4d248d1ad17 days 2 hrs ago0x2e22805b7df5fc787c646b7353b13574f23f44f3  IN   HydroCoin0 Ether0.00092832
0x56bb83b5f4582ea8b1f3973fc8f4cd1fefd098271647f5f68af9c40e0a10931217 days 4 hrs ago0x8b491abb09ee6a81b47e8610fb7f0117d1d3a3c0  IN   HydroCoin0 Ether0.001843777
0xba10d96978d90b9cc8e1e38467fbe3f9e450229657c13f2a1c91b6fca990582717 days 5 hrs ago0x8b491abb09ee6a81b47e8610fb7f0117d1d3a3c0  IN   HydroCoin0 Ether0.003120238
0x9055d75a822842519c164e2113097a8fb96b473ff9bb93125d854fd9e2f15f2c17 days 21 hrs ago0xbe4dd3f61ec61383b58dab7fee6015333bc8d63f  IN   HydroCoin0 Ether0.00046032
0x7dd37b341c86afbd310d4944eea882f7daefb7b34e665b4a0d69d0fbf33d6e2318 days 2 hrs agoCoss.io  IN   HydroCoin0 Ether0.00089236
0x1a11086f12ff388f78ddf940664e5849d167108e8a4ecb22f8290cd542a5df1618 days 3 hrs ago0x604f684eb6b87d2025050280f20b53b714a7a55d  IN   HydroCoin0 Ether0.00092832
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
 Latest 1 Internal Transaction

ParentTxHash Block Age From To Value
0x5a66b9f6c8ef58035ad9fba402948f99246da76ce30ad1f3e9ea22d1b1941a694309945392 days 2 hrs ago0xd81f9b05e409e0ab40f8ec766370b7a7c8a25864  Contract Creation0 Ether
[ Download CSV Export  ] 
Warning: The Compiled Contract might be susceptible to ExpExponentCleanup (medium/high-severity), EventStructWrongData (very low-severity), NestedArrayFunctionCallDecoder (medium-severity), ZeroFunctionSelector (very low-severity) SolidityCompiler Bugs.

Contract Source Code Verified (Exact Match)
Contract Name: HydroCoin
Compiler Text: v0.4.17+commit.bdeb9e52
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

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 {
    if (newOwner != address(0)) {
      owner = newOwner;
    }
  }

}


/**
 * @title Pausable
 * @dev Base contract which allows children to implement an emergency stop mechanism.
 */
contract Pausable is Ownable {
  event Pause();
  event Unpause();

  bool public paused = false;


  /**
   * @dev modifier to allow actions only when the contract IS paused
   */
  modifier whenNotPaused() {
    require(!paused);
    _;
  }

  /**
   * @dev modifier to allow actions only when the contract IS NOT paused
   */
  modifier whenPaused {
    require(paused);
    _;
  }

  /**
   * @dev called by the owner to pause, triggers stopped state
   */
  function pause() onlyOwner whenNotPaused returns (bool) {
    paused = true;
    Pause();
    return true;
  }

  /**
   * @dev called by the owner to unpause, returns to normal state
   */
  function unpause() onlyOwner whenPaused returns (bool) {
    paused = false;
    Unpause();
    return true;
  }
}

/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {
  function mul(uint256 a, uint256 b) internal constant returns (uint256) {
    uint256 c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }

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

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

  function add(uint256 a, uint256 b) internal constant returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}


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

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




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

  mapping(address => uint256) balances;

  /**
  * @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, uint256 _value) returns (bool) {
    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 uint256 representing the amount owned by the passed address.
  */
  function balanceOf(address _owner) constant returns (uint256 balance) {
    return balances[_owner];
  }

}


/**
 * @title Standard ERC20 token
 *
 * @dev Implementation of the basic standard token.
 * @dev https://github.com/ethereum/EIPs/issues/20
 * @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
 */
contract StandardToken is ERC20, BasicToken {

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


  /**
   * @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 uint256 the amout of tokens to be transfered
   */
  function transferFrom(address _from, address _to, uint256 _value) returns (bool) {
    var _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);

    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, uint256 _value) returns (bool) {

    // 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 that 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 uint256 specifing the amount of tokens still avaible for the spender.
   */
  function allowance(address _owner, address _spender) constant returns (uint256 remaining) {
    return allowed[_owner][_spender];
  }

}


/**
 * @title Mintable token
 * @dev Simple ERC20 Token example, with mintable token creation
 * @dev Issue: * https://github.com/OpenZeppelin/zeppelin-solidity/issues/120
 * Based on code by TokenMarketNet: https://github.com/TokenMarketNet/ico/blob/master/contracts/MintableToken.sol
 */

contract MintableToken is StandardToken, Ownable {
  event Mint(address indexed to, uint256 amount);
  event MintFinished();

  bool public mintingFinished = false;


  modifier canMint() {
    require(!mintingFinished);
    _;
  }

  /**
   * @dev Function to mint tokens
   * @param _to The address that will recieve the minted tokens.
   * @param _amount The amount of tokens to mint.
   * @return A boolean that indicates if the operation was successful.
   */
  function mint(address _to, uint256 _amount) onlyOwner canMint returns (bool) {
    totalSupply = totalSupply.add(_amount);
    balances[_to] = balances[_to].add(_amount);
    Transfer(0X0, _to, _amount);
    return true;
  }

  /**
   * @dev Function to stop minting new tokens.
   * @return True if the operation was successful.
   */
  function finishMinting() onlyOwner returns (bool) {
    mintingFinished = true;
    MintFinished();
    return true;
  }
}



contract HydroCoin is MintableToken, Pausable {
  string public name = "H2O Token";
  string public symbol = "H2O";
  uint256 public decimals = 18;

  //----- splitter functions


    event Ev(string message, address whom, uint256 val);

    struct XRec {
        bool inList;
        address next;
        address prev;
        uint256 val;
    }

    struct QueueRecord {
        address whom;
        uint256 val;
    }

    address public first = 0x0;
    address public last = 0x0;
    bool    public queueMode;
    uint256 public pos;

    mapping (address => XRec) public theList;

    QueueRecord[]  theQueue;

    function startQueueing() onlyOwner {
        queueMode = true;
        pos = 0;
    }

    function stopQueueing(uint256 num) onlyOwner {
        queueMode = false;
        for (uint256 i = 0; i < num; i++) {
            if (pos >= theQueue.length) {
                delete theQueue;
                return;
            }
            update(theQueue[pos].whom,theQueue[pos].val);
            pos++;
        }
        queueMode = true;
    } 

   function queueLength() constant returns (uint256) {
        return theQueue.length;
    }

    function addRecToQueue(address whom, uint256 val) internal {
        theQueue.push(QueueRecord(whom,val));
    }

    // add a record to the END of the list
    function add(address whom, uint256 value) internal {
        theList[whom] = XRec(true,0x0,last,value);
        if (last != 0x0) {
            theList[last].next = whom;
        } else {
            first = whom;
        }
        last = whom;
        Ev("add",whom,value);
    }

   function remove(address whom) internal {
        if (first == whom) {
            first = theList[whom].next;
            theList[whom] = XRec(false,0x0,0x0,0);
            Ev("remove",whom,0);
            return;
        }
        address next = theList[whom].next;
        address prev = theList[whom].prev;
        if (prev != 0x0) {
            theList[prev].next = next;
        }
        if (next != 0x0) {
            theList[next].prev = prev;
        }
        if (last == whom) {
            last = prev;
        }

        theList[whom] =XRec(false,0x0,0x0,0);
        Ev("remove",whom,0);
    }

    function update(address whom, uint256 value) internal {
        if (queueMode) {
            addRecToQueue(whom,value);
            return;
        }
        if (value != 0) {
            if (!theList[whom].inList) {
                add(whom,value);
            } else {
                theList[whom].val = value;
                Ev("update",whom,value);
            }
            return;
        }
        if (theList[whom].inList) {
                remove(whom);
        }
    }




// ----- H20 stuff -----


  /**
   * @dev Allows anyone to transfer the H20 tokens once trading has started
   * @param _to the recipient address of the tokens.
   * @param _value number of tokens to be transfered.
   */
  function transfer(address _to, uint _value) whenNotPaused returns (bool) {
      bool result = super.transfer(_to, _value);
      update(msg.sender,balances[msg.sender]);
      update(_to,balances[_to]);
      return result;
  }

  /**
   * @dev Allows anyone to transfer the H20 tokens once trading has started
   * @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) whenNotPaused returns (bool) {
      bool result = super.transferFrom(_from, _to, _value);
      update(_from,balances[_from]);
      update(_to,balances[_to]);
      return result;
  }

 /**
   * @dev Function to mint tokens
   * @param _to The address that will recieve the minted tokens.
   * @param _amount The amount of tokens to mint.
   * @return A boolean that indicates if the operation was successful.
   */
 
  function mint(address _to, uint256 _amount) onlyOwner canMint returns (bool) {
      bool result = super.mint(_to,_amount);
      update(_to,balances[_to]);
      return result;
  }

  function emergencyERC20Drain( ERC20 token, uint amount ) {
      token.transfer(owner, amount);
  }
 
}


contract HydroCoinPresale is Ownable,Pausable {
  using SafeMath for uint256;

  // The token being sold
  HydroCoin public token;

  // start and end block where investments are allowed (both inclusive)
  uint256 public startTimestamp; 
  uint256 public endTimestamp;

  // address where funds are collected
  address public hardwareWallet = 0xa6128CA2eD94FB697d7058dC3Fd22740F82FF06A;

  mapping (address => uint256) public deposits;

  // how many token units a buyer gets per wei
  uint256 public rate = 125;

  // amount of raised money in wei
  uint256 public weiRaised;

  // minimum contributio to participate in tokensale
  uint256 public minContribution  = 50 ether;

  // maximum amount of ether being raised
  uint256 public hardcap  = 1500 ether; 

  // amount to allocate to vendors
  uint256 public vendorAllocation  = 1000000 * 10 ** 18; // H20

  // number of participants in presale
  uint256 public numberOfPurchasers = 0;

  address public companyTokens = 0xF1D5007d3884B8Ec6C2f89088b2bA28C5291C70f;

  event TokenPurchase(address indexed purchaser, address indexed beneficiary, uint256 value, uint256 amount);
  event PreSaleClosed();

  function setWallet(address _wallet) onlyOwner {
    hardwareWallet = _wallet;
  }

  function HydroCoinPresale() {
    startTimestamp = 1506333600;
    endTimestamp = startTimestamp + 1 weeks;

    token = new HydroCoin();

    require(startTimestamp >= now);
    require(endTimestamp >= startTimestamp);

    token.mint(companyTokens, vendorAllocation);
  }

  // check if valid purchase
  modifier validPurchase {
    require(now >= startTimestamp);
    require(now <= endTimestamp);
    require(msg.value >= minContribution);
    require(weiRaised.add(msg.value) <= hardcap);
    _;
  }

  // @return true if crowdsale event has ended
  function hasEnded() public constant returns (bool) {
    if (now > endTimestamp)
        return true;
    if (weiRaised >= hardcap)
        return true;
    return false;
  }

  // low level token purchase function
  function buyTokens(address beneficiary) payable validPurchase {
    require(beneficiary != 0x0);

    uint256 weiAmount = msg.value;

    if (deposits[msg.sender] == 0) {
        numberOfPurchasers++;
    }
    deposits[msg.sender] = weiAmount.add(deposits[msg.sender]);
    

    // calculate token amount to be created
    uint256 tokens = weiAmount.mul(rate);

    // update state
    weiRaised = weiRaised.add(weiAmount);

    token.mint(beneficiary, tokens);
    TokenPurchase(msg.sender, beneficiary, weiAmount, tokens);
    hardwareWallet.transfer(msg.value);
  }

  // transfer ownership of the token to the owner of the presale contract
  function finishPresale() public onlyOwner {
    require(hasEnded());
    token.transferOwnership(owner);
    PreSaleClosed();
  }

  // fallback function can be used to buy tokens
  function () payable {
    buyTokens(msg.sender);
  }

    function emergencyERC20Drain( ERC20 theToken, uint amount ) {
        theToken.transfer(owner, amount);
    }


}

    Contract ABI  
[{"constant":true,"inputs":[],"name":"mintingFinished","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"first","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"last","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"startQueueing","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"theList","outputs":[{"name":"inList","type":"bool"},{"name":"next","type":"address"},{"name":"prev","type":"address"},{"name":"val","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"finishMinting","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"num","type":"uint256"}],"name":"stopQueueing","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"queueMode","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"queueLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"pos","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"emergencyERC20Drain","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"anonymous":false,"inputs":[{"indexed":false,"name":"message","type":"string"},{"indexed":false,"name":"whom","type":"address"},{"indexed":false,"name":"val","type":"uint256"}],"name":"Ev","type":"event"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[],"name":"MintFinished","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]

  Contract Creation Code Switch To Opcodes View
606060409081526003805460a060020a61ffff02191690558051908101604052600981527f48324f20546f6b656e0000000000000000000000000000000000000000000000602082015260049080516200005e929160200190620000e3565b5060408051908101604052600381527f48324f000000000000000000000000000000000000000000000000000000000060208201526005908051620000a8929160200190620000e3565b50601260065560078054600160a060020a0319908116909155600880548216905560038054909116600160a060020a03331617905562000188565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200012657805160ff191683800117855562000156565b8280016001018555821562000156579182015b828111156200015657825182559160200191906001019062000139565b506200016492915062000168565b5090565b6200018591905b808211156200016457600081556001016200016f565b90565b61168e80620001986000396000f300606060405236156101515763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b811461015657806306fdde031461017d578063095ea7b31461020757806318160ddd1461022957806323b872dd1461024e578063313ce567146102765780633df4ddf4146102895780633f4ba83a146102b857806340c10f19146102cb57806347799da8146102ed578063563540a2146103005780635c0b51fb146103155780635c975abb1461036c57806370a082311461037f5780637d64bcb41461039e57806383a37262146103b15780638456cb59146103c75780638da5cb5b146103da57806395d89b41146103ed578063a2b7e23d14610400578063a9059cbb14610413578063ab91c7b014610435578063c56551b614610448578063db0e16f11461045b578063dd62ed3e1461047d578063f2fde38b146104a2575b600080fd5b341561016157600080fd5b6101696104c1565b604051901515815260200160405180910390f35b341561018857600080fd5b6101906104d1565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101cc5780820151838201526020016101b4565b50505050905090810190601f1680156101f95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561021257600080fd5b610169600160a060020a036004351660243561056f565b341561023457600080fd5b61023c610615565b60405190815260200160405180910390f35b341561025957600080fd5b610169600160a060020a036004358116906024351660443561061b565b341561028157600080fd5b61023c610695565b341561029457600080fd5b61029c61069b565b604051600160a060020a03909116815260200160405180910390f35b34156102c357600080fd5b6101696106aa565b34156102d657600080fd5b610169600160a060020a0360043516602435610732565b34156102f857600080fd5b61029c6107a1565b341561030b57600080fd5b6103136107b0565b005b341561032057600080fd5b610334600160a060020a03600435166107f6565b6040519315158452600160a060020a039283166020850152911660408084019190915260608301919091526080909101905180910390f35b341561037757600080fd5b61016961082c565b341561038a57600080fd5b61023c600160a060020a036004351661083c565b34156103a957600080fd5b610169610857565b34156103bc57600080fd5b6103136004356108cb565b34156103d257600080fd5b6101696109c4565b34156103e557600080fd5b61029c610a50565b34156103f857600080fd5b610190610a5f565b341561040b57600080fd5b610169610aca565b341561041e57600080fd5b610169600160a060020a0360043516602435610ada565b341561044057600080fd5b61023c610b4a565b341561045357600080fd5b61023c610b50565b341561046657600080fd5b610313600160a060020a0360043516602435610b56565b341561048857600080fd5b61023c600160a060020a0360043581169060243516610bf1565b34156104ad57600080fd5b610313600160a060020a0360043516610c1c565b60035460a060020a900460ff1681565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105675780601f1061053c57610100808354040283529160200191610567565b820191906000526020600020905b81548152906001019060200180831161054a57829003601f168201915b505050505081565b60008115806105a15750600160a060020a03338116600090815260026020908152604080832093871683529290522054155b15156105ac57600080fd5b600160a060020a03338116600081815260026020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60005481565b600354600090819060a860020a900460ff161561063757600080fd5b610642858585610c65565b600160a060020a038616600090815260016020526040902054909150610669908690610d78565b600160a060020a03841660009081526001602052604090205461068d908590610d78565b949350505050565b60065481565b600754600160a060020a031681565b60035460009033600160a060020a039081169116146106c857600080fd5b60035460a860020a900460ff1615156106e057600080fd5b6003805475ff000000000000000000000000000000000000000000191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a15060015b90565b600354600090819033600160a060020a0390811691161461075257600080fd5b60035460a060020a900460ff161561076957600080fd5b6107738484610e85565b600160a060020a03851660009081526001602052604090205490915061079a908590610d78565b9392505050565b600854600160a060020a031681565b60035433600160a060020a039081169116146107cb57600080fd5b6008805474ff0000000000000000000000000000000000000000191660a060020a1790556000600955565b600a6020526000908152604090208054600182015460029092015460ff821692600160a060020a03610100909304831692169084565b60035460a860020a900460ff1681565b600160a060020a031660009081526001602052604090205490565b60035460009033600160a060020a0390811691161461087557600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a150600190565b60035460009033600160a060020a039081169116146108e957600080fd5b506008805474ff00000000000000000000000000000000000000001916905560005b8181101561099b57600b546009541061092f5761092a600b60006115ca565b6109c0565b610989600b60095481548110151561094357fe5b6000918252602090912060029091020154600954600b8054600160a060020a0390931692909190811061097257fe5b906000526020600020906002020160010154610d78565b6009805460019081019091550161090b565b6008805474ff0000000000000000000000000000000000000000191660a060020a1790555b5050565b60035460009033600160a060020a039081169116146109e257600080fd5b60035460a860020a900460ff16156109f957600080fd5b6003805475ff000000000000000000000000000000000000000000191660a860020a1790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a150600190565b600354600160a060020a031681565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105675780601f1061053c57610100808354040283529160200191610567565b60085460a060020a900460ff1681565b600354600090819060a860020a900460ff1615610af657600080fd5b610b008484610f53565b33600160a060020a038116600090815260016020526040902054919250610b2691610d78565b600160a060020a03841660009081526001602052604090205461079a908590610d78565b600b5490565b60095481565b600354600160a060020a038084169163a9059cbb9116836000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610bd257600080fd5b6102c65a03f11515610be357600080fd5b505050604051805150505050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60035433600160a060020a03908116911614610c3757600080fd5b600160a060020a03811615610c625760038054600160a060020a031916600160a060020a0383161790555b50565b600160a060020a038084166000908152600260209081526040808320338516845282528083205493861683526001909152812054909190610cac908463ffffffff61101216565b600160a060020a038086166000908152600160205260408082209390935590871681522054610ce1908463ffffffff61102116565b600160a060020a038616600090815260016020526040902055610d0a818463ffffffff61102116565b600160a060020a03808716600081815260026020908152604080832033861684529091529081902093909355908616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a3506001949350505050565b60085460a060020a900460ff1615610d945761092a8282611033565b8015610e5b57600160a060020a0382166000908152600a602052604090205460ff161515610dcb57610dc682826110a3565b61092a565b600160a060020a0382166000908152600a602052604090819020600201829055600080516020611643833981519152908390839051600160a060020a03909216602083015260408083019190915260608083526006908301527f7570646174650000000000000000000000000000000000000000000000000000608083015260a0909101905180910390a16109c0565b600160a060020a0382166000908152600a602052604090205460ff16156109c0576109c082611255565b60035460009033600160a060020a03908116911614610ea357600080fd5b60035460a060020a900460ff1615610eba57600080fd5b600054610ecd908363ffffffff61101216565b6000908155600160a060020a038416815260016020526040902054610ef8908363ffffffff61101216565b600160a060020a0384166000818152600160205260408082209390935590917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a033316600090815260016020526040812054610f7c908363ffffffff61102116565b600160a060020a033381166000908152600160205260408082209390935590851681522054610fb1908363ffffffff61101216565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b60008282018381101561079a57fe5b60008282111561102d57fe5b50900390565b600b80546001810161104583826115eb565b9160005260206000209060020201600060408051908101604052600160a060020a03861681526020810185905291905081518154600160a060020a031916600160a060020a0391909116178155602082015181600101555050505050565b608060405190810160409081526001825260006020808401829052600854600160a060020a03908116848601526060850186905286168252600a9052208151815460ff191690151517815560208201518154600160a060020a03919091166101000274ffffffffffffffffffffffffffffffffffffffff00199091161781556040820151600182018054600160a060020a031916600160a060020a0392909216919091179055606082015160029091015550600854600160a060020a0316156111b057600854600160a060020a039081166000908152600a6020526040902080549184166101000274ffffffffffffffffffffffffffffffffffffffff00199092169190911790556111cc565b60078054600160a060020a031916600160a060020a0384161790555b60088054600160a060020a031916600160a060020a0384161790556000805160206116438339815191528282604051600160a060020a03909216602083015260408083019190915260608083526003908301527f6164640000000000000000000000000000000000000000000000000000000000608083015260a0909101905180910390a15050565b6007546000908190600160a060020a03848116911614156113c357600160a060020a038084166000908152600a6020526040908190205460078054600160a060020a031916610100909204909316179091556080905190810160409081526000808352602080840182905282840182905260608401829052600160a060020a0387168252600a9052208151815460ff191690151517815560208201518154600160a060020a03919091166101000274ffffffffffffffffffffffffffffffffffffffff00199091161781556040820151600182018054600160a060020a031916600160a060020a0392909216919091179055606082015160029091015550600080516020611643833981519152836000604051600160a060020a03909216602083015260408083019190915260608083526006908301527f72656d6f76650000000000000000000000000000000000000000000000000000608083015260a0909101905180910390a16115c5565b5050600160a060020a038082166000908152600a60205260409020805460019091015461010090910482169116801561143957600160a060020a038082166000908152600a6020526040902080549184166101000274ffffffffffffffffffffffffffffffffffffffff00199092169190911790555b600160a060020a0382161561147a57600160a060020a038281166000908152600a602052604090206001018054600160a060020a0319169183169190911790555b600854600160a060020a03848116911614156114ac5760088054600160a060020a031916600160a060020a0383161790555b608060405190810160409081526000808352602080840182905282840182905260608401829052600160a060020a0387168252600a9052208151815460ff191690151517815560208201518154600160a060020a03919091166101000274ffffffffffffffffffffffffffffffffffffffff00199091161781556040820151600182018054600160a060020a031916600160a060020a0392909216919091179055606082015160029091015550600080516020611643833981519152836000604051600160a060020a03909216602083015260408083019190915260608083526006908301527f72656d6f76650000000000000000000000000000000000000000000000000000608083015260a0909101905180910390a15b505050565b5080546000825560020290600052602060002090810190610c629190611613565b8154818355818115116115c5576002028160020283600052602060002091820191016115c591905b61072f91905b8082111561163e578054600160a060020a031916815560006001820155600201611619565b509056001f542a60f9c43dd0fedc28c24846d3aa3e3da3905bf6033ebaf7ffe0f71d6d7ca165627a7a72305820761cac341be16d7d365267f3cde568890bc62e085b6b913a2bff1b8cf320f3690029

   Swarm Source:
bzzr://761cac341be16d7d365267f3cde568890bc62e085b6b913a2bff1b8cf320f369

 

View All
Block Age transaction Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.