Contract 0xfeed1a53bd53ffe453d265fc6e70dd85f8e993b6

 

TxHash Block Age From To Value [TxFee]
0xf00760ae990d9878d7812f0557672c6c4574183d2964061644a0fbdd41d5e64d72203633 days 13 hrs ago0x3f41bbb95e19a5dce78abe289014b9661beede1f  IN   HydroCoin0 Ether0.00046032
0xb6bbd090a5f28def16f0002cc12e61e0524624813efd1254872d1948c106950572096986 days 2 hrs ago0x16e110bed33c0445be68b957cbbef5cd7e1bbd4f  IN   HydroCoin0 Ether0.00023016
0xf6f07ab9d73aac965c6626b9210ddf2092643d8b1c03ccf923d8af7dca1df7f072051797 days 4 hrs ago0x0024fdd5176b6dd0711ef6ee8f6ee315ad649873  IN   HydroCoin0 Ether0.000301613
0x5338019dea7a8630ac0ce8614ef161d43f0f0f1f6fa8ed0526cc8b4f94afed6f71993948 days 12 hrs ago0xcbfc78d7e26c2ff131867ed74fa65572dad6fc90  IN   HydroCoin0 Ether0.000737536
0x36a208a14a2ca5d15556a3e5656e9bd96c57996e49af302a06fdac5fe1b89cad717032414 days 10 hrs ago0x3f2f196d5b0a2a790439b0e367eb360b75853f92  IN   HydroCoin0 Ether0.00283786
0xfc9f2a30ab81fbf6e53069ede95807ef34210b4ec07b7b44f98293f2b17ee4aa715913116 days 17 hrs ago0x16e110bed33c0445be68b957cbbef5cd7e1bbd4f  IN   HydroCoin0 Ether0.00023016
0x29c8b7143fc401c56eb62aa5547df6cefab8c7574fc749bc5e26cadab0c2cf37715584117 days 9 hrs ago0xb04b2a333a6df67419e5e75ef8a1ff0bb681d65f  IN   HydroCoin0 Ether0.000330352
0x5eb87550c27ef4ef05308d1218b7db3b94aa2c827a9d80fb096ca9f1f3d4beac715304717 days 23 hrs ago0xa19367978267b0bbe16ada4f118100c721e8bde8  IN   HydroCoin0 Ether0.00220228
0xc08916a40b8986725a740c9c83d9b9a39171a06c3e69115bcfbd8bb619f96036715149418 days 6 hrs ago0x69626aa38411065688a2a7b02bef948b58345c49  IN   HydroCoin0 Ether0.000739584
0x7bb2886f5140219123b2e748b8776cfdf8e93cd58ee6db3ae884b80a38c171de715056218 days 11 hrs ago0x16e110bed33c0445be68b957cbbef5cd7e1bbd4f  IN   HydroCoin0 Ether0.00047832
0xe3437ed6188978b4b2acef27faa822ecb8e349dbf126e1086fe32a7dc2abb9f5715056018 days 11 hrs ago0x16e110bed33c0445be68b957cbbef5cd7e1bbd4f  IN   HydroCoin0 Ether0.00092064
0xeb66551e6c04920b290d61136eb01b7264f83a7a285bab8bdc50f75aaa073399714831618 days 21 hrs ago0x16e110bed33c0445be68b957cbbef5cd7e1bbd4f  IN   HydroCoin0 Ether0.000184128
0xd88407c0d64bacfd32dfd66a2df3577ec097d9d3f570dabd8f52fafc6f3567fa713994420 days 15 hrs ago0x8fed92510f24b3bf86638a6165dea6f8f0aeff89  IN   HydroCoin0 Ether0.0041
0x5c052892926f01c63fd222e824bee52dd1f0e9eee38eb861e091ff2daab64a28712948922 days 17 hrs ago0x9fc4637beb1418c91c31b45b868fa0d5b755c834  IN   HydroCoin0 Ether0.000164988
0xc82d7272e9b889926f031324eaff371e85d73763b08e171960d657afebc64a3a711373025 days 19 hrs ago0x16e110bed33c0445be68b957cbbef5cd7e1bbd4f  IN   HydroCoin0 Ether0.000184384
0xc8bd1bebfb733e80f0c01fe6b004aa92bbf9c472d6cc3484f8814fbb30307dfe711013826 days 13 hrs ago0xffde0d25b87beaca227178fd8a12e04bb2ca9bc5  IN   HydroCoin0 Ether0.000659952
0xa107d01434135f40079c54c99086a048228fb266da7d556cf0d495982e93baa2710993026 days 14 hrs ago0x2a83b3b427aa7e0f530c13021dd298907e1d3513  IN   HydroCoin0 Ether0.000660464
0x949e6cb7e61b3d8ae9de47d50bb0613eb6b137a078462a176a95201beefe2537710871626 days 20 hrs ago0x16e110bed33c0445be68b957cbbef5cd7e1bbd4f  IN   HydroCoin0 Ether0.00023048
0x6d162e0656aef822bd6880b63d450fd2193c47ebfa92f90a8e59ed2b90b65b0a708494731 days 4 hrs ago0xbdc9746c4f87b323fe5bc02b5cf8f3bd78210c73  IN   HydroCoin0 Ether0.000184128
0x55ff2de302f2858984e60c74ac6afa4a57170fe5c480ba840e6d577d2c6d1ff2708492731 days 4 hrs ago0x11ea5d20c306daa1f015e4ebed59fef82d979342  IN   HydroCoin0 Ether0.010907622
0x879d1a895065b6b78edb9fecbc95d0967391f10e9ed690f8bc9b5eec8795e2be707994632 days 2 hrs ago0x16e110bed33c0445be68b957cbbef5cd7e1bbd4f  IN   HydroCoin0 Ether0.000184128
0xbb575a1a39f6fe25f158773f6f7ec9495b727129899bc4c9e2b09e24f8155dac707738232 days 13 hrs ago0x16e110bed33c0445be68b957cbbef5cd7e1bbd4f  IN   HydroCoin0 Ether0.000276576
0xbc950a36e93da8c7e40a00e0071064a71f169409006ababb6eed0a9d403abad4707736232 days 13 hrs ago0x16e110bed33c0445be68b957cbbef5cd7e1bbd4f  IN   HydroCoin0 Ether0.000184128
0x7f66ada0b31076b66110f3f6bad0a0ed25a217a38ced4597a1e9c04c7882377c707594232 days 19 hrs ago0x822d9cdde113eb167329d9c367e7dfda86fd6b34  IN   HydroCoin0 Ether0.000660464
0x82b7b9d7376531eebfae5408a2bde79ca94c4146b3cb0edaaa14c1e12b255934706068935 days 12 hrs agoDaveApp(Alice)  IN   HydroCoin0 Ether0.000082494
[ Download CSV Export 

Latest 1 Internal Transaction Internal Transactions as a result of Contract Execution

Parent TxHash Block Age From To Value
0x5a66b9f6c8ef58035ad9fba402948f99246da76ce30ad1f3e9ea22d1b1941a694309945510 days 23 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) Solidity Compiler Bugs.

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


