ETH Price: $3,083.68 (-1.63%)
Gas: 4 Gwei

Token

FNB Token (FNB)
 

Overview

Max Total Supply

2,490,000,160 FNB

Holders

1,997 (0.00%)

Total Transfers

-

Market

Price

$0.00 @ 0.000000 ETH

Onchain Market Cap

$35,847.67

Circulating Supply Market Cap

$34,702.41

Other Info

Token Contract (WITH 18 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

FNB provides a new system that connects franchise HQs, franchise affiliates, and customers together through AR advertisement platform, franchise token, and blockchain.

Market

Volume (24H):$0.00
Market Capitalization:$34,702.41
Circulating Supply:2,410,449,913.00 FNB
Market Data Source: Coinmarketcap

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
FNBToken

Compiler Version
v0.4.25+commit.59dbf8f1

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-12-05
*/

pragma solidity ^0.4.22;

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


contract Ownable {
    address public owner;
    address public newOwner;

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

    constructor() public {
        owner = msg.sender;
        newOwner = address(0);
    }

    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }
    modifier onlyNewOwner() {
        require(msg.sender != address(0));
        require(msg.sender == newOwner);
        _;
    }

    function transferOwnership(address _newOwner) public onlyOwner {
        require(_newOwner != address(0));
        newOwner = _newOwner;
    }

    function acceptOwnership() public onlyNewOwner returns(bool) {
        emit OwnershipTransferred(owner, newOwner);        
        owner = newOwner;
        newOwner = 0x0;
    }
}

contract ERC20 {
    function totalSupply() public view returns (uint256);
    function balanceOf(address who) public view returns (uint256);
    function allowance(address owner, address spender) public view returns (uint256);
    function transfer(address to, uint256 value) public returns (bool);
    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);
    event Transfer(address indexed from, address indexed to, uint256 value);
}

contract Storage{

    struct LockupInfo {
        uint256 releaseTime;
        uint256 termOfRound;
        uint256 unlockAmountPerRound;        
        uint256 lockupBalance;
    }

    string public name;
    string public symbol;
    uint8 constant public decimals =18;
    uint256 internal initialSupply;
    uint256 internal totalSupply_;

    mapping(address => uint256) internal balances;
    mapping(address => bool) internal locks;
    mapping(address => bool) public frozen;
    mapping(address => mapping(address => uint256)) internal allowed;
    mapping(address => LockupInfo[]) internal lockupInfo;
}

contract FNBToken is Storage,Ownable,ERC20 {

    address public implementation;

    constructor() public {
        name = "FNB Token";
        symbol = "FNB";
        initialSupply = 2500000000; //2,500,000,000 개
        totalSupply_ = initialSupply * 10 ** uint(decimals);
        balances[owner] = totalSupply_;
        emit Transfer(address(0), owner, totalSupply_);

    }
    
    function upgradeTo(address _newImplementation) public onlyOwner {
        require(implementation != _newImplementation);
        _setImplementation(_newImplementation);
    }
    
    function totalSupply() public view returns (uint256) {
        implementationCall();
    }
    function balanceOf(address who) public view returns (uint256) {
        implementationCall();
    }
    
    function allowance(address owner, address spender) public view returns (uint256) {
        implementationCall();
    }
    
    function transfer(address to, uint256 value) public returns (bool) {
        implementationCall();
    }
    
    function transferFrom(address from, address to, uint256 value) public returns (bool) {
        implementationCall();
    }
    
    function approve(address spender, uint256 value) public returns (bool) {
        implementationCall();
    }
    
    function () payable public {
        address impl = implementation;
        require(impl != address(0));
        assembly {
            let ptr := mload(0x40)
            calldatacopy(ptr, 0, calldatasize)
            let result := delegatecall(gas, impl, ptr, calldatasize, 0, 0)
            let size := returndatasize
            returndatacopy(ptr, 0, size)
            
            switch result
            case 0 { revert(ptr, size) }
            default { return(ptr, size) }
        }
    }
    
    function implementationCall() internal {
        address impl = implementation;
        require(impl != address(0));
        assembly {
            let ptr := mload(0x40)
            calldatacopy(ptr, 0, calldatasize)
            let result := delegatecall(gas, impl, ptr, calldatasize, 0, 0)
            let size := returndatasize
            returndatacopy(ptr, 0, size)
            
            switch result
            case 0 { revert(ptr, size) }
            default { return(ptr, size) }
        }
    }

    function _setImplementation(address _newImp) internal {
        implementation = _newImp;
    }
}

Contract Security Audit

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":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newImplementation","type":"address"}],"name":"upgradeTo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":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":"","type":"address"}],"name":"frozen","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","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":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"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"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]

