Sponsored:   Ubex.com - World roadshow: Seoul Sep 17-19, Singapore Sep 19-20, Dubai 18-23. Meet us!.
 Latest 25 txns From a total of 23801 Transactions
(+1 PendingTxn)

TxHash Age From To Value [TxFee]
0x552d152c71e282c98d78a7dd67e352cee61f0356ab3698a0d6fee502e7d2f962(pending)0xea35c92fc2b2d0eca27fae3e06f26a801a1ff469  IN  0x3136ef851592acf49ca4c825131e364170fa32b30 Ether(Pending)
0xb4e871ee6421f5b014ea1e091ba6787efb14d4a005e47e59a62fb5e50ae4066916 hrs 9 mins ago0xe55e916436de0f7f459d7438178106433de5413c  IN   CoinFiToken0 Ether0.000547332
0x695cbd46759c04d2d9dde9b1fd4da0a5c966851ea94f985d69a97aa0e671f03c17 hrs 19 mins ago0x7fd2b77b302ffc3a0ca6dffd910fc35f103e8232  IN   CoinFiToken0 Ether0.001547586
0xd5eb1c6b6526d6a4938e151e3eef01c9ee367c3f7945135da782dc2d865e05ac18 hrs 47 mins agoKucoin  IN   CoinFiToken0 Ether0.00056619
0x1f08eaf62bde391157abda7683107aad5e8f55d2c6ec84486ae2deb516aaa18520 hrs 58 mins ago0x5c6ee67ed109f1af30c7bd772ed0d50883564f85  IN   CoinFiToken0 Ether0.0018873
0xdf69ceac50e2fb8cb9be9c53bb9d85f4189621621b31eb55c1e70133427e64d921 hrs 30 mins ago0x56eb4d25984265a416fa895ce72b900786fcf1a0  IN   CoinFiToken0 Ether0.00094525
0xeb28c69c4a155c0e14f2f138ab3dc8c6136bf542dfe04af2f1dd90761493ae371 day 2 hrs ago0x88bcc4f2ee0b6a893f703b4067cda70188de0dd5  IN   CoinFiToken0 Ether0.0006978483
0x9c2aff8917eecef3b665bbdb552896649ad9aa9d0bb160f3792ad001742e3f0d1 day 5 hrs ago0x8ed87da34ebe6475a25bcae38c02eb12ac46b823  IN   CoinFiToken0 Ether0.00073934
0xb9877a809e99cee2fdc3013be902949a51df1cebc8324dad4283825f91c43d721 day 10 hrs ago0xe943ab1af80e875828ace8c88eac9cbceafea411  IN   CoinFiToken0 Ether0.00037746
0xd16183992b77f51e6f94e42c6c7faabcfefde21234442fc1c032079ac030d8a41 day 11 hrs ago0x98d5f53b6ee21b4d711c4f6feb5995d700cd9f43  IN   CoinFiToken0 Ether0.000775387
0x48c8120d6c3b30aa9ea8ca1327f6b6feee74d0273cf1e0669731f5df9b32b0a21 day 14 hrs ago0x2ea307a5597a58a1299a39c9a67b67856bd767f0  IN   CoinFiToken0 Ether0.000302303597
0xa290f5e1454b6b80437418023305d57dbf56e150c77daddbceb4f33c612a2d741 day 14 hrs agoGate.io_1  IN   CoinFiToken0 Ether0.0006796647
0xc8158a94a38efb01582d9efebf99c11a7992ad1ef71ef114eab567002d2bfd9d2 days 56 mins ago0x3ac80cf0f68d2040c59b1aa13d0ca4753af094ba  IN   CoinFiToken0 Ether0.000432174
0x60871538a26019beca239b30d71f453fefaa1686bc1f43d842a5d9d525ada1512 days 1 hr ago0x71cf7a5c8d389c0a48cf5aef0690cd9f51564493  IN   CoinFiToken0 Ether0.00136092
0x1019fdbb47d4c5e83fa539a2effd0dd6a7b8ab54e1c24ef1a4bf0cbac81662eb2 days 6 hrs ago0xba599abfd9cb2209f00df0b033b18736b50396fd  IN   CoinFiToken0 Ether0.00056715
0xecaa368fdbeb42c5d3e644927c0c8e7a3d41e3854206a529297e81ec4ea95b542 days 7 hrs ago0x89399d7a17e5b6c78417f1f4cd3ea80ed2cbb082  IN   CoinFiToken0 Ether0.000091500574
0x99ea6c88876a9a4fb0cf4d1bf34cfe9ab63901f8b6c735acb077f4acdac491ca2 days 11 hrs ago0x1e39874060c928d61ac640a7fd161fd7e9e83e5e  IN   CoinFiToken0 Ether0.00045739
0xbd487b8ad9cb46b0a8335687ec6ce77b2eabc706899f52ae6d504184a13c98aa2 days 12 hrs ago0x9d4e4d67399828bd82f5ace79bf67bc5af33c66b  IN   CoinFiToken0 Ether0.001207872
0x342f7868d5f049f1a640a9136bdf00beac4a597cadaea2381f98f9cb545fe7072 days 12 hrs ago0x9d4e4d67399828bd82f5ace79bf67bc5af33c66b  IN   CoinFiToken0 Ether0.001687872
0x12e90725dd5de71df81f7ca8530682cbf6e333b674b7619e3139386948d434f82 days 12 hrs ago0x9d4e4d67399828bd82f5ace79bf67bc5af33c66b  IN   CoinFiToken0 Ether0.001207872
0xe532c74846a520482017768fd9792bfbd34fb06e2edf7dda0217e4a79d19e2d72 days 12 hrs ago0x9d4e4d67399828bd82f5ace79bf67bc5af33c66b  IN   CoinFiToken0 Ether0.001207872
0xfa4ce999fdf1a2b0d668dcc71794a6c97d6cfedf9f3c202dfd77ef7d2f7d51f22 days 12 hrs ago0x9d4e4d67399828bd82f5ace79bf67bc5af33c66b  IN   CoinFiToken0 Ether0.001207872
0x5b215fa807dfad1d970a7005a28231b1a3b5477e11a06e0ac02caf4781519db22 days 13 hrs ago0x9d4e4d67399828bd82f5ace79bf67bc5af33c66b  IN   CoinFiToken0 Ether0.001207872
0xcda801cfb3d857de392fbb964e51d7c40093088738186ea335e1c243dffff5492 days 14 hrs ago0xa4970bff89dafd5bea2655a13eccd259fe285d10  IN   CoinFiToken0 Ether0.00118612
0xae2accc30d4a757108c6ba161fd5a3afd5e65a2d00f242a00fc090d93c649e7b2 days 14 hrs ago0xa4970bff89dafd5bea2655a13eccd259fe285d10  IN   CoinFiToken0 Ether0.00274612
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
View All
ParentTxHash Block Age From To Value
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: CoinFiToken
Compiler Text: v0.4.19+commit.c4cbbb05
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.18;


