contract NoFakeCoin is Ownable, StandardToken {

    string public name = "NoFakeCoin";
    string public symbol = "NFC";
    uint public decimals = 18;                  // token has 18 digit precision

    uint public totalSupply = 450 * (10**6) * (10**18);  // 450 Million Tokens

    /// @notice Initializes the contract and allocates all initial tokens to the owner and agreement account
    function NoFakeCoin() {
        balances[msg.sender] = 360 * (10**6) * (10**18); // 80 percent goes to the public sale
        balances[0x8895dc78dcd0310c862e8aeacc5daa3faa3b7239] = 90 * (10**6) * (10**18); // remaining goes to the foundation account
    }

    // Don't accept ethers - no payable modifier
    function () {
    }

    /// @notice To transfer token contract ownership
    /// @param _newOwner The address of the new owner of this contract
    function transferOwnership(address _newOwner) onlyOwner {
        balances[_newOwner] = safeAdd(balances[owner], balances[_newOwner]);
        balances[owner] = 0;
        Ownable.transferOwnership(_newOwner);
    }

    // Owner can transfer out any ERC20 tokens sent in by mistake
    function transferAnyERC20Token(address tokenAddress, uint amount) onlyOwner returns (bool success)
    {
        return ERC20(tokenAddress).transfer(owner, amount);
    }

}
/// @title No Fake Coin
/// @author Leon Huang <NoFakeToday@gmail.com>
function () {
    }
// Don't accept ethers - no payable modifier