608060405234801561001057600080fd5b5060098054600160a060020a031990811633178255600a80549091169055604080518082019091528181527f464e4220546f6b656e000000000000000000000000000000000000000000000060209091019081526100719160009190610134565b506040805180820190915260038082527f464e42000000000000000000000000000000000000000000000000000000000060209092019182526100b691600191610134565b50639502f9006002556b0813f3978f89409844000000600381905560098054600160a060020a039081166000908152600460209081526040808320869055935484519586529351939092169390927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a36101cf565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061017557805160ff19168380011785556101a2565b828001600101855582156101a2579182015b828111156101a2578251825591602001919060010190610187565b506101ae9291506101b2565b5090565b6101cc91905b808211156101ae57600081556001016101b8565b90565b61068b806101de6000396000f3006080604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610122578063095ea7b3146101ac57806318160ddd146101e457806323b872dd1461020b578063313ce567146102355780633659cfe6146102605780635c60da1b1461028357806370a08231146102b457806379ba5097146102d55780638da5cb5b146102ea57806395d89b41146102ff578063a9059cbb146101ac578063d051665014610314578063d4ee1d9014610335578063dd62ed3e1461034a578063f2fde38b14610371575b600b54600160a060020a03168015156100fd57600080fd5b60405136600082376000803683855af43d806000843e81801561011e578184f35b8184fd5b34801561012e57600080fd5b50610137610392565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610171578181015183820152602001610159565b50505050905090810190601f16801561019e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101b857600080fd5b506101d0600160a060020a0360043516602435610420565b604080519115158252519081900360200190f35b3480156101f057600080fd5b506101f9610430565b60408051918252519081900360200190f35b34801561021757600080fd5b506101d0600160a060020a036004358116906024351660443561043d565b34801561024157600080fd5b5061024a61044e565b6040805160ff9092168252519081900360200190f35b34801561026c57600080fd5b50610281600160a060020a0360043516610453565b005b34801561028f57600080fd5b50610298610491565b60408051600160a060020a039092168252519081900360200190f35b3480156102c057600080fd5b506101f9600160a060020a03600435166104a0565b3480156102e157600080fd5b506101d06104af565b3480156102f657600080fd5b50610298610548565b34801561030b57600080fd5b50610137610557565b34801561032057600080fd5b506101d0600160a060020a03600435166105b1565b34801561034157600080fd5b506102986105c6565b34801561035657600080fd5b506101f9600160a060020a0360043581169060243516610420565b34801561037d57600080fd5b50610281600160a060020a03600435166105d5565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104185780601f106103ed57610100808354040283529160200191610418565b820191906000526020600020905b8154815290600101906020018083116103fb57829003601f168201915b505050505081565b600061042a6100e5565b92915050565b600061043a6100e5565b90565b60006104476100e5565b9392505050565b601281565b600954600160a060020a0316331461046a57600080fd5b600b54600160a060020a038281169116141561048557600080fd5b61048e81610630565b50565b600b54600160a060020a031681565b60006104aa6100e5565b919050565b60003315156104bd57600080fd5b600a54600160a060020a031633146104d457600080fd5b600a54600954604051600160a060020a0392831692909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600a80546009805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a0384161790915516905590565b600954600160a060020a031681565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104185780601f106103ed57610100808354040283529160200191610418565b60066020526000908152604090205460ff1681565b600a54600160a060020a031681565b600954600160a060020a031633146105ec57600080fd5b600160a060020a038116151561060157600080fd5b600a805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600b805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03929092169190911790555600a165627a7a7230582059c8050f3e38212438c877e3c9f822d7a9b65f8c75ad58be6922afa37b078ce60029

Deployed Bytecode

0x6080604052600436106100e55763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610122578063095ea7b3146101ac57806318160ddd146101e457806323b872dd1461020b578063313ce567146102355780633659cfe6146102605780635c60da1b1461028357806370a08231146102b457806379ba5097146102d55780638da5cb5b146102ea57806395d89b41146102ff578063a9059cbb146101ac578063d051665014610314578063d4ee1d9014610335578063dd62ed3e1461034a578063f2fde38b14610371575b600b54600160a060020a03168015156100fd57600080fd5b60405136600082376000803683855af43d806000843e81801561011e578184f35b8184fd5b34801561012e57600080fd5b50610137610392565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610171578181015183820152602001610159565b50505050905090810190601f16801561019e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101b857600080fd5b506101d0600160a060020a0360043516602435610420565b604080519115158252519081900360200190f35b3480156101f057600080fd5b506101f9610430565b60408051918252519081900360200190f35b34801561021757600080fd5b506101d0600160a060020a036004358116906024351660443561043d565b34801561024157600080fd5b5061024a61044e565b6040805160ff9092168252519081900360200190f35b34801561026c57600080fd5b50610281600160a060020a0360043516610453565b005b34801561028f57600080fd5b50610298610491565b60408051600160a060020a039092168252519081900360200190f35b3480156102c057600080fd5b506101f9600160a060020a03600435166104a0565b3480156102e157600080fd5b506101d06104af565b3480156102f657600080fd5b50610298610548565b34801561030b57600080fd5b50610137610557565b34801561032057600080fd5b506101d0600160a060020a03600435166105b1565b34801561034157600080fd5b506102986105c6565b34801561035657600080fd5b506101f9600160a060020a0360043581169060243516610420565b34801561037d57600080fd5b50610281600160a060020a03600435166105d5565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104185780601f106103ed57610100808354040283529160200191610418565b820191906000526020600020905b8154815290600101906020018083116103fb57829003601f168201915b505050505081565b600061042a6100e5565b92915050565b600061043a6100e5565b90565b60006104476100e5565b9392505050565b601281565b600954600160a060020a0316331461046a57600080fd5b600b54600160a060020a038281169116141561048557600080fd5b61048e81610630565b50565b600b54600160a060020a031681565b60006104aa6100e5565b919050565b60003315156104bd57600080fd5b600a54600160a060020a031633146104d457600080fd5b600a54600954604051600160a060020a0392831692909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600a80546009805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a0384161790915516905590565b600954600160a060020a031681565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156104185780601f106103ed57610100808354040283529160200191610418565b60066020526000908152604090205460ff1681565b600a54600160a060020a031681565b600954600160a060020a031633146105ec57600080fd5b600160a060020a038116151561060157600080fd5b600a805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600b805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03929092169190911790555600a165627a7a7230582059c8050f3e38212438c877e3c9f822d7a9b65f8c75ad58be6922afa37b078ce60029

Swarm Source

bzzr://59c8050f3e38212438c877e3c9f822d7a9b65f8c75ad58be6922afa37b078ce6
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.