Contract Overview
Balance: 0 Ether
Ether Value: $0
Transactions: 47 txns
Token Tracker: Future Energy Token (FGY)
Misc:
Address Watch: Add To Watch List
Contract Creator: 0xadf9c6d6a69d29a466b1b2182144e8b831e09a1eat txn 0x3141e7fba64494e4d37f2102ded97dd7ca2a953c32e65e3f1d215cae4b282bbe
 Latest 25 transactions from a total of 47 transactions

TxHash Age From To Value [TxFee]
0x6c4a6a6c57397d4fc4b6d48e570633cdb048759e5a3eee1a5204ee28300245009 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.00205
0x63a099923e5951af413dd1482b15fd064a16899833b7c246add4e7577d8f39b71 day 30 mins ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.000984
0x11dac91791b98fa7de5bb53e4d2950342ee5556aa8d0164b9cf6092dd1a811f71 day 32 mins ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.000984
0x742b4b67c86725b909d2be0cce4668180f0f7f5e0982778a7af937f3e746cdc61 day 32 mins ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.000984
0xd6aa13758c0401bf32b5a6a36058d07df6fc6756b2b001adb5c24fc14c280b301 day 33 mins ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.000984
0x14860f69c72f827dce760c0a2fb0bfdfa977c4f51e870dba196ef4ab15c65d121 day 33 mins ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.000984
0xb6e4bb785e9ea2edd1b7a87d3205ead4e767c151d9aafcba604a508cfa7f09751 day 33 mins ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.000984
0x21de4a8f1bd83d68a8204249023a57aac0f9370f4c8ddd6d441b40f3345846a81 day 34 mins ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.00164
0x114fd99e12cbad4cc34529ad3c9565af1291203d73735a05fee7f19f7eb310b74 days 59 mins ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.00123
0x87c2c45fc618c3e9db57469c0ac28003045ffa88ba1f246d3fb5f7ee67e0a2954 days 1 hr ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.00123
0x80fe590dbd0d2fd3ebbbe44e6ef02a13e5887a98612b3130ce02628e11b0ebd84 days 2 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.00123
0x5490ac4f8cd76a4afaf2a7795716a73b34fa2bc32b9738ee4fe84262183a38de4 days 2 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.001025
0xba2b13bc9c048cb87a80cf2f8dbed2289a972f048aa53d9816a0207c337f11e24 days 2 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.000984
0x27d9b5e9e6c3ec057a4155e99b1ca0ebfc406d2fb0859c75106a83a5204377384 days 2 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.000984
0xce0f6d669a743bf1dd235fabde0b6bcc330c16fee17ce278bd6cd8ed88ea5f3a4 days 3 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.002160167
0x006d9553ef05da4a292a849f55e6afd4c46c055d9809ababcc264978c45e8aa44 days 3 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.002160167
0x1aef4385dff0371a05030e2a193ab9b6122e8dec828e2e629c6a34af03dc74834 days 3 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.00205
0x0bb3eaad85cfafc63a17c9ac16d7a4abe7a1e9e1b49fd657d7d34bf0241149d54 days 3 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.00123
0x95425d03f3f2f2b6bcd2e4ca9c6f61c69366c655860367de4ce0a18c364260bb4 days 3 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.001025
0x829d60bd1e2dc03e6bef8a35d4a4f7f539f44a9dd09b0ef1cacbefc6f0435a284 days 3 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.002160167
0x5d962e984f638858ede48c6be522e2bf2bdd50e80c012f59dd5bc3349e5c3d814 days 4 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.002157543
0x770848998767bd02f46b0ae7585b648c91c348ae7ac3c9bc54438eb3c008ef414 days 4 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.002160167
0xfb1b3011baaea1227dd8427c329e0b57e901e80c163b9b22b15f1c795fe2878a4 days 4 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.002160167
0xcad54e14abe930f810e5bc0c5082766de82e334b495b2f6697099ec3507f36724 days 5 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.002160167
0x7aeb74872cb1c1ffd8bca221a091a25dd965b71f4d767f55a31b05d5b8ea85fd4 days 5 hrs ago0xcfcd7d69b7955548edb03c0918b8724dfcf2cf83  IN   0x83d944263b422bc51d6bba5028cdc8eb95320e7f0 Ether0.002160167
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
 Latest 1 Internal Transaction