/**
 * https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts/math/SafeMath.sol
 * https://github.com/OpenZeppelin/zeppelin-solidity/commit/49b42e86963df7192e7024e0e5bd30fa9d7ccbef
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {

  /**
  * @dev Multiplies two numbers, throws on overflow.
  */
  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;
  }

  /**
  * @dev Integer division of two numbers, truncating the quotient.
  */
  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;
  }

  /**
  * @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
  */
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  /**
  * @dev Adds two numbers, throws on overflow.
  */
  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}


/**
 * https://raw.githubusercontent.com/OpenZeppelin/zeppelin-solidity/master/contracts/token/ERC20/ERC20Basic.sol
 * https://github.com/OpenZeppelin/zeppelin-solidity/commit/370e6a882aef6b9600949594d3a3e4854260d51e
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Basic {
  function totalSupply() public view returns (uint256);
  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);
}


/**
 * https://raw.githubusercontent.com/OpenZeppelin/zeppelin-solidity/master/contracts/token/ERC20/ERC20.sol
 * https://github.com/OpenZeppelin/zeppelin-solidity/commit/c5d66183abcb63a90a2528b8333b2b17067629fc
 * @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);
}


/**
 * https://raw.githubusercontent.com/OpenZeppelin/zeppelin-solidity/master/contracts/token/ERC20/SafeERC20.sol
 * https://github.com/OpenZeppelin/zeppelin-solidity/commit/b67856c69d3536f28d51b75b270dfff79343bf93
 * @title SafeERC20
 * @dev Wrappers around ERC20 operations that throw on failure.
 * To use this library you can add a `using SafeERC20 for ERC20;` statement to your contract,
 * which allows you to call the safe operations as `token.safeTransfer(...)`, etc.
 */
