Sponsored:   VC, TLDR and CoinBene Funded "TEMCO: Bitcoin Network (RSK) Suppy Chain! Whitelist KYC Starts Now!!"
Contract Overview
Balance: 0 Ether
Ether Value: $0
Transactions: 38 txns
Misc:
Address Watch: Add To Watch List
Contract Creator: 0x3ad4f84a22f72f0fb0e35996d394d28de45abb95at txn 0x1f1a92fb9d5562ca052fdaf32f657128738180dcb00e314e843a511c399d5d9b
 Latest 25 transactions from a total of 38 transactions

TxHash Age From To Value [TxFee]
0x82cc56f06244dcd8c4d18c17db492c247337facf8f589c0db7b69371b1f2c4132 days 3 hrs ago0x7f7441cb07cce903b8d234bf62636d2395cf5e81  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.081638513 Ether0.003015427
0x20aa2089cf07797eca1fef28c2674e768a40808cf0468edceaea18353d4d23a92 days 3 hrs ago0x7f7441cb07cce903b8d234bf62636d2395cf5e81  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.088639513 Ether0.000861
0x2b7bcbf6178ea66dbd341563b3cca4b0e68cebdb8a2fd6438c8648052368c7a218 days 10 hrs ago0x3ad4f84a22f72f0fb0e35996d394d28de45abb95  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0 Ether0.000298125
0xd52b08f675a57e463b041530eccca7c8912c657ace07f6fc67e8d111aaba92a318 days 10 hrs ago0x3ad4f84a22f72f0fb0e35996d394d28de45abb95  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.1 Ether0.001656752
0x7ca42efa59d69ad77ed06257dc857d0d65f24473c0a843baf6553293e802f8ff18 days 13 hrs ago0xa5a72c096c30afbe5b52de92aaaa4a00df14a2e4  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.25 Ether0.000956111
0x1fbd0bcb58b5dc243f74a78cc9b587c58e6e759f57596ff245423b3f83d32cb418 days 13 hrs ago0xa5a72c096c30afbe5b52de92aaaa4a00df14a2e4  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e3 Ether0.001103205
0x173b6f945473f5ecd06409f11dd6357cb67605ee761c23b72692f1c87322af1218 days 13 hrs ago0x57cc2087c191b82edb4bbe0930d64afdaeeeedae  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.95 Ether0.000588376
0xf228e09b905d45f9b5c2dcefa75a641f8b69892ae5e9a17ff4acc4ba4462273818 days 13 hrs ago0xa5a72c096c30afbe5b52de92aaaa4a00df14a2e4  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e3 Ether0.000189
0xdc5aa15751a04d826f11c772e789a50b6c84e0085db58d9f9f5aad829a2632bf18 days 14 hrs ago0x57cc2087c191b82edb4bbe0930d64afdaeeeedae  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.2 Ether0.000724829
0xa23d621294318d084a21f2b12cde8e47174573da7df1a623e00a029b3e286dd322 days 12 hrs ago0x7f7441cb07cce903b8d234bf62636d2395cf5e81  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.034863513 Ether0.001544487
0x4deac0129c20e12cefe9a1e7ff28f3bf1aea8c3c7a57c9b820068c7dcc18a5d922 days 12 hrs ago0x4fed1fc4144c223ae3c1553be203cdfcbd38c581  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.03613074 Ether0.00517735
0x78116f32d7df64c4d72f40444c4c51200e333dc5ed57c4323d214490198a5a9022 days 12 hrs ago0x7f7441cb07cce903b8d234bf62636d2395cf5e81  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.033936803 Ether0.001544487
0x5fce7395822f5ec7e23e78e419781e8bef51e9dbe956ae6a3ba755e04e97f46930 days 33 mins ago0xb6ffa54d8ba6f298730392f0721de117dd591dc3  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.003066228 Ether0.000621282
0x48849e0a278113cb80a43a835295bbdf9deb332702a122774a22f6dc36047d7431 days 9 hrs ago0x31743969fd09dc19b70a6d1a9407bddd0389c41e  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.006 Ether0.000063
0x67a30e6203284386950d718d41985bfdd552e8b5a17a0c406c5f0dd14704b2a132 days 13 hrs ago0x77d2d1ef17f06fe33fc46fefcfa0822241639e62  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.142566766416351 Ether0.000882564
0xea636da6df1ab74f85867d1e6837275b1e39f126de96397855397d19fefc95d935 days 20 hrs ago0x77d2d1ef17f06fe33fc46fefcfa0822241639e62  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.17969451931716 Ether0.000882564
0xb1ca494be2ac1f794a52e57c6dfef0273198074c0af19c3907b3db8f899e817236 days 1 hr ago0x7f7441cb07cce903b8d234bf62636d2395cf5e81  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.016415013 Ether0.001544487
0xa7ccc02eade11f72a2c32ad07a636b6b6c2dd55714291e0866d947ad3072953636 days 13 hrs ago0xa5a72c096c30afbe5b52de92aaaa4a00df14a2e4  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.272992563306034 Ether0.001656752
0x1463b0e5ff566326f9483ff277d65539d56d761609dbc0ca55ef407ce926106136 days 15 hrs ago0xad39108991e039d81d6e626da4a75adb185d4887  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e4.095691973764922 Ether0.002174487
0xb0877a20b01ea71cbb7e6727c26bd41f7aaa138c364163224cf5d38c127ac48d37 days 11 hrs ago0x77d2d1ef17f06fe33fc46fefcfa0822241639e62  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.402748163942193 Ether0.001656752
0x5734265a32237acc8fd654333f239d4d7b5049934b0b229a94bbdbad0f3285fe45 days 6 hrs ago0x9940e15602ef830083706217d261ef4e36c7f1ec  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.253625510919655 Ether0.001544487
0x6fa01a831b6a3e8bf8c2f496d0ab22a50f64930dd92dc4513e7018fcb99ec39346 days 2 hrs ago0x9940e15602ef830083706217d261ef4e36c7f1ec  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.11 Ether0.002174487
0xaec5363d237c7bce43b791efb6362ade66d2608b5914bdd4905579292a86ac5346 days 7 hrs ago0x5e6f00aa773170c8019b7cddb05d88e80c996476  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.05 Ether0.002174487
0x46a67d94b06e70d45f4a0ed59c33f86a6ab53277d0aed709c1977308af45649248 days 2 hrs ago0x7f7441cb07cce903b8d234bf62636d2395cf5e81  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.011796746 Ether0.001544487
0x1441ac2f8ce8c8b263cc30b1bed9e8de7d51c71c4f92a6f046f61c87d2f355bf48 days 2 hrs ago0x7f7441cb07cce903b8d234bf62636d2395cf5e81  IN  0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0.01290718 Ether0.001544487
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
 Latest 25 Internal Txns, Click here To View More View All
