ETH Price: $3,249.01 (+0.25%)

Token

NTech (NT)
 

Overview

Max Total Supply

10,000,000,000 NT

Holders

304

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
3.19233769251297 NT

Value
$0.00
0xf7e4a4ca42f1b59711457667470329511caabb24
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
NTechToken

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

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

pragma solidity ^0.4.24;
/**
 * @title SafeMath v0.1.9
 * @dev Math operations with safety checks that throw on error
 * change notes:  original SafeMath library from OpenZeppelin modified by Inventor
 * - added sqrt
 * - added sq
 * - added pwr 
 * - changed asserts to requires with error log outputs
 * - removed div, its useless
 */
 
library SafeMath {
    
    /**
    * @dev Multiplies two numbers, throws on overflow.
    */
    function mul(uint256 a, uint256 b) 
        internal 
        pure 
        returns (uint256 c) 
    {
        if (a == 0) {
            return 0;
        }
        c = a * b;
        require(c / a == b, "SafeMath mul failed");
        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 Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
    */
    function sub(uint256 a, uint256 b)
        internal
        pure
        returns (uint256) 
    {
        require(b <= a, "SafeMath sub failed");
        return a - b;
    }

    /**
    * @dev Adds two numbers, throws on overflow.
    */
    function add(uint256 a, uint256 b)
        internal
        pure
        returns (uint256 c) 
    {
        c = a + b;
        require(c >= a, "SafeMath add failed");
        return c;
    }
    
    /**
     * @dev gives square root of given x.
     */
    function sqrt(uint256 x)
        internal
        pure
        returns (uint256 y) 
    {
        uint256 z = ((add(x,1)) / 2);
        y = x;
        while (z < y) 
        {
            y = z;
            z = ((add((x / z),z)) / 2);
        }
    }
    
    /**
     * @dev gives square. multiplies x by x
     */
    function sq(uint256 x)
        internal
        pure
        returns (uint256)
    {
        return (mul(x,x));
    }
    
    /**
     * @dev x to the power of y 
     */
    function pwr(uint256 x, uint256 y)
        internal 
        pure 
        returns (uint256)
    {
        if (x==0)
            return (0);
        else if (y==0)
            return (1);
        else 
        {
            uint256 z = x;
            for (uint256 i=1; i < y; i++)
                z = mul(z,x);
            return (z);
        }
    }
}

/*
 * ERC20 interface
 * see https://github.com/ethereum/EIPs/issues/20
 */
contract ERC20 {
    function totalSupply() public view returns (uint supply);
    function balanceOf( address who ) public view returns (uint value);
    function allowance( address owner, address spender ) public view returns (uint _allowance);

    function transfer( address to, uint value) public returns (bool ok);
    function transferFrom( address from, address to, uint value) public returns (bool ok);
    function approve( address spender, uint value ) public returns (bool ok);

    event Transfer( address indexed from, address indexed to, uint value);
    event Approval( address indexed owner, address indexed spender, uint value);
}
/*
 * contract : Ownable
 */
 contract Ownable {
    address public owner;

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

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

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }

    function transferOwnership(address newOwner) onlyOwner public {
        if (newOwner != address(0)) {
            emit OwnershipTransferred(owner, newOwner);
            owner = newOwner;
        }
    }
}
/*
 * Pausable contract
 */

contract Pausable is Ownable {
    event Pause();
    event Unpause();

    bool public paused = false;

    modifier whenNotPaused() {
        require(!paused);
        _;
    }

    modifier whenPaused {
        require(paused);
        _;
    }

    function pause() onlyOwner whenNotPaused public returns (bool) {
        paused = true;
        emit Pause();
        return true;
    }

    function unpause() onlyOwner whenPaused public returns (bool) {
        paused = false;
        emit Unpause();
        return true;
    }
}
/**
 contract : NTechToken
 */