library SafeERC20 {
  function safeTransfer(ERC20Basic token, address to, uint256 value) internal {
    assert(token.transfer(to, value));
  }

  function safeTransferFrom(ERC20 token, address from, address to, uint256 value) internal {
    assert(token.transferFrom(from, to, value));
  }

  function safeApprove(ERC20 token, address spender, uint256 value) internal {
    assert(token.approve(spender, value));
  }
}


/**
 * https://raw.githubusercontent.com/OpenZeppelin/zeppelin-solidity/master/contracts/token/ERC20/BasicToken.sol
 * https://github.com/OpenZeppelin/zeppelin-solidity/commit/c5d66183abcb63a90a2528b8333b2b17067629fc
 * @title Basic token
 * @dev Basic version of StandardToken, with no allowances.
 */
contract BasicToken is ERC20Basic {
  using SafeMath for uint256;

  mapping(address => uint256) balances;

  uint256 totalSupply_;

  /**
  * @dev total number of tokens in existence
  */
  function totalSupply() public view returns (uint256) {
    return totalSupply_;
  }

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


/**
 * https://raw.githubusercontent.com/OpenZeppelin/zeppelin-solidity/master/contracts/token/ERC20/StandardToken.sol
 * https://github.com/OpenZeppelin/zeppelin-solidity/commit/c5d66183abcb63a90a2528b8333b2b17067629fc
 * @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;
  }
}


/**
 * https://raw.githubusercontent.com/OpenZeppelin/zeppelin-solidity/master/contracts/ownership/Ownable.sol
 * https://github.com/OpenZeppelin/zeppelin-solidity/commit/e60aee61f20d25bffa0a1f651247810a8bc8a660
 * @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;
  }
}


/**
 * https://raw.githubusercontent.com/OpenZeppelin/zeppelin-solidity/master/contracts/token/ERC20/TokenVesting.sol
 * https://github.com/OpenZeppelin/zeppelin-solidity/commit/c5d66183abcb63a90a2528b8333b2b17067629fc
 * @title TokenVesting
 * @dev A token holder contract that can release its token balance gradually like a
 * typical vesting scheme, with a cliff and vesting period. Optionally revocable by the
 * owner.
 */
contract TokenVesting is Ownable {
  using SafeMath for uint256;
  using SafeERC20 for ERC20Basic;

  event Released(uint256 amount);
  event Revoked();

  // beneficiary of tokens after they are released
  address public beneficiary;

  uint256 public cliff;
  uint256 public start;
  uint256 public duration;

  bool public revocable;

  mapping (address => uint256) public released;
  mapping (address => bool) public revoked;

  /**
   * @dev Creates a vesting contract that vests its balance of any ERC20 token to the
   * _beneficiary, gradually in a linear fashion until _start + _duration. By then all
   * of the balance will have vested.
   * @param _beneficiary address of the beneficiary to whom vested tokens are transferred
   * @param _cliff duration in seconds of the cliff in which tokens will begin to vest
   * @param _duration duration in seconds of the period in which the tokens will vest
   * @param _revocable whether the vesting is revocable or not
   */
  function TokenVesting(address _beneficiary, uint256 _start, uint256 _cliff, uint256 _duration, bool _revocable) public {
    require(_beneficiary != address(0));
    require(_cliff <= _duration);

    beneficiary = _beneficiary;
    revocable = _revocable;
    duration = _duration;
    cliff = _start.add(_cliff);
    start = _start;
  }

  /**
   * @notice Transfers vested tokens to beneficiary.
   * @param token ERC20 token which is being vested
   */
  function release(ERC20Basic token) public {
    uint256 unreleased = releasableAmount(token);

    require(unreleased > 0);

    released[token] = released[token].add(unreleased);

    token.safeTransfer(beneficiary, unreleased);

    Released(unreleased);
  }

  /**
   * @notice Allows the owner to revoke the vesting. Tokens already vested
   * remain in the contract, the rest are returned to the owner.
   * @param token ERC20 token which is being vested
   */
  function revoke(ERC20Basic token) public onlyOwner {
    require(revocable);
    require(!revoked[token]);

    uint256 balance = token.balanceOf(this);

    uint256 unreleased = releasableAmount(token);
    uint256 refund = balance.sub(unreleased);

    revoked[token] = true;

    token.safeTransfer(owner, refund);

    Revoked();
  }

  /**
   * @dev Calculates the amount that has already vested but hasn't been released yet.
   * @param token ERC20 token which is being vested
   */
  function releasableAmount(ERC20Basic token) public view returns (uint256) {
    return vestedAmount(token).sub(released[token]);
  }

  /**
   * @dev Calculates the amount that has already vested.
   * @param token ERC20 token which is being vested
   */
  function vestedAmount(ERC20Basic token) public view returns (uint256) {
    uint256 currentBalance = token.balanceOf(this);
    uint256 totalBalance = currentBalance.add(released[token]);

    if (now < cliff) {
      return 0;
    } else if (now >= start.add(duration) || revoked[token]) {
      return totalBalance;
    } else {
      return totalBalance.mul(now.sub(start)).div(duration);
    }
  }
}


contract CoinFiToken is StandardToken, Ownable {
    string public constant name = "CoinFi";
    string public constant symbol = "COFI";
    uint8 public constant decimals = 18;

    // 300 million tokens minted
    uint256 public constant INITIAL_SUPPLY = 300000000 * (10 ** uint256(decimals));

    // Indicates whether token transfer is enabled
    bool public transferEnabled = false;

    // Specifies airdrop contract address which can transfer tokens before unlock
    address public airdropAddress;

    modifier onlyWhenTransferEnabled() {
        if (!transferEnabled) {
            require(msg.sender == owner || msg.sender == airdropAddress);
        }
        _;
    }

    function CoinFiToken() public {
        totalSupply_ = INITIAL_SUPPLY;
        balances[msg.sender] = INITIAL_SUPPLY;
        Transfer(0x0, msg.sender, INITIAL_SUPPLY);
    }

    /**
     * Enables everyone to start transferring their tokens.
     * This can only be called by the token owner.
     */
    function enableTransfer() external onlyOwner {
        transferEnabled = true;
    }

    /**
     * Disables the ability to transfer tokens except by owner.
     * This can only be called by the token owner.
     */
    function disableTransfer() external onlyOwner {
        transferEnabled = false;
    }

    /**
     * Sets the airdrop contract address which is allowed to transfer before unlock.
     * This can only be called by the token owner.
     */
    function setAirdropAddress(address _airdropAddress) external onlyOwner {
        airdropAddress = _airdropAddress;
    }

    /**
     * Overrides the ERC20Basic transfer() function to only allow token transfers after enableTransfer() is called.
     */
    function transfer(address _to, uint256 _value) public onlyWhenTransferEnabled returns (bool) {
        return super.transfer(_to, _value);
    }

    /**
     * Overrides the ERC20Basic transferFrom() function to only allow token transfers after enableTransfer() is called.
     */
    function transferFrom(address _from, address _to, uint256 _value) public onlyWhenTransferEnabled returns (bool) {
        return super.transferFrom(_from, _to, _value);
    }
}


contract CoinFiAirdrop is Ownable {
    uint256 public constant AIRDROP_AMOUNT = 500 * (10**18);

    // Actual token instance to airdrop
    ERC20 public token;

    function CoinFiAirdrop(ERC20 _token) public {
        token = _token;
    }

    function sendAirdrop(address[] airdropRecipients, bool allowDuplicates) external onlyOwner {
        require(airdropRecipients.length > 0);

        for (uint i = 0; i < airdropRecipients.length; i++) {
            if (token.balanceOf(airdropRecipients[i]) == 0 || allowDuplicates) {
                token.transferFrom(owner, airdropRecipients[i], AIRDROP_AMOUNT);
            }
        }
    }
}

    Contract ABI  
[{"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":"INITIAL_SUPPLY","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"transferEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"airdropAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","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":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_airdropAddress","type":"address"}],"name":"setAirdropAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"disableTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"enableTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"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":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]

  Contract Creation Code Switch To Opcodes View
60606040526003805460a060020a60ff0219169055341561001f57600080fd5b60038054600160a060020a03191633600160a060020a03169081179091556af8277896582678ac000000600181905560008281526020819052604080822083905590917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef915190815260200160405180910390a3610bce806100a26000396000f3006060604052600436106101065763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461010b578063095ea7b31461019557806318160ddd146101cb57806323b872dd146101f05780632ff2e9dc14610218578063313ce5671461022b5780634cd412d514610254578063661884631461026757806370a082311461028957806384413b65146102a85780638da5cb5b146102d757806395d89b41146102ea578063a9059cbb146102fd578063ab0eda9e1461031f578063b187984f14610340578063d73dd62314610353578063dd62ed3e14610375578063f1b50c1d1461039a578063f2fde38b146103ad575b600080fd5b341561011657600080fd5b61011e6103cc565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561015a578082015183820152602001610142565b50505050905090810190601f1680156101875780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101a057600080fd5b6101b7600160a060020a0360043516602435610403565b604051901515815260200160405180910390f35b34156101d657600080fd5b6101de61046f565b60405190815260200160405180910390f35b34156101fb57600080fd5b6101b7600160a060020a0360043581169060243516604435610475565b341561022357600080fd5b6101de6104d4565b341561023657600080fd5b61023e6104e3565b60405160ff909116815260200160405180910390f35b341561025f57600080fd5b6101b76104e8565b341561027257600080fd5b6101b7600160a060020a03600435166024356104f8565b341561029457600080fd5b6101de600160a060020a03600435166105f2565b34156102b357600080fd5b6102bb61060d565b604051600160a060020a03909116815260200160405180910390f35b34156102e257600080fd5b6102bb61061c565b34156102f557600080fd5b61011e61062b565b341561030857600080fd5b6101b7600160a060020a0360043516602435610662565b341561032a57600080fd5b61033e600160a060020a03600435166106bf565b005b341561034b57600080fd5b61033e610709565b341561035e57600080fd5b6101b7600160a060020a0360043516602435610744565b341561038057600080fd5b6101de600160a060020a03600435811690602435166107e8565b34156103a557600080fd5b61033e610813565b34156103b857600080fd5b61033e600160a060020a0360043516610854565b60408051908101604052600681527f436f696e46690000000000000000000000000000000000000000000000000000602082015281565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60015490565b60035460009060a060020a900460ff1615156104c15760035433600160a060020a03908116911614806104b6575060045433600160a060020a039081169116145b15156104c157600080fd5b6104cc8484846108ef565b949350505050565b6af8277896582678ac00000081565b601281565b60035460a060020a900460ff1681565b600160a060020a0333811660009081526002602090815260408083209386168352929052908120548083111561055557600160a060020a03338116600090815260026020908152604080832093881683529290529081205561058c565b610565818463ffffffff610a6f16565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a031660009081526020819052604090205490565b600454600160a060020a031681565b600354600160a060020a031681565b60408051908101604052600481527f434f464900000000000000000000000000000000000000000000000000000000602082015281565b60035460009060a060020a900460ff1615156106ae5760035433600160a060020a03908116911614806106a3575060045433600160a060020a039081169116145b15156106ae57600080fd5b6106b88383610a81565b9392505050565b60035433600160a060020a039081169116146106da57600080fd5b6004805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60035433600160a060020a0390811691161461072457600080fd5b6003805474ff000000000000000000000000000000000000000019169055565b600160a060020a03338116600090815260026020908152604080832093861683529290529081205461077c908363ffffffff610b9316565b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60035433600160a060020a0390811691161461082e57600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a179055565b60035433600160a060020a0390811691161461086f57600080fd5b600160a060020a038116151561088457600080fd5b600354600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36003805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000600160a060020a038316151561090657600080fd5b600160a060020a03841660009081526020819052604090205482111561092b57600080fd5b600160a060020a038085166000908152600260209081526040808320339094168352929052205482111561095e57600080fd5b600160a060020a038416600090815260208190526040902054610987908363ffffffff610a6f16565b600160a060020a0380861660009081526020819052604080822093909355908516815220546109bc908363ffffffff610b9316565b600160a060020a0380851660009081526020818152604080832094909455878316825260028152838220339093168252919091522054610a02908363ffffffff610a6f16565b600160a060020a03808616600081815260026020908152604080832033861684529091529081902093909355908516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b600082821115610a7b57fe5b50900390565b6000600160a060020a0383161515610a9857600080fd5b600160a060020a033316600090815260208190526040902054821115610abd57600080fd5b600160a060020a033316600090815260208190526040902054610ae6908363ffffffff610a6f16565b600160a060020a033381166000908152602081905260408082209390935590851681522054610b1b908363ffffffff610b9316565b60008085600160a060020a0316600160a060020a031681526020019081526020016000208190555082600160a060020a031633600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350600192915050565b6000828201838110156106b857fe00a165627a7a72305820bb67a0d368128a0d35db065631c0c9d4da2c3ecaa521370d91d0ab2b66c56ebb0029

   Swarm Source:
bzzr://bb67a0d368128a0d35db065631c0c9d4da2c3ecaa521370d91d0ab2b66c56ebb

 

View All
Block Age transaction Difficulty 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.