ParentTxHash Block Age From To Value
0x82cc56f06244dcd8c4d18c17db492c247337facf8f589c0db7b69371b1f2c41369017062 days 3 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.081638513 Ether
0xd52b08f675a57e463b041530eccca7c8912c657ace07f6fc67e8d111aaba92a3680324818 days 10 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.1 Ether
0x7ca42efa59d69ad77ed06257dc857d0d65f24473c0a843baf6553293e802f8ff680246818 days 13 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.25 Ether
0x1fbd0bcb58b5dc243f74a78cc9b587c58e6e759f57596ff245423b3f83d32cb4680234018 days 13 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf3 Ether
0x173b6f945473f5ecd06409f11dd6357cb67605ee761c23b72692f1c87322af12680232518 days 13 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.95 Ether
0xdc5aa15751a04d826f11c772e789a50b6c84e0085db58d9f9f5aad829a2632bf680227218 days 14 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.2 Ether
0xa23d621294318d084a21f2b12cde8e47174573da7df1a623e00a029b3e286dd3677851422 days 12 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.034863513 Ether
0x4deac0129c20e12cefe9a1e7ff28f3bf1aea8c3c7a57c9b820068c7dcc18a5d9677849322 days 12 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.03613074 Ether
0x78116f32d7df64c4d72f40444c4c51200e333dc5ed57c4323d214490198a5a90677844922 days 12 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.033936803 Ether
0x5fce7395822f5ec7e23e78e419781e8bef51e9dbe956ae6a3ba755e04e97f469673273830 days 33 mins ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.003066228 Ether
0x67a30e6203284386950d718d41985bfdd552e8b5a17a0c406c5f0dd14704b2a1671725332 days 13 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.14256676641635142 Ether
0xea636da6df1ab74f85867d1e6837275b1e39f126de96397855397d19fefc95d9669698335 days 20 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.179694519317160827 Ether
0xb1ca494be2ac1f794a52e57c6dfef0273198074c0af19c3907b3db8f899e8172669578836 days 1 hr ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.016415013 Ether
0xa7ccc02eade11f72a2c32ad07a636b6b6c2dd55714291e0866d947ad30729536669271036 days 13 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.272992563306034077 Ether
0x1463b0e5ff566326f9483ff277d65539d56d761609dbc0ca55ef407ce9261061669238536 days 15 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf4.09569197376492238 Ether
0xb0877a20b01ea71cbb7e6727c26bd41f7aaa138c364163224cf5d38c127ac48d668703637 days 11 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.402748163942193793 Ether
0x5734265a32237acc8fd654333f239d4d7b5049934b0b229a94bbdbad0f3285fe663954645 days 6 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.25362551091965538 Ether
0x6fa01a831b6a3e8bf8c2f496d0ab22a50f64930dd92dc4513e7018fcb99ec393663444746 days 2 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.11 Ether
0xaec5363d237c7bce43b791efb6362ade66d2608b5914bdd4905579292a86ac53663329546 days 7 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.05 Ether
0x46a67d94b06e70d45f4a0ed59c33f86a6ab53277d0aed709c1977308af456492662244148 days 2 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.011796746 Ether
0x1441ac2f8ce8c8b263cc30b1bed9e8de7d51c71c4f92a6f046f61c87d2f355bf662241548 days 2 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.01290718 Ether
0x0a0e3771c9bf31b0083fc6c9a1a03425491093be65242c97d3c006db93cafd30662238148 days 2 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.02045386 Ether
0xb4ce1cc15228eaf64d6280fc311a72d0a2524163009879db7d0d13aad67501cc662210348 days 3 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.02 Ether
0x4d47dab3df50090d26bd815f935962885df9a8d4c24ea0ff7daae1073db73603662199048 days 3 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.073625513 Ether
0xf04f65a63817dd092f87ced0355cbd397961cacff169475cae0b550610bb7810662088848 days 8 hrs ago0xef9d61a0f2bfd4695faeb17dd61d85202bdc8e6e0x5856a669197982f09b656c843b8d546a2b35d8cf0.13 Ether
[ Download CSV Export  ] 
Warning: The Compiled Contract might be susceptible to ExpExponentCleanup (medium/high-severity), EventStructWrongData (very low-severity), NestedArrayFunctionCallDecoder (medium-severity) SolidityCompiler Bugs.

Contract Source Code Verified (Exact Match)
Contract Name: CNIFCrowdsale
Compiler Text: v0.4.18+commit.9cf6e910
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.18;


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

  function div(uint256 a, uint256 b) internal pure 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 pure returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  function add(uint256 a, uint256 b) internal pure 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) public view returns (uint256);
  function transfer(address to, uint256 value) public returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);
}



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


  event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);


  /**
   * @dev The Ownable constructor sets the original `owner` of the contract to the sender
   * account.
   */
  function Ownable() public {
    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) public onlyOwner {
    require(newOwner != address(0));
    OwnershipTransferred(owner, newOwner);
    owner = newOwner;
  }

}

