contract NTechToken is ERC20, Ownable, Pausable{
    /**
     代币基本信息
     */
    string public                   name = "NTech";
    string public                   symbol = "NT";
    uint8 constant public           decimals = 18;
    uint256                         supply;

    mapping (address => uint256)                        balances;
    mapping (address => mapping (address => uint256))   approvals;
    uint256 public constant initSupply = 10000000000;       // 10,000,000,000

    constructor() public {
        supply = SafeMath.mul(uint256(initSupply),uint256(10)**uint256(decimals));
        balances[msg.sender] = supply; 
    }
    // ERC 20
    function totalSupply() public view returns (uint256){
        return supply ;
    }

    function balanceOf(address src) public view returns (uint256) {
        return balances[src];
    }

    function allowance(address src, address guy) public view returns (uint256) {
        return approvals[src][guy];
    }
    
    function transfer(address dst, uint wad) whenNotPaused public returns (bool) {
        require(balances[msg.sender] >= wad);                   // 要有足够余额
        require(dst != 0x0);                                    // 不能送到无效地址

        balances[msg.sender] = SafeMath.sub(balances[msg.sender], wad);  // -    
        balances[dst] = SafeMath.add(balances[dst], wad);                // +
        
        emit Transfer(msg.sender, dst, wad);                    // 记录事件
        
        return true;
    }

    function transferFrom(address src, address dst, uint wad) whenNotPaused public returns (bool) {
        require(balances[src] >= wad);                          // 要有足够余额
        require(approvals[src][msg.sender] >= wad);
        
        approvals[src][msg.sender] = SafeMath.sub(approvals[src][msg.sender], wad);
        balances[src] = SafeMath.sub(balances[src], wad);
        balances[dst] = SafeMath.add(balances[dst], wad);
        
        emit Transfer(src, dst, wad);
        
        return true;
    }
    
    function approve(address guy, uint256 wad) whenNotPaused public returns (bool) {
        require(wad != 0);
        approvals[msg.sender][guy] = wad;
        emit Approval(msg.sender, guy, wad);
        return true;
    }

    
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"guy","type":"address"},{"name":"wad","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":"src","type":"address"},{"name":"dst","type":"address"},{"name":"wad","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":"unpause","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"src","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"pause","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":true,"inputs":[],"name":"initSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"dst","type":"address"},{"name":"wad","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"src","type":"address"},{"name":"guy","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"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"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"}]