ParentTxHash Block Age From To Value
0x09470dfda8e1d0c702e94e2580acd62b8aa8b557b45ba9042a08e84a840d4001658721687 days 23 hrs ago0x83d944263b422bc51d6bba5028cdc8eb95320e7f0xcfcd7d69b7955548edb03c0918b8724dfcf2cf830.1 Ether
[ Download CSV Export  ] 
Contract Source Code Verified (Exact Match)
Contract Name: FGYCrowdsale
Compiler Text: v0.4.25+commit.59dbf8f1
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.25;


library SafeMath {
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a * b;
        assert(a == 0 || 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;
    }

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

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

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

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


contract ERC20Basic {
    uint256 public totalSupply;

    bool public transfersEnabled;

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


contract ERC20 {
    uint256 public totalSupply;

    bool public transfersEnabled;

    function balanceOf(address _owner) public constant returns (uint256 balance);

    function transfer(address _to, uint256 _value) public returns (bool success);

    function transferFrom(address _from, address _to, uint256 _value) public returns (bool success);

    function approve(address _spender, uint256 _value) public returns (bool success);

    function allowance(address _owner, address _spender) public constant returns (uint256 remaining);

    event Transfer(address indexed _from, address indexed _to, uint256 _value);

    event Approval(address indexed _owner, address indexed _spender, uint256 _value);
}


contract BasicToken is ERC20Basic {
    using SafeMath for uint256;

    mapping (address => uint256) balances;

    /**
    * Protection against short address attack
    */
    modifier onlyPayloadSize(uint numwords) {
        assert(msg.data.length == numwords * 32 + 4);
        _;
    }

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

        // SafeMath.sub will throw if there is not enough balance.
        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);
        emit 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 constant returns (uint256 balance) {
        return balances[_owner];
    }
}


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 onlyPayloadSize(3) returns (bool) {
        require(_to != address(0));
        require(_value <= balances[_from]);
        require(_value <= allowed[_from][msg.sender]);
        require(transfersEnabled);

        balances[_from] = balances[_from].sub(_value);
        balances[_to] = balances[_to].add(_value);
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
        emit 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;
        emit 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 onlyPayloadSize(2) constant returns (uint256 remaining) {
        return allowed[_owner][_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
     */
    function increaseApproval(address _spender, uint _addedValue) public returns (bool success) {
        allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
    }

    function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool success) {
        uint oldValue = allowed[msg.sender][_spender];
        if (_subtractedValue > oldValue) {
            allowed[msg.sender][_spender] = 0;
        }
        else {
            allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
        }
        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
    }

}


/**
 * @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 OwnerChanged(address indexed previousOwner, address indexed newOwner);

    /**
     * @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 changeOwner(address _newOwner) onlyOwner internal {
        require(_newOwner != address(0));
        emit OwnerChanged(owner, _newOwner);
        owner = _newOwner;
    }

}


/**
 * @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 {
    string public constant name = "Future Energy Token";
    string public constant symbol = "FGY";
    uint8 public constant decimals = 18;
    mapping(uint8 => uint8) public approveOwner;

    event Mint(address indexed to, uint256 amount);
    event MintFinished();

    bool public mintingFinished;

    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, address _owner) canMint internal returns (bool) {
        balances[_to] = balances[_to].add(_amount);
        balances[_owner] = balances[_owner].sub(_amount);
        emit Mint(_to, _amount);
        emit Transfer(_owner, _to, _amount);
        return true;
    }

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

    /**
     * Peterson's Law Protection
     * Claim tokens
     */
    function claimTokens(address _token) public onlyOwner {
        if (_token == 0x0) {
            owner.transfer(address(this).balance);
            return;
        }
        MintableToken token = MintableToken(_token);
        uint256 balance = token.balanceOf(this);
        token.transfer(owner, balance);
        emit Transfer(_token, owner, balance);
    }
}


/**
 * @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. Funds collected are forwarded to a wallet
 * as they arrive.
 */
contract Crowdsale is Ownable {
    using SafeMath for uint256;
    // address where funds are collected
    address public wallet;

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

    constructor(address _wallet) public {
        require(_wallet != address(0));
        wallet = _wallet;
    }
}


contract FGYCrowdsale is Ownable, Crowdsale, MintableToken {
    using SafeMath for uint256;

    /**
    * Price: 1 ETH = 206 token
    * https://www.coingecko.com/en/coins/ethereum
    * October, 20, 2018
    */
    uint256 public rate  = 206;

    mapping (address => uint256) public deposited;
    mapping (address => bool) public whitelist;
    mapping (address => bool) internal isRefferer;


    uint256 public constant INITIAL_SUPPLY = 35 * 10**6 * (10 ** uint256(decimals));

    uint256 startTimePreIco = 1539993600; // Sat, 20 Oct 2018 00:00:00 GMT
    uint256 endTimePreIco =   1546300799; // Mon, 31 Dec 2018 23:59:59 GMT

    uint256 startTimeIco = 1546300800; // Tue, 01 Jan 2019 00:00:00 GMT
    uint256 endTimeIco   = 1554076799; // Sun, 31 Mar 2019 23:59:59 GMT

    uint256 public countInvestor;

    event TokenPurchase(address indexed beneficiary, uint256 value, uint256 amount);
    event TokenLimitReached(address indexed sender, uint256 tokenRaised, uint256 purchasedToken);
    event CurrentPeriod(uint period);
    event ChangeTime(address indexed owner, uint256 newValue, uint256 oldValue);
    event ChangeAddressWallet(address indexed owner, address indexed newAddress, address indexed oldAddress);
    event ChangeRate(address indexed owner, uint256 newValue, uint256 oldValue);
    event Burn(address indexed burner, uint256 value);
    event Finalized();

    constructor(address _owner) public
    Crowdsale(_owner)
    {
        require(_owner != address(0));
        owner = _owner;
        //owner = msg.sender; // for test's
        transfersEnabled = true;
        mintingFinished = false;
        totalSupply = INITIAL_SUPPLY;
        bool resultMintForOwner = mintForFund(owner);
        require(resultMintForOwner);
    }

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

    function buyTokens(address _investor) public payable returns (uint256){
        require(_investor != address(0));
        uint256 weiAmount = msg.value;
        uint256 tokens = validPurchaseTokens(weiAmount);
        if (tokens == 0) {revert();}
        weiRaised = weiRaised.add(weiAmount);
        tokenAllocated = tokenAllocated.add(tokens);
        mint(_investor, tokens, owner);

        emit TokenPurchase(_investor, weiAmount, tokens);
        if (deposited[_investor] == 0) {
            countInvestor = countInvestor.add(1);
        }
        deposit(_investor);
        wallet.transfer(weiAmount);
        return tokens;
    }

    function getTotalAmountOfTokens(uint256 _weiAmount) internal returns (uint256) {
        uint256 currentDate = now;
        //currentDate = 1540425600; // (25 Oct 2018) // for test's
        uint currentPeriod = 0;
        currentPeriod = getPeriod(currentDate);
        uint256 amountOfTokens = 0;
        if(currentPeriod > 0){
            if(currentPeriod == 1){
                amountOfTokens += _weiAmount.mul(rate).mul(130).div(100);
            }
            if(currentPeriod >= 2){
                amountOfTokens += _weiAmount.mul(rate);
            }
        }
        emit CurrentPeriod(currentPeriod);
        return amountOfTokens;
    }

    function getPeriod(uint256 _currentDate) public view returns (uint) {
        if(_currentDate < startTimePreIco){
            return 0;
        }
        if( startTimePreIco <= _currentDate && _currentDate <= endTimePreIco){
            return 1;
        }
        if( startTimeIco <= _currentDate && _currentDate <= endTimeIco){
            return 2;
        }
        return 0;
    }

    function deposit(address investor) internal {
        deposited[investor] = deposited[investor].add(msg.value);
    }

    function mintForFund(address _walletOwner) internal returns (bool result) {
        result = false;
        require(_walletOwner != address(0));
        balances[_walletOwner] = balances[_walletOwner].add(INITIAL_SUPPLY);
        result = true;
    }

    function getDeposited(address _investor) external view returns (uint256){
        return deposited[_investor];
    }

    function validPurchaseTokens(uint256 _weiAmount) public returns (uint256) {
        uint256 addTokens = getTotalAmountOfTokens(_weiAmount);
        if (tokenAllocated.add(addTokens) > balances[owner]) {
            emit TokenLimitReached(msg.sender, tokenAllocated, addTokens);
            return 0;
        }
        return addTokens;
    }

    /**
     * @dev owner burn Token.
     * @param _value amount of burnt tokens
     */
    function ownerBurnToken(uint _value) public onlyOwner {
        require(_value > 0);
        require(_value <= balances[owner]);
        require(_value <= totalSupply);

        balances[owner] = balances[owner].sub(_value);
        totalSupply = totalSupply.sub(_value);
        emit Burn(msg.sender, _value);
    }

    /**
     * @dev owner change time for startTimePreIco
     * @param _value new time value
     */
    function setStartTimePreIco(uint256 _value) external onlyOwner {
        require(_value > 0);
        uint256 _oldValue = startTimePreIco;
        startTimePreIco = _value;
        emit ChangeTime(msg.sender, _value, _oldValue);
    }


    /**
     * @dev owner change time for endTimePreIco
     * @param _value new time value
     */
    function setEndTimePreIco(uint256 _value) external onlyOwner {
        require(_value > 0);
        uint256 _oldValue = endTimePreIco;
        endTimePreIco = _value;
        emit ChangeTime(msg.sender, _value, _oldValue);
    }

    /**
     * @dev owner change time for startTimeIco
     * @param _value new time value
     */
    function setStartTimeIco(uint256 _value) external onlyOwner {
        require(_value > 0);
        uint256 _oldValue = startTimeIco;
        startTimeIco = _value;
        emit ChangeTime(msg.sender, _value, _oldValue);
    }

    /**
     * @dev owner change time for endTimeIco
     * @param _value new time value
     */
    function setEndTimeIco(uint256 _value) external onlyOwner {
        require(_value > 0);
        uint256 _oldValue = endTimeIco;
        endTimeIco = _value;
        emit ChangeTime(msg.sender, _value, _oldValue);
    }

    /**
     * @dev owner change address of wallet for collecting ETH
     * @param _newWallet new address of wallet
     */
    function setWallet(address _newWallet) external onlyOwner {
        require(_newWallet != address(0));
        address _oldWallet = wallet;
        wallet = _newWallet;
        emit ChangeAddressWallet(msg.sender, _newWallet, _oldWallet);
    }

    /**
     * @dev owner change price of tokens
     * @param _newRate new price
     */
    function setRate(uint256 _newRate) external onlyOwner {
        require(_newRate > 0);
        uint256 _oldRate = rate;
        rate = _newRate;
        emit ChangeRate(msg.sender, _newRate, _oldRate);
    }

    /**
     * @dev owner completes contract
     */
    function finalize() public onlyOwner returns (bool result) {
        result = false;
        transfersEnabled = false;
        finishMinting();
        emit Finalized();
        result = true;
    }

}

    Contract ABI  
[{"constant":true,"inputs":[],"name":"mintingFinished","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"setEndTimeIco","outputs":[],"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":"_value","type":"uint256"}],"name":"setEndTimePreIco","outputs":[],"payable":false,"stateMutability":"nonpayable","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":"rate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","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":false,"inputs":[{"name":"_newRate","type":"uint256"}],"name":"setRate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"setStartTimePreIco","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"weiRaised","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint8"}],"name":"approveOwner","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_investor","type":"address"}],"name":"getDeposited","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_currentDate","type":"uint256"}],"name":"getPeriod","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"finalize","outputs":[{"name":"result","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"wallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"setStartTimeIco","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"success","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":"tokenAllocated","outputs":[{"name":"","type":"uint256"}],"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":"ownerBurnToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"whitelist","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"transfersEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"deposited","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"countInvestor","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newWallet","type":"address"}],"name":"setWallet","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"claimTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_investor","type":"address"}],"name":"buyTokens","outputs":[{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_weiAmount","type":"uint256"}],"name":"validPurchaseTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_owner","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"beneficiary","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"TokenPurchase","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":false,"name":"tokenRaised","type":"uint256"},{"indexed":false,"name":"purchasedToken","type":"uint256"}],"name":"TokenLimitReached","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"period","type":"uint256"}],"name":"CurrentPeriod","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":false,"name":"newValue","type":"uint256"},{"indexed":false,"name":"oldValue","type":"uint256"}],"name":"ChangeTime","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"newAddress","type":"address"},{"indexed":true,"name":"oldAddress","type":"address"}],"name":"ChangeAddressWallet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":false,"name":"newValue","type":"uint256"},{"indexed":false,"name":"oldValue","type":"uint256"}],"name":"ChangeRate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"burner","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[],"name":"Finalized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[],"name":"MintFinished","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnerChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"}]

  Contract Creation Code Switch To Opcodes View