/**
 * @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) public returns (bool) {
    require(_to != address(0));
    require(_value <= balances[msg.sender]);

    // SafeMath.sub will throw if there is not enough balance.
    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) public view returns (uint256 balance) {
    return balances[_owner];
  }

}







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



/**
 * @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)) internal 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 amount of tokens to be transferred
   */
  function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
    require(_to != address(0));
    require(_value <= balances[_from]);
    require(_value <= allowed[_from][msg.sender]);

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

  /**
   * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
   *
   * Beware that changing an allowance with this method brings the risk that someone may use both the old
   * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this
   * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:
   * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
   * @param _spender The address which will spend the funds.
   * @param _value The amount of tokens to be spent.
   */
  function approve(address _spender, uint256 _value) public returns (bool) {
    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 specifying the amount of tokens still available for the spender.
   */
  function allowance(address _owner, address _spender) public view returns (uint256) {
    return allowed[_owner][_spender];
  }

  /**
   * @dev Increase the amount of tokens that an owner allowed to a spender.
   *
   * approve should be called when allowed[_spender] == 0. To increment
   * allowed value is better to use this function to avoid 2 calls (and wait until
   * the first transaction is mined)
   * From MonolithDAO Token.sol
   * @param _spender The address which will spend the funds.
   * @param _addedValue The amount of tokens to increase the allowance by.
   */
  function increaseApproval(address _spender, uint _addedValue) public returns (bool) {
    allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
    Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }

  /**
   * @dev Decrease the amount of tokens that an owner allowed to a spender.
   *
   * approve should be called when allowed[_spender] == 0. To decrement
   * allowed value is better to use this function to avoid 2 calls (and wait until
   * the first transaction is mined)
   * From MonolithDAO Token.sol
   * @param _spender The address which will spend the funds.
   * @param _subtractedValue The amount of tokens to decrease the allowance by.
   */
  function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
    uint oldValue = allowed[msg.sender][_spender];
    if (_subtractedValue > oldValue) {
      allowed[msg.sender][_spender] = 0;
    } else {
      allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
    }
    Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }

}





/**
 * @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 receive 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 public returns (bool) {
    totalSupply = totalSupply.add(_amount);
    balances[_to] = balances[_to].add(_amount);
    Mint(_to, _amount);
    Transfer(address(0), _to, _amount);
    return true;
  }

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


contract CNIFToken is MintableToken {
  string public name = "CryptoNote Index Fund Token";
  string public symbol = "CNIF";
  uint8 public decimals = 18;
}








/**
 * @title Crowdsale
 * @dev Crowdsale is a base contract for managing a token crowdsale.
 * Crowdsales have a start and end timestamps, where investors can make
 * token purchases and the crowdsale will assign them tokens based
 * on a token per ETH rate. Funds collected are forwarded to a wallet
 * as they arrive.
 */
contract Crowdsale {
  using SafeMath for uint256;

  // The token being sold
  MintableToken public token;

  // start and end timestamps where investments are allowed (both inclusive)
  uint256 public startTime;
  uint256 public endTime;

  // address where funds are collected
  address public wallet;

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

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

  /**
   * event for token purchase logging
   * @param purchaser who paid for the tokens
   * @param beneficiary who got the tokens
   * @param value weis paid for purchase
   * @param amount amount of tokens purchased
   */
  event TokenPurchase(address indexed purchaser, address indexed beneficiary, uint256 value, uint256 amount);


  function Crowdsale(uint256 _startTime, uint256 _endTime, uint256 _rate, address _wallet) public {
    require(_startTime >= now);
    require(_endTime >= _startTime);
    require(_rate > 0);
    require(_wallet != address(0));

    token = createTokenContract();
    startTime = _startTime;
    endTime = _endTime;
    rate = _rate;
    wallet = _wallet;
  }

  // creates the token to be sold.
  // override this method to have crowdsale of a specific mintable token.
  function createTokenContract() internal returns (MintableToken) {
    return new MintableToken();
  }


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

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

    uint256 weiAmount = msg.value;

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

    forwardFunds();
  }

  // send ether to the fund collection wallet
  // override to create custom fund forwarding mechanisms
  function forwardFunds() internal {
    wallet.transfer(msg.value);
  }

  // @return true if the transaction can buy tokens
  function validPurchase() internal view returns (bool) {
    bool withinPeriod = now >= startTime && now <= endTime;
    bool nonZeroPurchase = msg.value != 0;
    return withinPeriod && nonZeroPurchase;
  }

  // @return true if crowdsale event has ended
  function hasEnded() public view returns (bool) {
    return now > endTime;
  }


}


/**
 * @title CappedCrowdsale
 * @dev Extension of Crowdsale with a max amount of funds raised
 */
contract CappedCrowdsale is Crowdsale {
  using SafeMath for uint256;

  uint256 public cap;

  function CappedCrowdsale(uint256 _cap) public {
    require(_cap > 0);
    cap = _cap;
  }

  // overriding Crowdsale#validPurchase to add extra cap logic
  // @return true if investors can buy at the moment
  function validPurchase() internal view returns (bool) {
    bool withinCap = weiRaised.add(msg.value) <= cap;
    return super.validPurchase() && withinCap;
  }

  // overriding Crowdsale#hasEnded to add cap logic
  // @return true if crowdsale event has ended
  function hasEnded() public view returns (bool) {
    bool capReached = weiRaised >= cap;
    return super.hasEnded() || capReached;
  }

}











/**
 * @title FinalizableCrowdsale
 * @dev Extension of Crowdsale where an owner can do extra work
 * after finishing.
 */
contract FinalizableCrowdsale is Crowdsale, Ownable {
  using SafeMath for uint256;

  bool public isFinalized = false;

  event Finalized();

  /**
   * @dev Must be called after crowdsale ends, to do some extra finalization
   * work. Calls the contract's finalization function.
   */
  function finalize() onlyOwner public {
    require(!isFinalized);
    require(hasEnded());

    finalization();
    Finalized();

    isFinalized = true;
  }

  /**
   * @dev Can be overridden to add finalization logic. The overriding function
   * should call super.finalization() to ensure the chain of finalization is
   * executed entirely.
   */
  function finalization() internal {
  }
}






/**
 * @title RefundVault
 * @dev This contract is used for storing funds while a crowdsale
 * is in progress. Supports refunding the money if crowdsale fails,
 * and forwarding it if crowdsale is successful.
 */