6000805460a060020a60ff021916905560c0604052600560808190527f4e5465636800000000000000000000000000000000000000000000000000000060a090815261004e9160019190610183565b506040805180820190915260028082527f4e5400000000000000000000000000000000000000000000000000000000000060209092019182526100919181610183565b5034801561009e57600080fd5b5060008054600160a060020a031916331790556100d56402540be400670de0b6b3a76400006401000000006109f26100ef82021704565b60038190553360009081526004602052604090205561021e565b60008215156101005750600061017d565b5081810281838281151561011057fe5b041461017d57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f536166654d617468206d756c206661696c656400000000000000000000000000604482015290519081900360640190fd5b92915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106101c457805160ff19168380011785556101f1565b828001600101855582156101f1579182015b828111156101f15782518255916020019190600101906101d6565b506101fd929150610201565b5090565b61021b91905b808211156101fd5760008155600101610207565b90565b610aac8061022d6000396000f3006080604052600436106100da5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146100df578063095ea7b31461016957806318160ddd146101a157806323b872dd146101c8578063313ce567146101f25780633f4ba83a1461021d5780635c975abb1461023257806370a08231146102475780638456cb59146102685780638da5cb5b1461027d57806395d89b41146102ae57806397d63f93146102c3578063a9059cbb146102d8578063dd62ed3e146102fc578063f2fde38b14610323575b600080fd5b3480156100eb57600080fd5b506100f4610346565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561012e578181015183820152602001610116565b50505050905090810190601f16801561015b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561017557600080fd5b5061018d600160a060020a03600435166024356103d3565b604080519115158252519081900360200190f35b3480156101ad57600080fd5b506101b661045f565b60408051918252519081900360200190f35b3480156101d457600080fd5b5061018d600160a060020a0360043581169060243516604435610465565b3480156101fe57600080fd5b506102076105cb565b6040805160ff9092168252519081900360200190f35b34801561022957600080fd5b5061018d6105d0565b34801561023e57600080fd5b5061018d61064b565b34801561025357600080fd5b506101b6600160a060020a036004351661065b565b34801561027457600080fd5b5061018d610676565b34801561028957600080fd5b506102926106f6565b60408051600160a060020a039092168252519081900360200190f35b3480156102ba57600080fd5b506100f4610705565b3480156102cf57600080fd5b506101b661075d565b3480156102e457600080fd5b5061018d600160a060020a0360043516602435610766565b34801561030857600080fd5b506101b6600160a060020a0360043581169060243516610853565b34801561032f57600080fd5b50610344600160a060020a036004351661087e565b005b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156103cb5780601f106103a0576101008083540402835291602001916103cb565b820191906000526020600020905b8154815290600101906020018083116103ae57829003601f168201915b505050505081565b6000805460a060020a900460ff16156103eb57600080fd5b8115156103f757600080fd5b336000818152600560209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b60035490565b6000805460a060020a900460ff161561047d57600080fd5b600160a060020a0384166000908152600460205260409020548211156104a257600080fd5b600160a060020a03841660009081526005602090815260408083203384529091529020548211156104d257600080fd5b600160a060020a03841660009081526005602090815260408083203384529091529020546105009083610909565b600160a060020a03851660008181526005602090815260408083203384528252808320949094559181526004909152205461053b9083610909565b600160a060020a03808616600090815260046020526040808220939093559085168152205461056a9083610980565b600160a060020a0380851660008181526004602090815260409182902094909455805186815290519193928816927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a35060019392505050565b601281565b60008054600160a060020a031633146105e857600080fd5b60005460a060020a900460ff16151561060057600080fd5b6000805474ff0000000000000000000000000000000000000000191681556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b339190a150600190565b60005460a060020a900460ff1681565b600160a060020a031660009081526004602052604090205490565b60008054600160a060020a0316331461068e57600080fd5b60005460a060020a900460ff16156106a557600080fd5b6000805474ff0000000000000000000000000000000000000000191660a060020a1781556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff6259190a150600190565b600054600160a060020a031681565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156103cb5780601f106103a0576101008083540402835291602001916103cb565b6402540be40081565b6000805460a060020a900460ff161561077e57600080fd5b3360009081526004602052604090205482111561079a57600080fd5b600160a060020a03831615156107af57600080fd5b336000908152600460205260409020546107c99083610909565b3360009081526004602052604080822092909255600160a060020a038516815220546107f59083610980565b600160a060020a0384166000818152600460209081526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b600160a060020a03918216600090815260056020908152604080832093909416825291909152205490565b600054600160a060020a0316331461089557600080fd5b600160a060020a038116156109065760008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b60008282111561097a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f536166654d61746820737562206661696c656400000000000000000000000000604482015290519081900360640190fd5b50900390565b8181018281101561045957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f536166654d61746820616464206661696c656400000000000000000000000000604482015290519081900360640190fd5b6000821515610a0357506000610459565b50818102818382811515610a1357fe5b041461045957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f536166654d617468206d756c206661696c656400000000000000000000000000604482015290519081900360640190fd00a165627a7a72305820ef0a6f37c7560b49c737ef195a85c7aee1cce331d6fcc2515e2462f85a9932820029

Deployed Bytecode