Contract Source Code
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
606060409081526003805460a060020a61ffff02191690558051908101604052600981527f48324f20546f6b656e0000000000000000000000000000000000000000000000602082015260049080516200005e929160200190620000e3565b5060408051908101604052600381527f48324f000000000000000000000000000000000000000000000000000000000060208201526005908051620000a8929160200190620000e3565b50601260065560078054600160a060020a0319908116909155600880548216905560038054909116600160a060020a03331617905562000188565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200012657805160ff191683800117855562000156565b8280016001018555821562000156579182015b828111156200015657825182559160200191906001019062000139565b506200016492915062000168565b5090565b6200018591905b808211156200016457600081556001016200016f565b90565b61168e80620001986000396000f300606060405236156101515763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b811461015657806306fdde031461017d578063095ea7b31461020757806318160ddd1461022957806323b872dd1461024e578063313ce567146102765780633df4ddf4146102895780633f4ba83a146102b857806340c10f19146102cb57806347799da8146102ed578063563540a2146103005780635c0b51fb146103155780635c975abb1461036c57806370a082311461037f5780637d64bcb41461039e57806383a37262146103b15780638456cb59146103c75780638da5cb5b146103da57806395d89b41146103ed578063a2b7e23d14610400578063a9059cbb14610413578063ab91c7b014610435578063c56551b614610448578063db0e16f11461045b578063dd62ed3e1461047d578063f2fde38b146104a2575b600080fd5b341561016157600080fd5b6101696104c1565b604051901515815260200160405180910390f35b341561018857600080fd5b6101906104d1565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101cc5780820151838201526020016101b4565b50505050905090810190601f1680156101f95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561021257600080fd5b610169600160a060020a036004351660243561056f565b341561023457600080fd5b61023c610615565b60405190815260200160405180910390f35b341561025957600080fd5b610169600160a060020a036004358116906024351660443561061b565b341561028157600080fd5b61023c610695565b341561029457600080fd5b61029c61069b565b604051600160a060020a03909116815260200160405180910390f35b34156102c357600080fd5b6101696106aa565b34156102d657600080fd5b610169600160a060020a0360043516602435610732565b34156102f857600080fd5b61029c6107a1565b341561030b57600080fd5b6103136107b0565b005b341561032057600080fd5b610334600160a060020a03600435166107f6565b6040519315158452600160a060020a039283166020850152911660408084019190915260608301919091526080909101905180910390f35b341561037757600080fd5b61016961082c565b341561038a57600080fd5b61023c600160a060020a036004351661083c565b34156103a957600080fd5b610169610857565b34156103bc57600080fd5b6103136004356108cb565b34156103d257600080fd5b6101696109c4565b34156103e557600080fd5b61029c610a50565b34156103f857600080fd5b610190610a5f565b341561040b57600080fd5b610169610aca565b341561041e57600080fd5b610169600160a060020a0360043516602435610ada565b341561044057600080fd5b61023c610b4a565b341561045357600080fd5b61023c610b50565b341561046657600080fd5b610313600160a060020a0360043516602435610b56565b341561048857600080fd5b61023c600160a060020a0360043581169060243516610bf1565b34156104ad57600080fd5b610313600160a060020a0360043516610c1c565b60035460a060020a900460ff1681565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105675780601f1061053c57610100808354040283529160200191610567565b820191906000526020600020905b81548152906001019060200180831161054a57829003601f168201915b505050505081565b60008115806105a15750600160a060020a03338116600090815260026020908152604080832093871683529290522054155b15156105ac57600080fd5b600160a060020a03338116600081815260026020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60005481565b600354600090819060a860020a900460ff161561063757600080fd5b610642858585610c65565b600160a060020a038616600090815260016020526040902054909150610669908690610d78565b600160a060020a03841660009081526001602052604090205461068d908590610d78565b949350505050565b60065481565b600754600160a060020a031681565b60035460009033600160a060020a039081169116146106c857600080fd5b60035460a860020a900460ff1615156106e057600080fd5b6003805475ff000000000000000000000000000000000000000000191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a15060015b90565b600354600090819033600160a060020a0390811691161461075257600080fd5b60035460a060020a900460ff161561076957600080fd5b6107738484610e85565b600160a060020a03851660009081526001602052604090205490915061079a908590610d78565b9392505050565b600854600160a060020a031681565b60035433600160a060020a039081169116146107cb57600080fd5b6008805474ff0000000000000000000000000000000000000000191660a060020a1790556000600955565b600a6020526000908152604090208054600182015460029092015460ff821692600160a060020a03610100909304831692169084565b60035460a860020a900460ff1681565b600160a060020a031660009081526001602052604090205490565b60035460009033600160a060020a0390811691161461087557600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a150600190565b60035460009033600160a060020a039081169116146108e957600080fd5b506008805474ff00000000000000000000000000000000000000001916905560005b8181101561099b57600b546009541061092f5761092a600b60006115ca565b6109c0565b610989600b60095481548110151561094357fe5b6000918252602090912060029091020154600954600b8054600160a060020a0390931692909190811061097257fe5b906000526020600020906002020160010154610d78565b6009805460019081019091550161090b565b6008805474ff0000000000000000000000000000000000000000191660a060020a1790555b5050565b60035460009033600160a060020a039081169116146109e257600080fd5b60035460a860020a900460ff16156109f957600080fd5b6003805475ff000000000000000000000000000000000000000000191660a860020a1790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a150600190565b600354600160a060020a031681565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105675780601f1061053c57610100808354040283529160200191610567565b60085460a060020a900460ff1681565b600354600090819060a860020a900460ff1615610af657600080fd5b610b008484610f53565b33600160a060020a038116600090815260016020526040902054919250610b2691610d78565b600160a060020a03841660009081526001602052604090205461079a908590610d78565b600b5490565b60095481565b600354600160a060020a038084169163a9059cbb9116836000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610bd257600080fd5b6102c65a03f11515610be357600080fd5b505050604051805150505050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60035433600160a060020a03908116911614610c3757600080fd5b600160a060020a03811615610c625760038054600160a060020a031916600160a060020a0383161790555b50565b600160a060020a038084166000908152600260209081526040808320338516845282528083205493861683526001909152812054909190610cac908463ffffffff61101216565b600160a060020a038086166000908152600160205260408082209390935590871681522054610ce1908463ffffffff61102116565b600160a060020a038616600090815260016020526040902055610d0a818463ffffffff61102116565b600160a060020a03808716600081815260026020908152604080832033861684529091529081902093909355908616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a3506001949350505050565b60085460a060020a900460ff1615610d945761092a8282611033565b8015610e5b57600160a060020a0382166000908152600a602052604090205460ff161515610dcb57610dc682826110a3565b61092a565b600160a060020a0382166000908152600a602052604090819020600201829055600080516020611643833981519152908390839051600160a060020a03909216602083015260408083019190915260608083526006908301527f7570646174650000000000000000000000000000000000000000000000000000608083015260a0909101905180910390a16109c0565b600160a060020a0382166000908152600a602052604090205460ff16156109c0576109c082611255565b60035460009033600160a060020a03908116911614610ea357600080fd5b60035460a060020a900460ff1615610eba57600080fd5b600054610ecd908363ffffffff61101216565b6000908155600160a060020a038416815260016020526040902054610ef8908363ffffffff61101216565b600160a060020a0384166000818152600160205260408082209390935590917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a033316600090815260016020526040812054610f7c908363ffffffff61102116565b600160a060020a033381166000908152600160205260408082209390935590851681522054610fb1908363ffffffff61101216565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b60008282018381101561079a57fe5b60008282111561102d57fe5b50900390565b600b80546001810161104583826115eb565b9160005260206000209060020201600060408051908101604052600160a060020a03861681526020810185905291905081518154600160a060020a031916600160a060020a0391909116178155602082015181600101555050505050565b608060405190810160409081526001825260006020808401829052600854600160a060020a03908116848601526060850186905286168252600a9052208151815460ff191690151517815560208201518154600160a060020a03919091166101000274ffffffffffffffffffffffffffffffffffffffff00199091161781556040820151600182018054600160a060020a031916600160a060020a0392909216919091179055606082015160029091015550600854600160a060020a0316156111b057600854600160a060020a039081166000908152600a6020526040902080549184166101000274ffffffffffffffffffffffffffffffffffffffff00199092169190911790556111cc565b60078054600160a060020a031916600160a060020a0384161790555b60088054600160a060020a031916600160a060020a0384161790556000805160206116438339815191528282604051600160a060020a03909216602083015260408083019190915260608083526003908301527f6164640000000000000000000000000000000000000000000000000000000000608083015260a0909101905180910390a15050565b6007546000908190600160a060020a03848116911614156113c357600160a060020a038084166000908152600a6020526040908190205460078054600160a060020a031916610100909204909316179091556080905190810160409081526000808352602080840182905282840182905260608401829052600160a060020a0387168252600a9052208151815460ff191690151517815560208201518154600160a060020a03919091166101000274ffffffffffffffffffffffffffffffffffffffff00199091161781556040820151600182018054600160a060020a031916600160a060020a0392909216919091179055606082015160029091015550600080516020611643833981519152836000604051600160a060020a03909216602083015260408083019190915260608083526006908301527f72656d6f76650000000000000000000000000000000000000000000000000000608083015260a0909101905180910390a16115c5565b5050600160a060020a038082166000908152600a60205260409020805460019091015461010090910482169116801561143957600160a060020a038082166000908152600a6020526040902080549184166101000274ffffffffffffffffffffffffffffffffffffffff00199092169190911790555b600160a060020a0382161561147a57600160a060020a038281166000908152600a602052604090206001018054600160a060020a0319169183169190911790555b600854600160a060020a03848116911614156114ac5760088054600160a060020a031916600160a060020a0383161790555b608060405190810160409081526000808352602080840182905282840182905260608401829052600160a060020a0387168252600a9052208151815460ff191690151517815560208201518154600160a060020a03919091166101000274ffffffffffffffffffffffffffffffffffffffff00199091161781556040820151600182018054600160a060020a031916600160a060020a0392909216919091179055606082015160029091015550600080516020611643833981519152836000604051600160a060020a03909216602083015260408083019190915260608083526006908301527f72656d6f76650000000000000000000000000000000000000000000000000000608083015260a0909101905180910390a15b505050565b5080546000825560020290600052602060002090810190610c629190611613565b8154818355818115116115c5576002028160020283600052602060002091820191016115c591905b61072f91905b8082111561163e578054600160a060020a031916815560006001820155600201611619565b509056001f542a60f9c43dd0fedc28c24846d3aa3e3da3905bf6033ebaf7ffe0f71d6d7ca165627a7a72305820761cac341be16d7d365267f3cde568890bc62e085b6b913a2bff1b8cf320f3690029


   Swarm Source:
bzzr://761cac341be16d7d365267f3cde568890bc62e085b6b913a2bff1b8cf320f369
Block Age transaction Difficulty GasUsed Reward
Block Age Uncle Number Difficulty GasUsed Reward
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.