contract RefundVault is Ownable {
  using SafeMath for uint256;

  enum State { Active, Refunding, Closed }

  mapping (address => uint256) public deposited;
  address public wallet;
  State public state;

  event Closed();
  event RefundsEnabled();
  event Refunded(address indexed beneficiary, uint256 weiAmount);

  function RefundVault(address _wallet) public {
    require(_wallet != address(0));
    wallet = _wallet;
    state = State.Active;
  }

  function deposit(address investor) onlyOwner public payable {
    require(state == State.Active);
    deposited[investor] = deposited[investor].add(msg.value);
  }

  function close() onlyOwner public {
    require(state == State.Active);
    state = State.Closed;
    Closed();
    wallet.transfer(this.balance);
  }

  function enableRefunds() onlyOwner public {
    require(state == State.Active);
    state = State.Refunding;
    RefundsEnabled();
  }

  function refund(address investor) public {
    require(state == State.Refunding);
    uint256 depositedValue = deposited[investor];
    deposited[investor] = 0;
    investor.transfer(depositedValue);
    Refunded(investor, depositedValue);
  }
}



/**
 * @title RefundableCrowdsale
 * @dev Extension of Crowdsale contract that adds a funding goal, and
 * the possibility of users getting a refund if goal is not met.
 * Uses a RefundVault as the crowdsale's vault.
 */
contract RefundableCrowdsale is FinalizableCrowdsale {
  using SafeMath for uint256;

  // minimum amount of funds to be raised in weis
  uint256 public goal;

  // refund vault used to hold funds while crowdsale is running
  RefundVault public vault;

  function RefundableCrowdsale(uint256 _goal) public {
    require(_goal > 0);
    vault = new RefundVault(wallet);
    goal = _goal;
  }

  // We're overriding the fund forwarding from Crowdsale.
  // In addition to sending the funds, we want to call
  // the RefundVault deposit function
  function forwardFunds() internal {
    vault.deposit.value(msg.value)(msg.sender);
  }

  // if crowdsale is unsuccessful, investors can claim refunds here
  function claimRefund() public {
    require(isFinalized);
    require(!goalReached());

    vault.refund(msg.sender);
  }

  // vault finalization task, called when owner calls finalize()
  function finalization() internal {
    if (goalReached()) {
      vault.close();
    } else {
      vault.enableRefunds();
    }

    super.finalization();
  }

  function goalReached() public view returns (bool) {
    return weiRaised >= goal;
  }

}


contract CNIFCrowdsale is CappedCrowdsale, RefundableCrowdsale {

  // ICO Stage
  // ============
  enum CrowdsaleStage { PreICO, ICO }
  CrowdsaleStage public stage = CrowdsaleStage.PreICO;
  // =============

  // Token Distribution
  // =============================
  uint256 public maxTokens = 1000000000000000000000000; // Total supply 1000 000 CNIF Tokens
  uint256 public tokensForEcosystem = 100000000000000000000000;
  uint256 public tokensForTeam = 100000000000000000000000;
  uint256 public tokensForBounty = 50000000000000000000000;
  uint256 public totalTokensForSale = 750000000000000000000000; // 750 000 CNIFs will be sold in Crowdsale
  uint256 public totalTokensForSaleDuringPreICO = 250000000000000000000000; // 250 000 out of 750 000 CNIFs will be sold during PreICO
  // ==============================

  // Amount raised in PreICO
  // ==================
  uint256 public totalWeiRaisedDuringPreICO;
  // ===================


  // Events
  event EthTransferred(string text);
  event EthRefunded(string text);


  // Constructor
  // ============
  function CNIFCrowdsale(uint256 _startTime, uint256 _endTime, uint256 _rate, address _wallet, uint256 _goal, uint256 _cap) CappedCrowdsale(_cap) FinalizableCrowdsale() RefundableCrowdsale(_goal) Crowdsale(_startTime, _endTime, _rate, _wallet) public {
      require(_goal <= _cap);
  }
  // =============

  // Token Deployment
  // =================
  function createTokenContract() internal returns (MintableToken) {
    return new CNIFToken(); // Deploys the ERC20 token. Automatically called when crowdsale contract is deployed
  }
  // ==================

  // Crowdsale Stage Management
  // =========================================================

  // Change Crowdsale Stage. Available Options: PreICO, ICO
  function setCrowdsaleStage(uint value) public onlyOwner {

      CrowdsaleStage _stage;

      if (uint(CrowdsaleStage.PreICO) == value) {
        _stage = CrowdsaleStage.PreICO;
      } else if (uint(CrowdsaleStage.ICO) == value) {
        _stage = CrowdsaleStage.ICO;
      }

      stage = _stage;

      if (stage == CrowdsaleStage.PreICO) {
        setCurrentRate(1000);
      } else if (stage == CrowdsaleStage.ICO) {
        setCurrentRate(800);
      }
  }

  // Change the current rate
  function setCurrentRate(uint256 _rate) private {
      rate = _rate;
  }

  // ================ Stage Management Over =====================

  // Token Purchase
  // =========================
  function () external payable {
      uint256 tokensThatWillBeMintedAfterPurchase = msg.value.mul(rate);
      if ((stage == CrowdsaleStage.PreICO) && (token.totalSupply() + tokensThatWillBeMintedAfterPurchase > totalTokensForSaleDuringPreICO)) {
        msg.sender.transfer(msg.value); // Refund them
        EthRefunded("PreICO Limit Hit");
        return;
      }

      buyTokens(msg.sender);

      if (stage == CrowdsaleStage.PreICO) {
          totalWeiRaisedDuringPreICO = totalWeiRaisedDuringPreICO.add(msg.value);
      }
  }

  function forwardFunds() internal {
          EthTransferred("forwarding funds to refundable vault");
          super.forwardFunds();
  }
  // ===========================

  // Finish: Mint Extra Tokens as needed before finalizing the Crowdsale.
  // ====================================================================

  function finish(address _teamFund, address _ecosystemFund, address _bountyFund) public onlyOwner {
      require(!isFinalized);
      uint256 alreadyMinted = token.totalSupply();
      require(alreadyMinted < maxTokens);

      uint256 unsoldTokens = totalTokensForSale - alreadyMinted;
      if (unsoldTokens > 0) {
        tokensForEcosystem = tokensForEcosystem + unsoldTokens;
      }

      token.mint(_teamFund,tokensForTeam);
      token.mint(_ecosystemFund,tokensForEcosystem);
      token.mint(_bountyFund,tokensForBounty);
      finalize();
  }
}

    Contract ABI  