608060405260ce600c55635bca7000601055635c2aad7f601155635c2aad80601255635ca1547f6013553480156200003657600080fd5b50604051602080620018d98339810160405251600081600160a060020a03811615156200006257600080fd5b60078054600160a060020a031916600160a060020a03928316179055821615156200008c57600080fd5b60068054600160a060020a031916600160a060020a0384811691909117918290556003805460ff19908116600117909155600b805490911690556a1cf389cd46047d03000000600255620000ea911664010000000062000101810204565b9050801515620000f957600080fd5b505062000191565b6000600160a060020a03821615156200011957600080fd5b600160a060020a03821660009081526004602052604090205462000157906a1cf389cd46047d03000000640100000000620013fd6200017a82021704565b600160a060020a0390921660009081526004602052604090209190915550600190565b6000828201838110156200018a57fe5b9392505050565b61173880620001a16000396000f3006080604052600436106101c15763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166305d2035b81146101cd57806306fdde03146101f6578063095ea7b314610280578063107e1a29146102a457806318160ddd146102be5780631b8e61c7146102e557806323b872dd146102fd5780632c4e722e146103275780632ff2e9dc1461033c578063313ce5671461035157806334fcf4371461037c5780633b3fa917146103945780634042b66f146103ac57806345d503b2146103c1578063466bb312146103dc5780634b2c0706146103fd5780634bb278f314610415578063521eb2731461042a57806364e593c01461045b578063661884631461047357806370a082311461049757806378f7aeee146104b85780638da5cb5b146104cd57806390762a8b146104e257806395d89b41146104fa5780639b19251a1461050f578063a9059cbb14610530578063bef97c8714610554578063cb13cddb14610569578063d1e2eb5e1461058a578063d73dd6231461059f578063dd62ed3e146105c3578063deaa59df146105ea578063df8de3e71461060b578063ec8ac4d81461062c578063fc38ce1914610640575b6101ca33610658565b50005b3480156101d957600080fd5b506101e2610796565b604080519115158252519081900360200190f35b34801561020257600080fd5b5061020b61079f565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561024557818101518382015260200161022d565b50505050905090810190601f1680156102725780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561028c57600080fd5b506101e2600160a060020a03600435166024356107d6565b3480156102b057600080fd5b506102bc60043561083c565b005b3480156102ca57600080fd5b506102d3610898565b60408051918252519081900360200190f35b3480156102f157600080fd5b506102bc60043561089e565b34801561030957600080fd5b506101e2600160a060020a03600435811690602435166044356108fa565b34801561033357600080fd5b506102d3610a7f565b34801561034857600080fd5b506102d3610a85565b34801561035d57600080fd5b50610366610a94565b6040805160ff9092168252519081900360200190f35b34801561038857600080fd5b506102bc600435610a99565b3480156103a057600080fd5b506102bc600435610b07565b3480156103b857600080fd5b506102d3610b63565b3480156103cd57600080fd5b5061036660ff60043516610b69565b3480156103e857600080fd5b506102d3600160a060020a0360043516610b7e565b34801561040957600080fd5b506102d3600435610b9d565b34801561042157600080fd5b506101e2610bfb565b34801561043657600080fd5b5061043f610c5a565b60408051600160a060020a039092168252519081900360200190f35b34801561046757600080fd5b506102bc600435610c69565b34801561047f57600080fd5b506101e2600160a060020a0360043516602435610cc5565b3480156104a357600080fd5b506102d3600160a060020a0360043516610db5565b3480156104c457600080fd5b506102d3610dd0565b3480156104d957600080fd5b5061043f610dd6565b3480156104ee57600080fd5b506102bc600435610de5565b34801561050657600080fd5b5061020b610ed4565b34801561051b57600080fd5b506101e2600160a060020a0360043516610f0b565b34801561053c57600080fd5b506101e2600160a060020a0360043516602435610f20565b34801561056057600080fd5b506101e261100f565b34801561057557600080fd5b506102d3600160a060020a0360043516611018565b34801561059657600080fd5b506102d361102a565b3480156105ab57600080fd5b506101e2600160a060020a0360043516602435611030565b3480156105cf57600080fd5b506102d3600160a060020a03600435811690602435166110c9565b3480156105f657600080fd5b506102bc600160a060020a0360043516611104565b34801561061757600080fd5b506102bc600160a060020a0360043516611194565b6102d3600160a060020a0360043516610658565b34801561064c57600080fd5b506102d3600435611368565b60008080600160a060020a038416151561067157600080fd5b34915061067d82611368565b905080151561068b57600080fd5b60085461069e908363ffffffff6113fd16565b6008556009546106b4908263ffffffff6113fd16565b6009556006546106d09085908390600160a060020a0316611413565b5060408051838152602081018390528151600160a060020a038716927fcd60aa75dea3072fbc07ae6d7d856b5dc5f4eee88854f5b4abf7b680ef8bc50f928290030190a2600160a060020a0384166000908152600d6020526040902054151561074b5760145461074790600163ffffffff6113fd16565b6014555b6107548461151c565b600754604051600160a060020a039091169083156108fc029084906000818181858888f1935050505015801561078e573d6000803e3d6000fd5b509392505050565b600b5460ff1681565b60408051808201909152601381527f46757475726520456e6572677920546f6b656e00000000000000000000000000602082015281565b336000818152600560209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b600654600090600160a060020a0316331461085657600080fd5b6000821161086357600080fd5b5060138054908290556040805183815260208101839052815133926000805160206116cd833981519152928290030190a25050565b60025481565b600654600090600160a060020a031633146108b857600080fd5b600082116108c557600080fd5b5060118054908290556040805183815260208101839052815133926000805160206116cd833981519152928290030190a25050565b600060033660641461090857fe5b600160a060020a038416151561091d57600080fd5b600160a060020a03851660009081526004602052604090205483111561094257600080fd5b600160a060020a038516600090815260056020908152604080832033845290915290205483111561097257600080fd5b60035460ff16151561098357600080fd5b600160a060020a0385166000908152600460205260409020546109ac908463ffffffff61156116565b600160a060020a0380871660009081526004602052604080822093909355908616815220546109e1908463ffffffff6113fd16565b600160a060020a038086166000908152600460209081526040808320949094559188168152600582528281203382529091522054610a25908463ffffffff61156116565b600160a060020a03808716600081815260056020908152604080832033845282529182902094909455805187815290519288169391926000805160206116ed833981519152929181900390910190a3506001949350505050565b600c5481565b6a1cf389cd46047d0300000081565b601281565b600654600090600160a060020a03163314610ab357600080fd5b60008211610ac057600080fd5b50600c8054908290556040805183815260208101839052815133927fe0745596cbd0c47ee258f65d49ccda5b6812de4997b868aebccfba913a526e9a928290030190a25050565b600654600090600160a060020a03163314610b2157600080fd5b60008211610b2e57600080fd5b5060108054908290556040805183815260208101839052815133926000805160206116cd833981519152928290030190a25050565b60085481565b600a6020526000908152604090205460ff1681565b600160a060020a0381166000908152600d60205260409020545b919050565b6000601054821015610bb157506000610b98565b8160105411158015610bc557506011548211155b15610bd257506001610b98565b8160125411158015610be657506013548211155b15610bf357506002610b98565b506000919050565b600654600090600160a060020a03163314610c1557600080fd5b506003805460ff191690556000610c2a611573565b506040517f6823b073d48d6e3a7d385eeb601452d680e74bb46afe3255a7d778f3a9b1768190600090a150600190565b600754600160a060020a031681565b600654600090600160a060020a03163314610c8357600080fd5b60008211610c9057600080fd5b5060128054908290556040805183815260208101839052815133926000805160206116cd833981519152928290030190a25050565b336000908152600560209081526040808320600160a060020a038616845290915281205480831115610d1a57336000908152600560209081526040808320600160a060020a0388168452909152812055610d4f565b610d2a818463ffffffff61156116565b336000908152600560209081526040808320600160a060020a03891684529091529020555b336000818152600560209081526040808320600160a060020a0389168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b600160a060020a031660009081526004602052604090205490565b60095481565b600654600160a060020a031681565b600654600160a060020a03163314610dfc57600080fd5b60008111610e0957600080fd5b600654600160a060020a0316600090815260046020526040902054811115610e3057600080fd5b600254811115610e3f57600080fd5b600654600160a060020a0316600090815260046020526040902054610e6a908263ffffffff61156116565b600654600160a060020a0316600090815260046020526040902055600254610e98908263ffffffff61156116565b60025560408051828152905133917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a250565b60408051808201909152600381527f4647590000000000000000000000000000000000000000000000000000000000602082015281565b600e6020526000908152604090205460ff1681565b6000600236604414610f2e57fe5b600160a060020a0384161515610f4357600080fd5b33600090815260046020526040902054831115610f5f57600080fd5b60035460ff161515610f7057600080fd5b33600090815260046020526040902054610f90908463ffffffff61156116565b3360009081526004602052604080822092909255600160a060020a03861681522054610fc2908463ffffffff6113fd16565b600160a060020a0385166000818152600460209081526040918290209390935580518681529051919233926000805160206116ed8339815191529281900390910190a35060019392505050565b60035460ff1681565b600d6020526000908152604090205481565b60145481565b336000908152600560209081526040808320600160a060020a0386168452909152812054611064908363ffffffff6113fd16565b336000818152600560209081526040808320600160a060020a0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b60006002366044146110d757fe5b5050600160a060020a03918216600090815260056020908152604080832093909416825291909152205490565b600654600090600160a060020a0316331461111e57600080fd5b600160a060020a038216151561113357600080fd5b5060078054600160a060020a0383811673ffffffffffffffffffffffffffffffffffffffff1983168117909355604051911691829133907f670c5841a438bdba1d0b33bc57b8124beea019900cd34307f3f049821f7d0fed90600090a45050565b6006546000908190600160a060020a031633146111b057600080fd5b600160a060020a038316151561120057600654604051600160a060020a0390911690303180156108fc02916000818181858888f193505050501580156111fa573d6000803e3d6000fd5b50611363565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051849350600160a060020a038416916370a082319160248083019260209291908290030181600087803b15801561126457600080fd5b505af1158015611278573d6000803e3d6000fd5b505050506040513d602081101561128e57600080fd5b5051600654604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a0392831660048201526024810184905290519293509084169163a9059cbb916044808201926020929091908290030181600087803b15801561130257600080fd5b505af1158015611316573d6000803e3d6000fd5b505050506040513d602081101561132c57600080fd5b5050600654604080518381529051600160a060020a03928316928616916000805160206116ed833981519152919081900360200190a35b505050565b600080611374836115d9565b600654600160a060020a0316600090815260046020526040902054600954919250906113a6908363ffffffff6113fd16565b11156113f3576009546040805191825260208201839052805133927f953172f7e621d89577ba9acef9de1f817dcaee100ee28a6abcbfe8cdb43add6f92908290030190a2600091506113f7565b8091505b50919050565b60008282018381101561140c57fe5b9392505050565b600b5460009060ff161561142657600080fd5b600160a060020a03841660009081526004602052604090205461144f908463ffffffff6113fd16565b600160a060020a038086166000908152600460205260408082209390935590841681522054611484908463ffffffff61156116565b600160a060020a038084166000908152600460209081526040918290209390935580518681529051918716927f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688592918290030190a283600160a060020a031682600160a060020a03166000805160206116ed833981519152856040518082815260200191505060405180910390a35060019392505050565b600160a060020a0381166000908152600d6020526040902054611545903463ffffffff6113fd16565b600160a060020a039091166000908152600d6020526040902055565b60008282111561156d57fe5b50900390565b600654600090600160a060020a0316331461158d57600080fd5b600b5460ff161561159d57600080fd5b600b805460ff191660011790556040517fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0890600090a150600190565b60004281806115e783610b9d565b915060009050600082111561165657816001141561163857611636606461162a608261161e600c548a61169190919063ffffffff16565b9063ffffffff61169116565b9063ffffffff6116b516565b015b6002821061165657600c5461165490869063ffffffff61169116565b015b6040805183815290517f2e232fc2c310d706d2c00d04309dfb865ac701a3e4aa80af7e45333f97de5dca9181900360200190a1949350505050565b60008282028315806116ad57508284828115156116aa57fe5b04145b151561140c57fe5b60008082848115156116c357fe5b049493505050505600c3882a76627eabec771bbe2a39a6e0ddfe818774c840e4e662b7fe289075bb9dddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820e2d16b2d20c7169ed027b47ddc543331af178e235ff624cdd28664df71fb0c7a0029000000000000000000000000cfcd7d69b7955548edb03c0918b8724dfcf2cf83

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

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000cfcd7d69b7955548edb03c0918b8724dfcf2cf83


   Swarm Source:
bzzr://e2d16b2d20c7169ed027b47ddc543331af178e235ff624cdd28664df71fb0c7a

 

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.