ETH Price: $3,912.16 (-0.80%)

Token

ERC-20: Spower (Spor)
 

Overview

Max Total Supply

330,000,000 Spor

Holders

204

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 6 Decimals)

Balance
0 Spor

Value
$0.00
0x51d47ae62e79a752b99cd0a9ad255859ed22e07e
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:
NiMingToken

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-11-06
*/

pragma solidity ^0.4.23;
contract Token{
    // token总量,默认会为public变量生成一个getter函数接口,名称为totalSupply().
    uint256 public totalSupply;

    /// 获取账户_owner拥有token的数量 
    function balanceOf(address _owner) constant public returns (uint256 balance);

    //从消息发送者账户中往_to账户转数量为_value的token
    function transfer(address _to, uint256 _value) public returns (bool success);

    //从账户_from中往账户_to转数量为_value的token,与approve方法配合使用
    function transferFrom(address _from, address _to, uint256 _value) public returns   
    (bool success);

    //消息发送账户设置账户_spender能从发送账户中转出数量为_value的token
    function approve(address _spender, uint256 _value) public returns (bool success);

    //获取账户_spender可以从账户_owner中转出token的数量 
    function allowance(address _owner, address _spender) constant public returns 
    (uint256 remaining);

    //发生转账时必须要触发的事件 
    event Transfer(address indexed _from, address indexed _to, uint256 _value);

    //当函数approve(address _spender, uint256 _value)成功执行时必须触发的事件
    event Approval(address indexed _owner, address indexed _spender, uint256 
    _value);
}

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 StandardToken is Token {
    using SafeMath for uint256;
    function transfer(address _to, uint256 _value) public returns (bool success) {
        require(_to != address(0));
        require(balances[msg.sender] >= _value);
        balances[msg.sender] = balances[msg.sender].sub(_value);//从消息发送者账户中减去token数量_value
        balances[_to] = balances[_to].add(_value);//往接收账户增加token数量_value
        emit Transfer(msg.sender, _to, _value);//触发转币交易事件
        return true;
    }


    function transferFrom(address _from, address _to, uint256 _value) public returns 
    (bool success) {
        require(_to != address(0));
        require(balances[_from] >= _value && allowed[_from][msg.sender] >= _value);
        balances[_to] = balances[_to].add(_value);//接收账户增加token数量_value
        balances[_from] = balances[_from].sub(_value); //支出账户_from减去token数量_value
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);//消息发送者可以从账户_from中转出的数量减少_value
        emit Transfer(_from, _to, _value);//触发转币交易事件
        return true;
    }
    function balanceOf(address _owner) constant public returns (uint256 balance) {
        return balances[_owner];
    }


    function approve(address _spender, uint256 _value) public returns (bool success)   
    {
        require((_value == 0) || (allowed[msg.sender][_spender] == 0));
        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }


    function allowance(address _owner, address _spender) constant public returns (uint256 remaining) {
        return allowed[_owner][_spender];//允许_spender从_owner中转出的token数
    }
    mapping (address => uint256) balances;
    mapping (address => mapping (address => uint256)) allowed;
}