[{"constant":true,"inputs":[],"name":"rate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"endTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"cap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"goal","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"weiRaised","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"finalize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokensForEcosystem","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"wallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalTokensForSale","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokensForBounty","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"startTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"goalReached","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_teamFund","type":"address"},{"name":"_ecosystemFund","type":"address"},{"name":"_bountyFund","type":"address"}],"name":"finish","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isFinalized","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"value","type":"uint256"}],"name":"setCrowdsaleStage","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalWeiRaisedDuringPreICO","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"claimRefund","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalTokensForSaleDuringPreICO","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stage","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"beneficiary","type":"address"}],"name":"buyTokens","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"hasEnded","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"vault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokensForTeam","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_startTime","type":"uint256"},{"name":"_endTime","type":"uint256"},{"name":"_rate","type":"uint256"},{"name":"_wallet","type":"address"},{"name":"_goal","type":"uint256"},{"name":"_cap","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"text","type":"string"}],"name":"EthTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"text","type":"string"}],"name":"EthRefunded","type":"event"},{"anonymous":false,"inputs":[],"name":"Finalized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"purchaser","type":"address"},{"indexed":true,"name":"beneficiary","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"TokenPurchase","type":"event"}]

  Contract Creation Code Switch To Opcodes View
60606040526007805460a060020a60ff021990811690915560098054909116905569d3c21bcecceda1000000600a5569152d02c7e14af6800000600b819055600c55690a968163f0a57b400000600d55699ed194db19b238c00000600e556934f086f3b33b68400000600f5534156200007757600080fd5b60405160c0806200335c8339810160405280805191906020018051919060200180519190602001805191906020018051919060200180519150829050818787878742841015620000c657600080fd5b83831015620000d457600080fd5b60008211620000e257600080fd5b600160a060020a0381161515620000f857600080fd5b6200011064010000000062000f98620001ff82021704565b60008054600160a060020a0319908116600160a060020a039384161782556001969096556002949094556004929092556003805490941691161790915581116200015957600080fd5b60065560078054600160a060020a03191633600160a060020a0316179055600081116200018557600080fd5b600354600160a060020a03166200019b62000227565b600160a060020a039091168152602001604051809103906000f0801515620001c257600080fd5b60098054600160a060020a031916600160a060020a039290921691909117905560085580821115620001f357600080fd5b50505050505062000249565b60006200020b62000238565b604051809103906000f08015156200022257600080fd5b905090565b60405161060c8062001fd383390190565b604051610d7d80620025df83390190565b611d7a80620002596000396000f300606060405260043610620001615763ffffffff60e060020a6000350416632c4e722e8114620002fd5780633197cbb61462000325578063355274ea146200033b5780634019388314620003515780634042b66f14620003675780634bb278f3146200037d5780634c4cfc3b1462000395578063521eb27314620003ab57806360219c7b14620003dd578063644280e214620003f357806378e9792514620004095780637d3d6522146200041f5780637e02bb0f14620004495780638d4e408314620004775780638da5cb5b146200048d578063a997f82f14620004a3578063abe8014a14620004bc578063b5545a3c14620004d2578063c02aaea114620004e8578063c040e6b814620004fe578063e83157421462000539578063ec8ac4d8146200054f578063ecb70fb71462000565578063f2fde38b146200057b578063fbfa77cf146200059d578063fc0c546a14620005b3578063fde83a3414620005c9575b60006200017a60045434620005df90919063ffffffff16565b9050600060095460a060020a900460ff1660018111156200019757fe5b148015620002105750600f54600080548391600160a060020a03909116906318160ddd90604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515620001f157600080fd5b6102c65a03f115156200020357600080fd5b5050506040518051905001115b15620002b457600160a060020a0333163480156108fc0290604051600060405180830381858888f1935050505015156200024957600080fd5b7fc0283f9c45b2118c7ec26e4f4bf06fc486f94a186fb38dc5dff372d9cb709d3760405160208082526010908201527f50726549434f204c696d697420486974000000000000000000000000000000006040808301919091526060909101905180910390a1620002fa565b620002bf3362000619565b600060095460a060020a900460ff166001811115620002da57fe5b1415620002fa57601054620002f6903463ffffffff6200075916565b6010555b50005b34156200030957600080fd5b6200031362000769565b60405190815260200160405180910390f35b34156200033157600080fd5b620003136200076f565b34156200034757600080fd5b6200031362000775565b34156200035d57600080fd5b620003136200077b565b34156200037357600080fd5b6200031362000781565b34156200038957600080fd5b6200039362000787565b005b3415620003a157600080fd5b620003136200082d565b3415620003b757600080fd5b620003c162000833565b604051600160a060020a03909116815260200160405180910390f35b3415620003e957600080fd5b6200031362000842565b3415620003ff57600080fd5b6200031362000848565b34156200041557600080fd5b620003136200084e565b34156200042b57600080fd5b6200043562000854565b604051901515815260200160405180910390f35b34156200045557600080fd5b62000393600160a060020a03600435811690602435811690604435166200085f565b34156200048357600080fd5b6200043562000ac2565b34156200049957600080fd5b620003c162000ad2565b3415620004af57600080fd5b6200039360043562000ae1565b3415620004c857600080fd5b6200031362000bbd565b3415620004de57600080fd5b6200039362000bc3565b3415620004f457600080fd5b6200031362000c54565b34156200050a57600080fd5b6200051462000c5a565b604051808260018111156200052557fe5b60ff16815260200191505060405180910390f35b34156200054557600080fd5b6200031362000c6a565b62000393600160a060020a036004351662000619565b34156200057157600080fd5b6200043562000c70565b34156200058757600080fd5b62000393600160a060020a036004351662000c95565b3415620005a957600080fd5b620003c162000d32565b3415620005bf57600080fd5b620003c162000d41565b3415620005d557600080fd5b6200031362000d50565b600080831515620005f4576000915062000612565b508282028284828115156200060557fe5b04146200060e57fe5b8091505b5092915050565b600080600160a060020a03831615156200063257600080fd5b6200063c62000d56565b15156200064857600080fd5b6004543492506200066190839063ffffffff620005df16565b60055490915062000679908363ffffffff6200075916565b60055560008054600160a060020a0316906340c10f1990859084906040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515620006df57600080fd5b6102c65a03f11515620006f157600080fd5b505050604051805190505082600160a060020a031633600160a060020a03167f623b3804fa71d67900d064613da8f94b9617215ee90799290593e1745087ad18848460405191825260208201526040908101905180910390a36200075462000d8e565b505050565b6000828201838110156200060e57fe5b60045481565b60025481565b60065481565b60085481565b60055481565b60075433600160a060020a03908116911614620007a357600080fd5b60075460a060020a900460ff1615620007bb57600080fd5b620007c562000c70565b1515620007d157600080fd5b620007db62000e25565b7f6823b073d48d6e3a7d385eeb601452d680e74bb46afe3255a7d778f3a9b1768160405160405180910390a16007805474ff0000000000000000000000000000000000000000191660a060020a179055565b600b5481565b600354600160a060020a031681565b600e5481565b600d5481565b60015481565b600854600554101590565b600754600090819033600160a060020a039081169116146200088057600080fd5b60075460a060020a900460ff16156200089857600080fd5b60008054600160a060020a0316906318160ddd90604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515620008e257600080fd5b6102c65a03f11515620008f457600080fd5b5050506040518051600a54909350831090506200091057600080fd5b81600e5403905060008111156200092a57600b8054820190555b60008054600c54600160a060020a03909116916340c10f199188916040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b15156200099057600080fd5b6102c65a03f11515620009a257600080fd5b5050506040518051505060008054600b54600160a060020a03909116916340c10f199187916040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000a1257600080fd5b6102c65a03f1151562000a2457600080fd5b5050506040518051505060008054600d54600160a060020a03909116916340c10f199186916040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151562000a9457600080fd5b6102c65a03f1151562000aa657600080fd5b505050604051805190505062000abb62000787565b5050505050565b60075460a060020a900460ff1681565b600754600160a060020a031681565b60075460009033600160a060020a0390811691161462000b0057600080fd5b81151562000b115750600062000b1f565b816001141562000b1f575060015b6009805482919074ff0000000000000000000000000000000000000000191660a060020a83600181111562000b5057fe5b0217905550600060095460a060020a900460ff16600181111562000b7057fe5b141562000b8a5762000b846103e862000ef0565b62000bb9565b600160095460a060020a900460ff16600181111562000ba557fe5b141562000bb95762000bb961032062000ef0565b5050565b60105481565b60075460a060020a900460ff16151562000bdc57600080fd5b62000be662000854565b1562000bf157600080fd5b600954600160a060020a031663fa89401a3360405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401600060405180830381600087803b151562000c4257600080fd5b6102c65a03f115156200075457600080fd5b600f5481565b60095460a060020a900460ff1681565b600a5481565b60065460055460009190101562000c8662000ef5565b8062000c8f5750805b91505090565b60075433600160a060020a0390811691161462000cb157600080fd5b600160a060020a038116151562000cc757600080fd5b600754600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600954600160a060020a031681565b600054600160a060020a031681565b600c5481565b60008060065462000d73346005546200075990919063ffffffff16565b1115905062000d8162000efd565b801562000c8f5750919050565b7f47af8c4076c54a76f613f82e4296a2c5e2167698d368157a82e62398393e345e60405160208082526024908201527f666f7277617264696e672066756e647320746f20726566756e6461626c6520766040808301919091527f61756c740000000000000000000000000000000000000000000000000000000060608301526080909101905180910390a162000e2362000f2f565b565b62000e2f62000854565b1562000e9057600954600160a060020a03166343d726d66040518163ffffffff1660e060020a028152600401600060405180830381600087803b151562000e7557600080fd5b6102c65a03f1151562000e8757600080fd5b50505062000ee6565b600954600160a060020a0316638c52dc416040518163ffffffff1660e060020a028152600401600060405180830381600087803b151562000ed057600080fd5b6102c65a03f1151562000ee257600080fd5b5050505b62000e2362000e23565b600455565b600254421190565b6000806000600154421015801562000f1757506002544211155b91505034151581801562000f285750805b9250505090565b600954600160a060020a031663f340fa01343360405160e060020a63ffffffff8516028152600160a060020a0390911660048201526024016000604051808303818588803b151562000f8057600080fd5b6125ee5a03f1151562000f9257600080fd5b50505050565b600062000fa462000fc0565b604051809103906000f080151562000fbb57600080fd5b905090565b604051610d7d8062000fd2833901905600606060409081526003805460a060020a60ff02191690558051908101604052601b81527f43727970746f4e6f746520496e6465782046756e6420546f6b656e00000000006020820152600490805161005b9291602001906100d3565b5060408051908101604052600481527f434e494600000000000000000000000000000000000000000000000000000000602082015260059080516100a39291602001906100d3565b506006805460ff1916601217905560038054600160a060020a033316600160a060020a031990911617905561016e565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061011457805160ff1916838001178555610141565b82800160010185558215610141579182015b82811115610141578251825591602001919060010190610126565b5061014d929150610151565b5090565b61016b91905b8082111561014d5760008155600101610157565b90565b610c008061017d6000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b81146100ea57806306fdde0314610111578063095ea7b31461019b57806318160ddd146101bd57806323b872dd146101e2578063313ce5671461020a57806340c10f1914610233578063661884631461025557806370a08231146102775780637d64bcb4146102965780638da5cb5b146102a957806395d89b41146102d8578063a9059cbb146102eb578063d73dd6231461030d578063dd62ed3e1461032f578063f2fde38b14610354575b600080fd5b34156100f557600080fd5b6100fd610375565b604051901515815260200160405180910390f35b341561011c57600080fd5b610124610385565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610160578082015183820152602001610148565b50505050905090810190601f16801561018d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101a657600080fd5b6100fd600160a060020a0360043516602435610423565b34156101c857600080fd5b6101d061048f565b60405190815260200160405180910390f35b34156101ed57600080fd5b6100fd600160a060020a0360043581169060243516604435610495565b341561021557600080fd5b61021d610617565b60405160ff909116815260200160405180910390f35b341561023e57600080fd5b6100fd600160a060020a0360043516602435610620565b341561026057600080fd5b6100fd600160a060020a036004351660243561072d565b341561028257600080fd5b6101d0600160a060020a0360043516610827565b34156102a157600080fd5b6100fd610842565b34156102b457600080fd5b6102bc6108cd565b604051600160a060020a03909116815260200160405180910390f35b34156102e357600080fd5b6101246108dc565b34156102f657600080fd5b6100fd600160a060020a0360043516602435610947565b341561031857600080fd5b6100fd600160a060020a0360043516602435610a42565b341561033a57600080fd5b6101d0600160a060020a0360043581169060243516610ae6565b341561035f57600080fd5b610373600160a060020a0360043516610b11565b005b60035460a060020a900460ff1681565b60048054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561041b5780601f106103f05761010080835404028352916020019161041b565b820191906000526020600020905b8154815290600101906020018083116103fe57829003601f168201915b505050505081565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60005481565b6000600160a060020a03831615156104ac57600080fd5b600160a060020a0384166000908152600160205260409020548211156104d157600080fd5b600160a060020a038085166000908152600260209081526040808320339094168352929052205482111561050457600080fd5b600160a060020a03841660009081526001602052604090205461052d908363ffffffff610bac16565b600160a060020a038086166000908152600160205260408082209390935590851681522054610562908363ffffffff610bbe16565b600160a060020a038085166000908152600160209081526040808320949094558783168252600281528382203390931682529190915220546105aa908363ffffffff610bac16565b600160a060020a03808616600081815260026020908152604080832033861684529091529081902093909355908516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60065460ff1681565b60035460009033600160a060020a0390811691161461063e57600080fd5b60035460a060020a900460ff161561065557600080fd5b600054610668908363ffffffff610bbe16565b6000908155600160a060020a038416815260016020526040902054610693908363ffffffff610bbe16565b600160a060020a0384166000818152600160205260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a2600160a060020a03831660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350600192915050565b600160a060020a0333811660009081526002602090815260408083209386168352929052908120548083111561078a57600160a060020a0333811660009081526002602090815260408083209388168352929052908120556107c1565b61079a818463ffffffff610bac16565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b60035460009033600160a060020a0390811691161461086057600080fd5b60035460a060020a900460ff161561087757600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a150600190565b600354600160a060020a031681565b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561041b5780601f106103f05761010080835404028352916020019161041b565b6000600160a060020a038316151561095e57600080fd5b600160a060020a03331660009081526001602052604090205482111561098357600080fd5b600160a060020a0333166000908152600160205260409020546109ac908363ffffffff610bac16565b600160a060020a0333811660009081526001602052604080822093909355908516815220546109e1908363ffffffff610bbe16565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a033381166000908152600260209081526040808320938616835292905290812054610a7a908363ffffffff610bbe16565b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60035433600160a060020a03908116911614610b2c57600080fd5b600160a060020a0381161515610b4157600080fd5b600354600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600082821115610bb857fe5b50900390565b600082820183811015610bcd57fe5b93925050505600a165627a7a7230582095f737cf66023240bf019f96bfa79f6a186fc77fd51ded58cbb3370db3f9feba0029a165627a7a72305820d5c8abfd13fa0fa57e69e593441e881957d012468cc644fc8910820a7d6ed8fe00296060604052341561000f57600080fd5b60405160208061060c8339810160405280805160008054600160a060020a03191633600160a060020a039081169190911790915590925082161515905061005557600080fd5b60028054600160a060020a031916600160a060020a03929092169190911760a060020a60ff021916905561057e8061008e6000396000f3006060604052600436106100985763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166343d726d6811461009d578063521eb273146100b25780638c52dc41146100e15780638da5cb5b146100f4578063c19d93fb14610107578063cb13cddb1461013e578063f2fde38b1461016f578063f340fa011461018e578063fa89401a146101a2575b600080fd5b34156100a857600080fd5b6100b06101c1565b005b34156100bd57600080fd5b6100c561029c565b604051600160a060020a03909116815260200160405180910390f35b34156100ec57600080fd5b6100b06102ab565b34156100ff57600080fd5b6100c561033c565b341561011257600080fd5b61011a61034b565b6040518082600281111561012a57fe5b60ff16815260200191505060405180910390f35b341561014957600080fd5b61015d600160a060020a036004351661035b565b60405190815260200160405180910390f35b341561017a57600080fd5b6100b0600160a060020a036004351661036d565b6100b0600160a060020a0360043516610408565b34156101ad57600080fd5b6100b0600160a060020a036004351661048c565b60005433600160a060020a039081169116146101dc57600080fd5b60006002805460a060020a900460ff16908111156101f657fe5b1461020057600080fd5b6002805474ff00000000000000000000000000000000000000001916740200000000000000000000000000000000000000001790557f1cdde67b72a90f19919ac732a437ac2f7a10fc128d28c2a6e525d89ce5cd9d3a60405160405180910390a1600254600160a060020a039081169030163180156108fc0290604051600060405180830381858888f19350505050151561029a57600080fd5b565b600254600160a060020a031681565b60005433600160a060020a039081169116146102c657600080fd5b60006002805460a060020a900460ff16908111156102e057fe5b146102ea57600080fd5b6002805474ff0000000000000000000000000000000000000000191660a060020a1790557f599d8e5a83cffb867d051598c4d70e805d59802d8081c1c7d6dffc5b6aca2b8960405160405180910390a1565b600054600160a060020a031681565b60025460a060020a900460ff1681565b60016020526000908152604090205481565b60005433600160a060020a0390811691161461038857600080fd5b600160a060020a038116151561039d57600080fd5b600054600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60005433600160a060020a0390811691161461042357600080fd5b60006002805460a060020a900460ff169081111561043d57fe5b1461044757600080fd5b600160a060020a038116600090815260016020526040902054610470903463ffffffff61053c16565b600160a060020a03909116600090815260016020526040902055565b600060016002805460a060020a900460ff16908111156104a857fe5b146104b257600080fd5b50600160a060020a038116600081815260016020526040808220805492905590919082156108fc0290839051600060405180830381858888f1935050505015156104fb57600080fd5b81600160a060020a03167fd7dee2702d63ad89917b6a4da9981c90c4d24f8c2bdfd64c604ecae57d8d06518260405190815260200160405180910390a25050565b60008282018381101561054b57fe5b93925050505600a165627a7a723058205c00d36dc3cacb69bf27e725cc0c231c96132969330fb131b07f35782fbb8b7a0029606060409081526003805460a060020a60ff02191690558051908101604052601b81527f43727970746f4e6f746520496e6465782046756e6420546f6b656e00000000006020820152600490805161005b9291602001906100d3565b5060408051908101604052600481527f434e494600000000000000000000000000000000000000000000000000000000602082015260059080516100a39291602001906100d3565b506006805460ff1916601217905560038054600160a060020a033316600160a060020a031990911617905561016e565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061011457805160ff1916838001178555610141565b82800160010185558215610141579182015b82811115610141578251825591602001919060010190610126565b5061014d929150610151565b5090565b61016b91905b8082111561014d5760008155600101610157565b90565b610c008061017d6000396000f3006060604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b81146100ea57806306fdde0314610111578063095ea7b31461019b57806318160ddd146101bd57806323b872dd146101e2578063313ce5671461020a57806340c10f1914610233578063661884631461025557806370a08231146102775780637d64bcb4146102965780638da5cb5b146102a957806395d89b41146102d8578063a9059cbb146102eb578063d73dd6231461030d578063dd62ed3e1461032f578063f2fde38b14610354575b600080fd5b34156100f557600080fd5b6100fd610375565b604051901515815260200160405180910390f35b341561011c57600080fd5b610124610385565b60405160208082528190810183818151815260200191508051906020019080838360005b83811015610160578082015183820152602001610148565b50505050905090810190601f16801561018d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101a657600080fd5b6100fd600160a060020a0360043516602435610423565b34156101c857600080fd5b6101d061048f565b60405190815260200160405180910390f35b34156101ed57600080fd5b6100fd600160a060020a0360043581169060243516604435610495565b341561021557600080fd5b61021d610617565b60405160ff909116815260200160405180910390f35b341561023e57600080fd5b6100fd600160a060020a0360043516602435610620565b341561026057600080fd5b6100fd600160a060020a036004351660243561072d565b341561028257600080fd5b6101d0600160a060020a0360043516610827565b34156102a157600080fd5b6100fd610842565b34156102b457600080fd5b6102bc6108cd565b604051600160a060020a03909116815260200160405180910390f35b34156102e357600080fd5b6101246108dc565b34156102f657600080fd5b6100fd600160a060020a0360043516602435610947565b341561031857600080fd5b6100fd600160a060020a0360043516602435610a42565b341561033a57600080fd5b6101d0600160a060020a0360043581169060243516610ae6565b341561035f57600080fd5b610373600160a060020a0360043516610b11565b005b60035460a060020a900460ff1681565b60048054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561041b5780601f106103f05761010080835404028352916020019161041b565b820191906000526020600020905b8154815290600101906020018083116103fe57829003601f168201915b505050505081565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60005481565b6000600160a060020a03831615156104ac57600080fd5b600160a060020a0384166000908152600160205260409020548211156104d157600080fd5b600160a060020a038085166000908152600260209081526040808320339094168352929052205482111561050457600080fd5b600160a060020a03841660009081526001602052604090205461052d908363ffffffff610bac16565b600160a060020a038086166000908152600160205260408082209390935590851681522054610562908363ffffffff610bbe16565b600160a060020a038085166000908152600160209081526040808320949094558783168252600281528382203390931682529190915220546105aa908363ffffffff610bac16565b600160a060020a03808616600081815260026020908152604080832033861684529091529081902093909355908516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b60065460ff1681565b60035460009033600160a060020a0390811691161461063e57600080fd5b60035460a060020a900460ff161561065557600080fd5b600054610668908363ffffffff610bbe16565b6000908155600160a060020a038416815260016020526040902054610693908363ffffffff610bbe16565b600160a060020a0384166000818152600160205260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a2600160a060020a03831660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350600192915050565b600160a060020a0333811660009081526002602090815260408083209386168352929052908120548083111561078a57600160a060020a0333811660009081526002602090815260408083209388168352929052908120556107c1565b61079a818463ffffffff610bac16565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526001602052604090205490565b60035460009033600160a060020a0390811691161461086057600080fd5b60035460a060020a900460ff161561087757600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a150600190565b600354600160a060020a031681565b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561041b5780601f106103f05761010080835404028352916020019161041b565b6000600160a060020a038316151561095e57600080fd5b600160a060020a03331660009081526001602052604090205482111561098357600080fd5b600160a060020a0333166000908152600160205260409020546109ac908363ffffffff610bac16565b600160a060020a0333811660009081526001602052604080822093909355908516815220546109e1908363ffffffff610bbe16565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b600160a060020a033381166000908152600260209081526040808320938616835292905290812054610a7a908363ffffffff610bbe16565b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60035433600160a060020a03908116911614610b2c57600080fd5b600160a060020a0381161515610b4157600080fd5b600354600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600082821115610bb857fe5b50900390565b600082820183811015610bcd57fe5b93925050505600a165627a7a7230582095f737cf66023240bf019f96bfa79f6a186fc77fd51ded58cbb3370db3f9feba0029000000000000000000000000000000000000000000000000000000005bda4200000000000000000000000000000000000000000000000000000000005c3a7f7f00000000000000000000000000000000000000000000000000000000000003e800000000000000000000000036268e72ebeab143a5de65e0c86e049986b4319b000000000000000000000000000000000000000000000002b5e3af16b1880000000000000000000000000000000000000000000000000043c33c193756480000

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

-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 000000000000000000000000000000000000000000000000000000005bda4200
Arg [1] : 000000000000000000000000000000000000000000000000000000005c3a7f7f
Arg [2] : 00000000000000000000000000000000000000000000000000000000000003e8
Arg [3] : 00000000000000000000000036268e72ebeab143a5de65e0c86e049986b4319b
Arg [4] : 000000000000000000000000000000000000000000000002b5e3af16b1880000
Arg [5] : 000000000000000000000000000000000000000000000043c33c193756480000


   Swarm Source:
bzzr://95f737cf66023240bf019f96bfa79f6a186fc77fd51ded58cbb3370db3f9feba

 

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.