0x6080604052600436106100da5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146100df578063095ea7b31461016957806318160ddd146101a157806323b872dd146101c8578063313ce567146101f25780633f4ba83a1461021d5780635c975abb1461023257806370a08231146102475780638456cb59146102685780638da5cb5b1461027d57806395d89b41146102ae57806397d63f93146102c3578063a9059cbb146102d8578063dd62ed3e146102fc578063f2fde38b14610323575b600080fd5b3480156100eb57600080fd5b506100f4610346565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561012e578181015183820152602001610116565b50505050905090810190601f16801561015b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561017557600080fd5b5061018d600160a060020a03600435166024356103d3565b604080519115158252519081900360200190f35b3480156101ad57600080fd5b506101b661045f565b60408051918252519081900360200190f35b3480156101d457600080fd5b5061018d600160a060020a0360043581169060243516604435610465565b3480156101fe57600080fd5b506102076105cb565b6040805160ff9092168252519081900360200190f35b34801561022957600080fd5b5061018d6105d0565b34801561023e57600080fd5b5061018d61064b565b34801561025357600080fd5b506101b6600160a060020a036004351661065b565b34801561027457600080fd5b5061018d610676565b34801561028957600080fd5b506102926106f6565b60408051600160a060020a039092168252519081900360200190f35b3480156102ba57600080fd5b506100f4610705565b3480156102cf57600080fd5b506101b661075d565b3480156102e457600080fd5b5061018d600160a060020a0360043516602435610766565b34801561030857600080fd5b506101b6600160a060020a0360043581169060243516610853565b34801561032f57600080fd5b50610344600160a060020a036004351661087e565b005b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156103cb5780601f106103a0576101008083540402835291602001916103cb565b820191906000526020600020905b8154815290600101906020018083116103ae57829003601f168201915b505050505081565b6000805460a060020a900460ff16156103eb57600080fd5b8115156103f757600080fd5b336000818152600560209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b60035490565b6000805460a060020a900460ff161561047d57600080fd5b600160a060020a0384166000908152600460205260409020548211156104a257600080fd5b600160a060020a03841660009081526005602090815260408083203384529091529020548211156104d257600080fd5b600160a060020a03841660009081526005602090815260408083203384529091529020546105009083610909565b600160a060020a03851660008181526005602090815260408083203384528252808320949094559181526004909152205461053b9083610909565b600160a060020a03808616600090815260046020526040808220939093559085168152205461056a9083610980565b600160a060020a0380851660008181526004602090815260409182902094909455805186815290519193928816927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a35060019392505050565b601281565b60008054600160a060020a031633146105e857600080fd5b60005460a060020a900460ff16151561060057600080fd5b6000805474ff0000000000000000000000000000000000000000191681556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b339190a150600190565b60005460a060020a900460ff1681565b600160a060020a031660009081526004602052604090205490565b60008054600160a060020a0316331461068e57600080fd5b60005460a060020a900460ff16156106a557600080fd5b6000805474ff0000000000000000000000000000000000000000191660a060020a1781556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff6259190a150600190565b600054600160a060020a031681565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156103cb5780601f106103a0576101008083540402835291602001916103cb565b6402540be40081565b6000805460a060020a900460ff161561077e57600080fd5b3360009081526004602052604090205482111561079a57600080fd5b600160a060020a03831615156107af57600080fd5b336000908152600460205260409020546107c99083610909565b3360009081526004602052604080822092909255600160a060020a038516815220546107f59083610980565b600160a060020a0384166000818152600460209081526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b600160a060020a03918216600090815260056020908152604080832093909416825291909152205490565b600054600160a060020a0316331461089557600080fd5b600160a060020a038116156109065760008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b60008282111561097a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f536166654d61746820737562206661696c656400000000000000000000000000604482015290519081900360640190fd5b50900390565b8181018281101561045957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f536166654d61746820616464206661696c656400000000000000000000000000604482015290519081900360640190fd5b6000821515610a0357506000610459565b50818102818382811515610a1357fe5b041461045957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f536166654d617468206d756c206661696c656400000000000000000000000000604482015290519081900360640190fd00a165627a7a72305820ef0a6f37c7560b49c737ef195a85c7aee1cce331d6fcc2515e2462f85a9932820029

Swarm Source

bzzr://ef0a6f37c7560b49c737ef195a85c7aee1cce331d6fcc2515e2462f85a993282
Loading...
Loading
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.