contract NiMingToken is StandardToken { 

    /* Public variables of the token */
    string public name;                   //名称: eg Simon Bucks
    uint8 public decimals;               //最多的小数位数,How many decimals to show. ie. There could 1000 base units with 3 decimals. Meaning 0.980 SBX = 980 base units. It's like comparing 1 wei to 1 ether.
    string public symbol;               //token简称: eg SBX
    string public version = 'H0.1';    //版本

    constructor(uint256 _initialAmount, string _tokenName, uint8 _decimalUnits, string _tokenSymbol) public {
        balances[msg.sender] = _initialAmount; // 初始token数量给予消息发送者
        totalSupply = _initialAmount;         // 设置初始总量
        name = _tokenName;                   // token名称
        decimals = _decimalUnits;           // 小数位数
        symbol = _tokenSymbol;             // token简称
    }

    /* Approves and then calls the receiving contract */
    
    function approveAndCall(address _spender, uint256 _value, bytes _extraData) public returns (bool success) {
        require((_value == 0) || (allowed[msg.sender][_spender] == 0));
        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        //call the receiveApproval function on the contract you want to be notified. This crafts the function signature manually so one doesn't have to include a contract in here just for this.
        //receiveApproval(address _from, uint256 _value, address _tokenContract, bytes _extraData)
        //it is assumed that when does this that the call *should* succeed, otherwise one would use vanilla approve instead.
        require(_spender.call(bytes4(bytes32(keccak256("receiveApproval(address,uint256,address,bytes)"))), msg.sender, _value, this, _extraData));
        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":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","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":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","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":"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":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"approveAndCall","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"},{"inputs":[{"name":"_initialAmount","type":"uint256"},{"name":"_tokenName","type":"string"},{"name":"_decimalUnits","type":"uint8"},{"name":"_tokenSymbol","type":"string"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"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"}]

60c0604052600460808190527f48302e310000000000000000000000000000000000000000000000000000000060a090815261003e91600691906100d0565b5034801561004b57600080fd5b50604051610b0d380380610b0d8339810160409081528151602080840151838501516060860151336000908152600185529586208590559484905590850180519395909491939101916100a3916003918601906100d0565b506004805460ff191660ff841617905580516100c69060059060208401906100d0565b505050505061016b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061011157805160ff191683800117855561013e565b8280016001018555821561013e579182015b8281111561013e578251825591602001919060010190610123565b5061014a92915061014e565b5090565b61016891905b8082111561014a5760008155600101610154565b90565b6109938061017a6000396000f3006080604052600436106100955763ffffffff60e060020a60003504166306fdde03811461009a578063095ea7b31461012457806318160ddd1461015c57806323b872dd14610183578063313ce567146101ad57806354fd4d50146101d857806370a08231146101ed57806395d89b411461020e578063a9059cbb14610223578063cae9ca5114610247578063dd62ed3e146102b0575b600080fd5b3480156100a657600080fd5b506100af6102d7565b6040805160208082528351818301528351919283929083019185019080838360005b838110156100e95781810151838201526020016100d1565b50505050905090810190601f1680156101165780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561013057600080fd5b50610148600160a060020a0360043516602435610365565b604080519115158252519081900360200190f35b34801561016857600080fd5b50610171610407565b60408051918252519081900360200190f35b34801561018f57600080fd5b50610148600160a060020a036004358116906024351660443561040d565b3480156101b957600080fd5b506101c2610580565b6040805160ff9092168252519081900360200190f35b3480156101e457600080fd5b506100af610589565b3480156101f957600080fd5b50610171600160a060020a03600435166105e4565b34801561021a57600080fd5b506100af6105ff565b34801561022f57600080fd5b50610148600160a060020a036004351660243561065a565b34801561025357600080fd5b50604080516020600460443581810135601f8101849004840285018401909552848452610148948235600160a060020a031694602480359536959460649492019190819084018382808284375094975061073d9650505050505050565b3480156102bc57600080fd5b50610171600160a060020a0360043581169060243516610914565b6003805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561035d5780601f106103325761010080835404028352916020019161035d565b820191906000526020600020905b81548152906001019060200180831161034057829003601f168201915b505050505081565b60008115806103955750336000908152600260209081526040808320600160a060020a0387168452909152902054155b15156103a057600080fd5b336000818152600260209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b60005481565b6000600160a060020a038316151561042457600080fd5b600160a060020a038416600090815260016020526040902054821180159061046f5750600160a060020a03841660009081526002602090815260408083203384529091529020548211155b151561047a57600080fd5b600160a060020a0383166000908152600160205260409020546104a3908363ffffffff61093f16565b600160a060020a0380851660009081526001602052604080822093909355908616815220546104d8908363ffffffff61095516565b600160a060020a0385166000908152600160209081526040808320939093556002815282822033835290522054610515908363ffffffff61095516565b600160a060020a03808616600081815260026020908152604080832033845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060019392505050565b60045460ff1681565b6006805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561035d5780601f106103325761010080835404028352916020019161035d565b600160a060020a031660009081526001602052604090205490565b6005805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561035d5780601f106103325761010080835404028352916020019161035d565b6000600160a060020a038316151561067157600080fd5b3360009081526001602052604090205482111561068d57600080fd5b336000908152600160205260409020546106ad908363ffffffff61095516565b3360009081526001602052604080822092909255600160a060020a038516815220546106df908363ffffffff61093f16565b600160a060020a0384166000818152600160209081526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b600082158061076d5750336000908152600260209081526040808320600160a060020a0388168452909152902054155b151561077857600080fd5b336000818152600260209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a383600160a060020a031660405180807f72656365697665417070726f76616c28616464726573732c75696e743235362c81526020017f616464726573732c627974657329000000000000000000000000000000000000815250602e019050604051809103902060e060020a9004338530866040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a03168152602001828051906020019080838360005b838110156108b95781810151838201526020016108a1565b50505050905090810190601f1680156108e65780820380516001836020036101000a031916815260200191505b509450505050506000604051808303816000875af192505050151561090a57600080fd5b5060019392505050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60008282018381101561094e57fe5b9392505050565b60008282111561096157fe5b509003905600a165627a7a72305820b17ca4b02192fc2576450aa2ba9b65a0a123a44cfd7d6d5d6a17407ecd6d225f002900000000000000000000000000000000000000000000000000012c221cc6a0000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000653706f7765720000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000453706f7200000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106100955763ffffffff60e060020a60003504166306fdde03811461009a578063095ea7b31461012457806318160ddd1461015c57806323b872dd14610183578063313ce567146101ad57806354fd4d50146101d857806370a08231146101ed57806395d89b411461020e578063a9059cbb14610223578063cae9ca5114610247578063dd62ed3e146102b0575b600080fd5b3480156100a657600080fd5b506100af6102d7565b6040805160208082528351818301528351919283929083019185019080838360005b838110156100e95781810151838201526020016100d1565b50505050905090810190601f1680156101165780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561013057600080fd5b50610148600160a060020a0360043516602435610365565b604080519115158252519081900360200190f35b34801561016857600080fd5b50610171610407565b60408051918252519081900360200190f35b34801561018f57600080fd5b50610148600160a060020a036004358116906024351660443561040d565b3480156101b957600080fd5b506101c2610580565b6040805160ff9092168252519081900360200190f35b3480156101e457600080fd5b506100af610589565b3480156101f957600080fd5b50610171600160a060020a03600435166105e4565b34801561021a57600080fd5b506100af6105ff565b34801561022f57600080fd5b50610148600160a060020a036004351660243561065a565b34801561025357600080fd5b50604080516020600460443581810135601f8101849004840285018401909552848452610148948235600160a060020a031694602480359536959460649492019190819084018382808284375094975061073d9650505050505050565b3480156102bc57600080fd5b50610171600160a060020a0360043581169060243516610914565b6003805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561035d5780601f106103325761010080835404028352916020019161035d565b820191906000526020600020905b81548152906001019060200180831161034057829003601f168201915b505050505081565b60008115806103955750336000908152600260209081526040808320600160a060020a0387168452909152902054155b15156103a057600080fd5b336000818152600260209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b60005481565b6000600160a060020a038316151561042457600080fd5b600160a060020a038416600090815260016020526040902054821180159061046f5750600160a060020a03841660009081526002602090815260408083203384529091529020548211155b151561047a57600080fd5b600160a060020a0383166000908152600160205260409020546104a3908363ffffffff61093f16565b600160a060020a0380851660009081526001602052604080822093909355908616815220546104d8908363ffffffff61095516565b600160a060020a0385166000908152600160209081526040808320939093556002815282822033835290522054610515908363ffffffff61095516565b600160a060020a03808616600081815260026020908152604080832033845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060019392505050565b60045460ff1681565b6006805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561035d5780601f106103325761010080835404028352916020019161035d565b600160a060020a031660009081526001602052604090205490565b6005805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561035d5780601f106103325761010080835404028352916020019161035d565b6000600160a060020a038316151561067157600080fd5b3360009081526001602052604090205482111561068d57600080fd5b336000908152600160205260409020546106ad908363ffffffff61095516565b3360009081526001602052604080822092909255600160a060020a038516815220546106df908363ffffffff61093f16565b600160a060020a0384166000818152600160209081526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b600082158061076d5750336000908152600260209081526040808320600160a060020a0388168452909152902054155b151561077857600080fd5b336000818152600260209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a383600160a060020a031660405180807f72656365697665417070726f76616c28616464726573732c75696e743235362c81526020017f616464726573732c627974657329000000000000000000000000000000000000815250602e019050604051809103902060e060020a9004338530866040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a03168152602001828051906020019080838360005b838110156108b95781810151838201526020016108a1565b50505050905090810190601f1680156108e65780820380516001836020036101000a031916815260200191505b509450505050506000604051808303816000875af192505050151561090a57600080fd5b5060019392505050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60008282018381101561094e57fe5b9392505050565b60008282111561096157fe5b509003905600a165627a7a72305820b17ca4b02192fc2576450aa2ba9b65a0a123a44cfd7d6d5d6a17407ecd6d225f0029

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

00000000000000000000000000000000000000000000000000012c221cc6a0000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000653706f7765720000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000453706f7200000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _initialAmount (uint256): 330000000000000
Arg [1] : _tokenName (string): Spower
Arg [2] : _decimalUnits (uint8): 6
Arg [3] : _tokenSymbol (string): Spor

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000012c221cc6a000
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [3] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [5] : 53706f7765720000000000000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [7] : 53706f7200000000000000000000000000000000000000000000000000000000


Swarm Source

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