ETH Price: $2,722.92 (-1.53%)

Token

Pepe Mog (POG)
 

Overview

Max Total Supply

420,690,000,000 POG

Holders

243

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

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:
PepeMog

Compiler Version
v0.8.25+commit.b61c2a91

Optimization Enabled:
Yes with 2024 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-07-16
*/

/**
// SPDX-License-Identifier: MIT


/*
TG: https://t.me/PEPEMOG_POG
Twitter: https://x.com/PEPEMOG_POG
Website: https://pepemog.com/
*/

pragma solidity = 0.8.25;
pragma experimental ABIEncoderV2;

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

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

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 swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;
}

interface IUniswapV2Pair {
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
    event Transfer(address indexed from, address indexed to, uint256 value);

    function name() external pure returns (string memory);

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

    function decimals() external pure returns (uint8);

    function totalSupply() external view returns (uint256);

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

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

    function approve(address spender, uint256 value) external returns (bool);

    function transfer(address to, uint256 value) external returns (bool);

    function transferFrom(
        address from,
        address to,
        uint256 value
    ) external returns (bool);

    function DOMAIN_SEPARATOR() external view returns (bytes32);

    function PERMIT_TYPEHASH() external pure returns (bytes32);

    function nonces(address owner) external view returns (uint256);

    function permit(
        address owner,
        address spender,
        uint256 value,
        uint256 deadline,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external;

    event Mint(address indexed sender, uint256 amount0, uint256 amount1);

    event Swap(
        address indexed sender,
        uint256 amount0In,
        uint256 amount1In,
        uint256 amount0Out,
        uint256 amount1Out,
        address indexed to
    );
    event Sync(uint112 reserve0, uint112 reserve1);

    function MINIMUM_LIQUIDITY() external pure returns (uint256);

    function factory() external view returns (address);

    function token0() external view returns (address);

    function token1() external view returns (address);

    function getReserves()
        external
        view
        returns (
            uint112 reserve0,
            uint112 reserve1,
            uint32 blockTimestampLast
        );

    function price0CumulativeLast() external view returns (uint256);

    function price1CumulativeLast() external view returns (uint256);

    function kLast() external view returns (uint256);

    function mint(address to) external returns (uint256 liquidity);

    function swap(
        uint256 amount0Out,
        uint256 amount1Out,
        address to,
        bytes calldata data
    ) external;

    function skim(address to) external;

    function sync() external;

    function initialize(address, address) external;
}

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

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 {

    event Transfer(address indexed from, address indexed to, uint256 value);

    event Approval(address indexed owner, address indexed spender, uint256 value);

    function totalSupply() external view returns (uint256);

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

    function transfer(address to, 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 from,
        address to,
        uint256 amount
    ) external returns (bool);
}

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 Ownable is Context {
    address private _owner;

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

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

    modifier onlyOwner() {
        _checkOwner();
        _;
    }

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

    function _checkOwner() internal view virtual {
        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 to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, 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) {
        address owner = _msgSender();
        _approve(owner, spender, amount);
        return true;
    }

    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

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

        return true;
    }

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

        _beforeTokenTransfer(from, to, amount);

        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[from] = fromBalance - amount;
            _balances[to] += amount;
        }

        emit Transfer(from, to, amount);

        _afterTokenTransfer(from, to, 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;
        unchecked {
            _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 _spendAllowance(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

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

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

contract PepeMog is ERC20, Ownable {

    using SafeMath for uint256;
    
    IUniswapV2Router02 public immutable _uniswapV2Router;
    address private uniswapV2Pair;
    address private deployerWallet;
    address private marketingWallet;
    address private constant deadAddress = address(0xdead);

    bool private swapping;

    string private constant _name = "Pepe Mog";
    string private constant _symbol = "POG";
    mapping(address => bool) private bots;

    uint256 public initialTotalSupply = 420_690_000_000 * 1e18;
    uint256 public maxTransactionAmount = 8_413_800_000 * 1e18;
    uint256 public maxWallet = 8_413_800_000 * 1e18;
    uint256 public swapTokensAtAmount = 4_206_900_000 * 1e18;

    bool public enableTrade = false;

    uint256 public BuyFee = 20;
    uint256 public SellFee = 30;

    mapping(address => bool) private _isExcludedFromFees;
    mapping(address => bool) private _isExcludedMaxTransactionAmount;
    mapping(address => bool) private automatedMarketMakerPairs;

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

    constructor(address wallet) ERC20(_name, _symbol) {

        _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        _setAutomatedMarketMakerPair(address(uniswapV2Pair), true);
        excludeFromMaxTransaction(address(uniswapV2Pair), true);
        excludeFromMaxTransaction(address(_uniswapV2Router), true);
        marketingWallet = payable(wallet);     
        
        deployerWallet = payable(_msgSender());
        excludeFromFees(owner(), true);
        excludeFromFees(address(this), true);
        excludeFromFees(address(wallet), true);
        excludeFromFees(address(0xdead), true);

        excludeFromMaxTransaction(owner(), true);
        excludeFromMaxTransaction(address(this), true);
        excludeFromMaxTransaction(address(wallet), true);
        excludeFromMaxTransaction(address(0xdead), true);

        uint devTx = initialTotalSupply.mul(85).div(100);
        uint remain = initialTotalSupply.sub(devTx);

        _mint(deployerWallet, devTx);
        _mint(address(this),remain);

    }

    receive() external payable {}

    function openTrade() external onlyOwner() {
        enableTrade = true;
    }

    function excludeFromMaxTransaction(address updAds, bool isEx) private {
        _isExcludedMaxTransactionAmount[updAds] = isEx;
    }

    function excludeFromFees(address account, bool excluded) private {
        _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 _setAutomatedMarketMakerPair(address pair, bool value) private {
        automatedMarketMakerPairs[pair] = value;
        emit SetAutomatedMarketMakerPair(pair, value);
    }

    function isExcludedFromFees(address account) public view returns (bool) {
        return _isExcludedFromFees[account];
    }

    function addBots(address[] memory bots_) public onlyOwner {
        for (uint256 i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }

    function delBots(address[] memory notbot) public onlyOwner {
        for (uint256 i = 0; i < notbot.length; i++) {
            bots[notbot[i]] = false;
        }
    }

    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;
        }
        
        bool isTransfer = !automatedMarketMakerPairs[from] && !automatedMarketMakerPairs[to];

        if (from != owner() && to != owner() && to != address(0) && to != address(0xdead) && !swapping) {

            require(!bots[from] && !bots[to]);

            if (!enableTrade) {
                require(_isExcludedFromFees[from] || _isExcludedFromFees[to], "Trading is not active.");
            }

            if (automatedMarketMakerPairs[from] && !_isExcludedMaxTransactionAmount[to]) {
                require(amount <= maxTransactionAmount, "Buy transfer amount exceeds the maxTransactionAmount.");
                require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded");
            }

            else if (automatedMarketMakerPairs[to] && !_isExcludedMaxTransactionAmount[from]) {
                require(amount <= maxTransactionAmount, "Sell transfer amount exceeds the maxTransactionAmount.");
            } 
                
            else if (!_isExcludedMaxTransactionAmount[to]) {
                require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded");
            }
            
        }

        uint256 contractTokenBalance = balanceOf(address(this));

        bool canSwap = contractTokenBalance > 0 && !isTransfer;

        if (canSwap && !swapping && !automatedMarketMakerPairs[from] && !_isExcludedFromFees[from] && !_isExcludedFromFees[to]) {
            swapping = true;
            swapBack(amount);
            swapping = false;
        }

        bool takeFee = !swapping && !isTransfer;

        if (_isExcludedFromFees[from] || _isExcludedFromFees[to]) {
            takeFee = false;
        }

        uint256 fees = 0;

        if (takeFee) {
            if (automatedMarketMakerPairs[to]) {
                fees = amount.mul(SellFee).div(100);
            }
            else {
                fees = amount.mul(BuyFee).div(100);
            }

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

    function swapTokensForEth(uint256 tokenAmount) private {

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

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

        _uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            marketingWallet,
            block.timestamp
        );
    }

    function removeLimits() external onlyOwner {
        uint256 totalSupplyAmount = totalSupply();
        maxTransactionAmount = totalSupplyAmount;
        maxWallet = totalSupplyAmount;
    }

    function clearStuckEth() external {
        require(_msgSender() == deployerWallet);
        require(address(this).balance > 0, "Token: no ETH to clear");
        payable(msg.sender).transfer(address(this).balance);
    }

    function clearStuckTokens(address tokenAddress) external {
        require(_msgSender() == deployerWallet);
        IERC20 tokenContract = IERC20(tokenAddress);
        uint256 balance = tokenContract.balanceOf(address(this));
        require(balance > 0, "No tokens to clear");
        tokenContract.transfer(deployerWallet, balance);
    }

    function setFee(uint256 _buyFee, uint256 _sellFee) external onlyOwner {
        require(_buyFee <= 99 && _sellFee <= 99, "Fees cannot exceed 99%");
        BuyFee = _buyFee;
        SellFee = _sellFee;
    }

    function setSwapTokensAtAmount(uint256 _amount) external onlyOwner {
        swapTokensAtAmount = _amount * (10 ** 18);
    }

    function manualSwap(uint256 percent) external {
        require(_msgSender() == deployerWallet);
        uint256 totalSupplyAmount = totalSupply();
        uint256 contractBalance = balanceOf(address(this));
        uint256 tokensToSwap;

        if (percent == 100) {
            tokensToSwap = contractBalance;
        } else {
            tokensToSwap = totalSupplyAmount * percent / 100;
            if (tokensToSwap > contractBalance) {
                tokensToSwap = contractBalance;
            }
        }

        require(tokensToSwap <= contractBalance, "Swap amount exceeds contract balance");
        swapTokensForEth(tokensToSwap);
    }

    function swapBack(uint256 tokens) private {
        uint256 contractBalance = balanceOf(address(this));
        uint256 tokensToSwap; 

        if (contractBalance == 0) {
            return;
        }

        if ((BuyFee+SellFee) == 0) {

        if(contractBalance > 0 && contractBalance < swapTokensAtAmount) {
            tokensToSwap = contractBalance;
        }
        else {
            uint256 sellFeeTokens = tokens.mul(SellFee).div(100);
            tokens -= sellFeeTokens;
            if (tokens > swapTokensAtAmount) {
                tokensToSwap = swapTokensAtAmount;
            }
            else {
                tokensToSwap = tokens;
            }
        }
    }

    else {

        if(contractBalance > 0 && contractBalance < swapTokensAtAmount.div(5)) {
            return;
        }
        else if (contractBalance > 0 && contractBalance > swapTokensAtAmount.div(5) && contractBalance < swapTokensAtAmount) {
            tokensToSwap = swapTokensAtAmount.div(5);
        }
        else {
            uint256 sellFeeTokens = tokens.mul(SellFee).div(100);
            tokens -= sellFeeTokens;
            if (tokens > swapTokensAtAmount) {
                tokensToSwap = swapTokensAtAmount;
            } else {
                tokensToSwap = tokens;
            }
        }
    }
        swapTokensForEth(tokensToSwap);
    }

    
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"wallet","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":[],"name":"BuyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBots","outputs":[],"stateMutability":"nonpayable","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":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"clearStuckEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"}],"name":"clearStuckTokens","outputs":[],"stateMutability":"nonpayable","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":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableTrade","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"initialTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTransactionAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","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":"openTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setSwapTokensAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","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":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60a06040526c054f529ca52576bc6892000000600a556b1b2fbb73f163a79bb1000000600b819055600c556b0d97ddb9f8b1d3cdd8800000600d55600e805460ff191690556014600f55601e601055348015610059575f80fd5b506040516129663803806129668339810160408190526100789161060b565b6040518060400160405280600881526020016750657065204d6f6760c01b81525060405180604001604052806003815260200162504f4760e81b81525081600390816100c491906106cf565b5060046100d182826106cf565b5050506100ea6100e561041560201b60201c565b610419565b737a250d5630b4cf539739df2c5dacb4c659f2488d60808190526040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801561013d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610161919061060b565b6001600160a01b031663c9c65396306080516001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101ae573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101d2919061060b565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561021c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610240919061060b565b600680546001600160a01b0319166001600160a01b0392909216918217905561026a90600161046a565b6006546001600160a01b03165f908152601260205260409020805460ff191660011790556080516001600160a01b03165f908152601260205260409020805460ff19166001179055600880546001600160a01b0319166001600160a01b0383161790556102d43390565b600780546001600160a01b0319166001600160a01b039283161790556005546102ff911660016104bd565b61030a3060016104bd565b6103158160016104bd565b61032261dead60016104bd565b61035a6103376005546001600160a01b031690565b6001600160a01b03165f908152601260205260409020805460ff19166001179055565b305f908152601260205260408082208054600160ff1991821681179092556001600160a01b0385168452918320805483168217905561dead83527f1120e10407cab1193d7c5139d9aae5536deb3d83e855f25f8e42f811c01f56f78054909216179055600a546103d8906064906103d290605561051b565b9061052f565b600a549091505f906103ea908361053a565b600754909150610403906001600160a01b031683610545565b61040d3082610545565b5050506107fe565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0382165f81815260136020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0382165f81815260116020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b5f61052682846107a2565b90505b92915050565b5f61052682846107b9565b5f61052682846107d8565b6001600160a01b03821661059f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060025f8282546105b091906107eb565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b5f6020828403121561061b575f80fd5b81516001600160a01b0381168114610631575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061066057607f821691505b60208210810361067e57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561060657805f5260205f20601f840160051c810160208510156106a95750805b601f840160051c820191505b818110156106c8575f81556001016106b5565b5050505050565b81516001600160401b038111156106e8576106e8610638565b6106fc816106f6845461064c565b84610684565b602080601f83116001811461072f575f84156107185750858301515b5f19600386901b1c1916600185901b178555610786565b5f85815260208120601f198616915b8281101561075d5788860151825594840194600190910190840161073e565b508582101561077a57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176105295761052961078e565b5f826107d357634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156105295761052961078e565b808201808211156105295761052961078e565b60805161213b61082b5f395f81816103a3015281816118630152818161191a0152611972015261213b5ff3fe6080604052600436106101f7575f3560e01c806389291a8f11610117578063c8c8ebe4116100ac578063dd8546521161007c578063f2fde38b11610062578063f2fde38b146105d0578063f8b45b05146105ef578063fb201b1d14610604575f80fd5b8063dd854652146105a6578063e2f45605146105bb575f80fd5b8063c8c8ebe414610519578063cf9522fd1461052e578063d34628cc14610543578063dd62ed3e14610562575f80fd5b8063a457c2d7116100e7578063a457c2d71461049d578063a9059cbb146104bc578063afa4f3b2146104db578063b70143c9146104fa575f80fd5b806389291a8f146104395780638da5cb5b1461044d57806395d89b411461046a5780639a7a23d61461047e575f80fd5b8063346cc7be1161018d578063583e05681161015d578063583e05681461039257806370a08231146103dd578063715018a614610411578063751039fc14610425575f80fd5b8063346cc7be146102fe578063395093511461031d5780634fbee1931461033c57806352f7c98814610373575f80fd5b806323b872dd116101c857806323b872dd1461028e578063311028af146102ad578063313ce567146102c257806331c2d847146102dd575f80fd5b806299d3861461020257806306fdde0314610230578063095ea7b31461025157806318160ddd14610270575f80fd5b366101fe57005b5f80fd5b34801561020d575f80fd5b50600e5461021b9060ff1681565b60405190151581526020015b60405180910390f35b34801561023b575f80fd5b50610244610618565b6040516102279190611d34565b34801561025c575f80fd5b5061021b61026b366004611d8d565b6106a8565b34801561027b575f80fd5b506002545b604051908152602001610227565b348015610299575f80fd5b5061021b6102a8366004611db7565b6106c1565b3480156102b8575f80fd5b50610280600a5481565b3480156102cd575f80fd5b5060405160128152602001610227565b3480156102e8575f80fd5b506102fc6102f7366004611e09565b6106e4565b005b348015610309575f80fd5b506102fc610318366004611ec9565b61074a565b348015610328575f80fd5b5061021b610337366004611d8d565b6108d5565b348015610347575f80fd5b5061021b610356366004611ec9565b6001600160a01b03165f9081526011602052604090205460ff1690565b34801561037e575f80fd5b506102fc61038d366004611ee4565b610913565b34801561039d575f80fd5b506103c57f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610227565b3480156103e8575f80fd5b506102806103f7366004611ec9565b6001600160a01b03165f9081526020819052604090205490565b34801561041c575f80fd5b506102fc610984565b348015610430575f80fd5b506102fc610997565b348015610444575f80fd5b506102fc6109b4565b348015610458575f80fd5b506005546001600160a01b03166103c5565b348015610475575f80fd5b50610244610a4e565b348015610489575f80fd5b506102fc610498366004611f11565b610a5d565b3480156104a8575f80fd5b5061021b6104b7366004611d8d565b610af3565b3480156104c7575f80fd5b5061021b6104d6366004611d8d565b610b9c565b3480156104e6575f80fd5b506102fc6104f5366004611f48565b610ba9565b348015610505575f80fd5b506102fc610514366004611f48565b610bc9565b348015610524575f80fd5b50610280600b5481565b348015610539575f80fd5b5061028060105481565b34801561054e575f80fd5b506102fc61055d366004611e09565b610cb5565b34801561056d575f80fd5b5061028061057c366004611f5f565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b3480156105b1575f80fd5b50610280600f5481565b3480156105c6575f80fd5b50610280600d5481565b3480156105db575f80fd5b506102fc6105ea366004611ec9565b610d18565b3480156105fa575f80fd5b50610280600c5481565b34801561060f575f80fd5b506102fc610da5565b60606003805461062790611f8b565b80601f016020809104026020016040519081016040528092919081815260200182805461065390611f8b565b801561069e5780601f106106755761010080835404028352916020019161069e565b820191905f5260205f20905b81548152906001019060200180831161068157829003601f168201915b5050505050905090565b5f336106b5818585610dbc565b60019150505b92915050565b5f336106ce858285610f13565b6106d9858585610fbc565b506001949350505050565b6106ec6116f8565b5f5b8151811015610746575f60095f84848151811061070d5761070d611fc3565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff19169115159190911790556001016106ee565b5050565b6007546001600160a01b0316336001600160a01b031614610769575f80fd5b6040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015281905f906001600160a01b038316906370a0823190602401602060405180830381865afa1580156107c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107ec9190611fd7565b90505f81116108425760405162461bcd60e51b815260206004820152601260248201527f4e6f20746f6b656e7320746f20636c656172000000000000000000000000000060448201526064015b60405180910390fd5b6007546040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303815f875af11580156108ab573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108cf9190611fee565b50505050565b335f8181526001602090815260408083206001600160a01b03871684529091528120549091906106b5908290869061090e90879061201d565b610dbc565b61091b6116f8565b6063821115801561092d575060638111155b6109795760405162461bcd60e51b815260206004820152601660248201527f466565732063616e6e6f742065786365656420393925000000000000000000006044820152606401610839565b600f91909155601055565b61098c6116f8565b6109955f611752565b565b61099f6116f8565b5f6109a960025490565b600b819055600c5550565b6007546001600160a01b0316336001600160a01b0316146109d3575f80fd5b5f4711610a225760405162461bcd60e51b815260206004820152601660248201527f546f6b656e3a206e6f2045544820746f20636c656172000000000000000000006044820152606401610839565b60405133904780156108fc02915f818181858888f19350505050158015610a4b573d5f803e3d5ffd5b50565b60606004805461062790611f8b565b610a656116f8565b6006546001600160a01b0390811690831603610ae95760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b65725061697273000000000000006064820152608401610839565b61074682826117bb565b335f8181526001602090815260408083206001600160a01b038716845290915281205490919083811015610b8f5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152608401610839565b6106d98286868403610dbc565b5f336106b5818585610fbc565b610bb16116f8565b610bc381670de0b6b3a7640000612030565b600d5550565b6007546001600160a01b0316336001600160a01b031614610be8575f80fd5b5f610bf260025490565b305f908152602081905260408120549192506064849003610c14575080610c37565b6064610c208585612030565b610c2a9190612047565b905081811115610c375750805b81811115610cac5760405162461bcd60e51b8152602060048201526024808201527f5377617020616d6f756e74206578636565647320636f6e74726163742062616c60448201527f616e6365000000000000000000000000000000000000000000000000000000006064820152608401610839565b6108cf8161180e565b610cbd6116f8565b5f5b815181101561074657600160095f848481518110610cdf57610cdf611fc3565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610cbf565b610d206116f8565b6001600160a01b038116610d9c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610839565b610a4b81611752565b610dad6116f8565b600e805460ff19166001179055565b6001600160a01b038316610e375760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610839565b6001600160a01b038216610eb35760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610839565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146108cf5781811015610faf5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610839565b6108cf8484848403610dbc565b6001600160a01b0383166110385760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610839565b6001600160a01b0382166110b45760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610839565b805f036110cb576110c683835f6119e4565b505050565b6001600160a01b0383165f9081526013602052604081205460ff1615801561110b57506001600160a01b0383165f9081526013602052604090205460ff16155b905061111f6005546001600160a01b031690565b6001600160a01b0316846001600160a01b03161415801561114e57506005546001600160a01b03848116911614155b801561116257506001600160a01b03831615155b801561117957506001600160a01b03831661dead14155b801561118f5750600854600160a01b900460ff16155b156114f1576001600160a01b0384165f9081526009602052604090205460ff161580156111d457506001600160a01b0383165f9081526009602052604090205460ff16155b6111dc575f80fd5b600e5460ff1661126f576001600160a01b0384165f9081526011602052604090205460ff168061122357506001600160a01b0383165f9081526011602052604090205460ff165b61126f5760405162461bcd60e51b815260206004820152601660248201527f54726164696e67206973206e6f74206163746976652e000000000000000000006044820152606401610839565b6001600160a01b0384165f9081526013602052604090205460ff1680156112ae57506001600160a01b0383165f9081526012602052604090205460ff16155b156113a357600b5482111561132b5760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527f6d61785472616e73616374696f6e416d6f756e742e00000000000000000000006064820152608401610839565b600c546001600160a01b0384165f90815260208190526040902054611350908461201d565b111561139e5760405162461bcd60e51b815260206004820152601360248201527f4d61782077616c6c6574206578636565646564000000000000000000000000006044820152606401610839565b6114f1565b6001600160a01b0383165f9081526013602052604090205460ff1680156113e257506001600160a01b0384165f9081526012602052604090205460ff16155b1561145f57600b5482111561139e5760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560448201527f206d61785472616e73616374696f6e416d6f756e742e000000000000000000006064820152608401610839565b6001600160a01b0383165f9081526012602052604090205460ff166114f157600c546001600160a01b0384165f908152602081905260409020546114a3908461201d565b11156114f15760405162461bcd60e51b815260206004820152601360248201527f4d61782077616c6c6574206578636565646564000000000000000000000000006044820152606401610839565b305f9081526020819052604081205490811580159061150e575082155b90508080156115275750600854600160a01b900460ff16155b801561154b57506001600160a01b0386165f9081526013602052604090205460ff16155b801561156f57506001600160a01b0386165f9081526011602052604090205460ff16155b801561159357506001600160a01b0385165f9081526011602052604090205460ff16155b156115f857600880547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16600160a01b1790556115cf84611bcf565b600880547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1690555b6008545f90600160a01b900460ff16158015611612575083155b6001600160a01b0388165f9081526011602052604090205490915060ff168061165257506001600160a01b0386165f9081526011602052604090205460ff165b1561165a57505f5b5f81156116e3576001600160a01b0387165f9081526013602052604090205460ff16156116a8576116a1606461169b60105489611d1790919063ffffffff16565b90611d29565b90506116c5565b6116c2606461169b600f5489611d1790919063ffffffff16565b90505b80156116d6576116d68830836119e4565b6116e08187612066565b95505b6116ee8888886119e4565b5050505050505050565b6005546001600160a01b031633146109955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610839565b600580546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0382165f81815260136020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6040805160028082526060820183525f9260208301908036833701905050905030815f8151811061184157611841611fc3565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118e19190612079565b816001815181106118f4576118f4611fc3565b60200260200101906001600160a01b031690816001600160a01b03168152505061193f307f000000000000000000000000000000000000000000000000000000000000000084610dbc565b6008546040517f791ac9470000000000000000000000000000000000000000000000000000000081526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081169263791ac947926119b39287925f92889291909116904290600401612094565b5f604051808303815f87803b1580156119ca575f80fd5b505af11580156119dc573d5f803e3d5ffd5b505050505050565b6001600160a01b038316611a605760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610839565b6001600160a01b038216611adc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610839565b6001600160a01b0383165f9081526020819052604090205481811015611b6a5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152608401610839565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36108cf565b305f9081526020819052604081205490818103611beb57505050565b601054600f54611bfb919061201d565b5f03611c64575f82118015611c115750600d5482105b15611c1d575080611d0e565b5f611c38606461169b60105487611d1790919063ffffffff16565b9050611c448185612066565b9350600d54841115611c5a57600d549150611c5e565b8391505b50611d0e565b5f82118015611c7f5750600d54611c7c906005611d29565b82105b15611c8957505050565b5f82118015611ca45750600d54611ca1906005611d29565b82115b8015611cb15750600d5482105b15611ccb57600d54611cc4906005611d29565b9050611d0e565b5f611ce6606461169b60105487611d1790919063ffffffff16565b9050611cf28185612066565b9350600d54841115611d0857600d549150611d0c565b8391505b505b6110c68161180e565b5f611d228284612030565b9392505050565b5f611d228284612047565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610a4b575f80fd5b8035611d8881611d69565b919050565b5f8060408385031215611d9e575f80fd5b8235611da981611d69565b946020939093013593505050565b5f805f60608486031215611dc9575f80fd5b8335611dd481611d69565b92506020840135611de481611d69565b929592945050506040919091013590565b634e487b7160e01b5f52604160045260245ffd5b5f6020808385031215611e1a575f80fd5b823567ffffffffffffffff80821115611e31575f80fd5b818501915085601f830112611e44575f80fd5b813581811115611e5657611e56611df5565b8060051b604051601f19603f83011681018181108582111715611e7b57611e7b611df5565b604052918252848201925083810185019188831115611e98575f80fd5b938501935b82851015611ebd57611eae85611d7d565b84529385019392850192611e9d565b98975050505050505050565b5f60208284031215611ed9575f80fd5b8135611d2281611d69565b5f8060408385031215611ef5575f80fd5b50508035926020909101359150565b8015158114610a4b575f80fd5b5f8060408385031215611f22575f80fd5b8235611f2d81611d69565b91506020830135611f3d81611f04565b809150509250929050565b5f60208284031215611f58575f80fd5b5035919050565b5f8060408385031215611f70575f80fd5b8235611f7b81611d69565b91506020830135611f3d81611d69565b600181811c90821680611f9f57607f821691505b602082108103611fbd57634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611fe7575f80fd5b5051919050565b5f60208284031215611ffe575f80fd5b8151611d2281611f04565b634e487b7160e01b5f52601160045260245ffd5b808201808211156106bb576106bb612009565b80820281158282048414176106bb576106bb612009565b5f8261206157634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156106bb576106bb612009565b5f60208284031215612089575f80fd5b8151611d2281611d69565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156120e45784516001600160a01b0316835293830193918301916001016120bf565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220655a293f05882e25f87ec9546fed8e5949c712c2c4ef12798f80e206ec39fc2c64736f6c6343000819003300000000000000000000000024916921adfb227f991a984f12b760a169732bb2

Deployed Bytecode

0x6080604052600436106101f7575f3560e01c806389291a8f11610117578063c8c8ebe4116100ac578063dd8546521161007c578063f2fde38b11610062578063f2fde38b146105d0578063f8b45b05146105ef578063fb201b1d14610604575f80fd5b8063dd854652146105a6578063e2f45605146105bb575f80fd5b8063c8c8ebe414610519578063cf9522fd1461052e578063d34628cc14610543578063dd62ed3e14610562575f80fd5b8063a457c2d7116100e7578063a457c2d71461049d578063a9059cbb146104bc578063afa4f3b2146104db578063b70143c9146104fa575f80fd5b806389291a8f146104395780638da5cb5b1461044d57806395d89b411461046a5780639a7a23d61461047e575f80fd5b8063346cc7be1161018d578063583e05681161015d578063583e05681461039257806370a08231146103dd578063715018a614610411578063751039fc14610425575f80fd5b8063346cc7be146102fe578063395093511461031d5780634fbee1931461033c57806352f7c98814610373575f80fd5b806323b872dd116101c857806323b872dd1461028e578063311028af146102ad578063313ce567146102c257806331c2d847146102dd575f80fd5b806299d3861461020257806306fdde0314610230578063095ea7b31461025157806318160ddd14610270575f80fd5b366101fe57005b5f80fd5b34801561020d575f80fd5b50600e5461021b9060ff1681565b60405190151581526020015b60405180910390f35b34801561023b575f80fd5b50610244610618565b6040516102279190611d34565b34801561025c575f80fd5b5061021b61026b366004611d8d565b6106a8565b34801561027b575f80fd5b506002545b604051908152602001610227565b348015610299575f80fd5b5061021b6102a8366004611db7565b6106c1565b3480156102b8575f80fd5b50610280600a5481565b3480156102cd575f80fd5b5060405160128152602001610227565b3480156102e8575f80fd5b506102fc6102f7366004611e09565b6106e4565b005b348015610309575f80fd5b506102fc610318366004611ec9565b61074a565b348015610328575f80fd5b5061021b610337366004611d8d565b6108d5565b348015610347575f80fd5b5061021b610356366004611ec9565b6001600160a01b03165f9081526011602052604090205460ff1690565b34801561037e575f80fd5b506102fc61038d366004611ee4565b610913565b34801561039d575f80fd5b506103c57f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b039091168152602001610227565b3480156103e8575f80fd5b506102806103f7366004611ec9565b6001600160a01b03165f9081526020819052604090205490565b34801561041c575f80fd5b506102fc610984565b348015610430575f80fd5b506102fc610997565b348015610444575f80fd5b506102fc6109b4565b348015610458575f80fd5b506005546001600160a01b03166103c5565b348015610475575f80fd5b50610244610a4e565b348015610489575f80fd5b506102fc610498366004611f11565b610a5d565b3480156104a8575f80fd5b5061021b6104b7366004611d8d565b610af3565b3480156104c7575f80fd5b5061021b6104d6366004611d8d565b610b9c565b3480156104e6575f80fd5b506102fc6104f5366004611f48565b610ba9565b348015610505575f80fd5b506102fc610514366004611f48565b610bc9565b348015610524575f80fd5b50610280600b5481565b348015610539575f80fd5b5061028060105481565b34801561054e575f80fd5b506102fc61055d366004611e09565b610cb5565b34801561056d575f80fd5b5061028061057c366004611f5f565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b3480156105b1575f80fd5b50610280600f5481565b3480156105c6575f80fd5b50610280600d5481565b3480156105db575f80fd5b506102fc6105ea366004611ec9565b610d18565b3480156105fa575f80fd5b50610280600c5481565b34801561060f575f80fd5b506102fc610da5565b60606003805461062790611f8b565b80601f016020809104026020016040519081016040528092919081815260200182805461065390611f8b565b801561069e5780601f106106755761010080835404028352916020019161069e565b820191905f5260205f20905b81548152906001019060200180831161068157829003601f168201915b5050505050905090565b5f336106b5818585610dbc565b60019150505b92915050565b5f336106ce858285610f13565b6106d9858585610fbc565b506001949350505050565b6106ec6116f8565b5f5b8151811015610746575f60095f84848151811061070d5761070d611fc3565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff19169115159190911790556001016106ee565b5050565b6007546001600160a01b0316336001600160a01b031614610769575f80fd5b6040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015281905f906001600160a01b038316906370a0823190602401602060405180830381865afa1580156107c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107ec9190611fd7565b90505f81116108425760405162461bcd60e51b815260206004820152601260248201527f4e6f20746f6b656e7320746f20636c656172000000000000000000000000000060448201526064015b60405180910390fd5b6007546040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303815f875af11580156108ab573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108cf9190611fee565b50505050565b335f8181526001602090815260408083206001600160a01b03871684529091528120549091906106b5908290869061090e90879061201d565b610dbc565b61091b6116f8565b6063821115801561092d575060638111155b6109795760405162461bcd60e51b815260206004820152601660248201527f466565732063616e6e6f742065786365656420393925000000000000000000006044820152606401610839565b600f91909155601055565b61098c6116f8565b6109955f611752565b565b61099f6116f8565b5f6109a960025490565b600b819055600c5550565b6007546001600160a01b0316336001600160a01b0316146109d3575f80fd5b5f4711610a225760405162461bcd60e51b815260206004820152601660248201527f546f6b656e3a206e6f2045544820746f20636c656172000000000000000000006044820152606401610839565b60405133904780156108fc02915f818181858888f19350505050158015610a4b573d5f803e3d5ffd5b50565b60606004805461062790611f8b565b610a656116f8565b6006546001600160a01b0390811690831603610ae95760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b65725061697273000000000000006064820152608401610839565b61074682826117bb565b335f8181526001602090815260408083206001600160a01b038716845290915281205490919083811015610b8f5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152608401610839565b6106d98286868403610dbc565b5f336106b5818585610fbc565b610bb16116f8565b610bc381670de0b6b3a7640000612030565b600d5550565b6007546001600160a01b0316336001600160a01b031614610be8575f80fd5b5f610bf260025490565b305f908152602081905260408120549192506064849003610c14575080610c37565b6064610c208585612030565b610c2a9190612047565b905081811115610c375750805b81811115610cac5760405162461bcd60e51b8152602060048201526024808201527f5377617020616d6f756e74206578636565647320636f6e74726163742062616c60448201527f616e6365000000000000000000000000000000000000000000000000000000006064820152608401610839565b6108cf8161180e565b610cbd6116f8565b5f5b815181101561074657600160095f848481518110610cdf57610cdf611fc3565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610cbf565b610d206116f8565b6001600160a01b038116610d9c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610839565b610a4b81611752565b610dad6116f8565b600e805460ff19166001179055565b6001600160a01b038316610e375760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610839565b6001600160a01b038216610eb35760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610839565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146108cf5781811015610faf5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610839565b6108cf8484848403610dbc565b6001600160a01b0383166110385760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610839565b6001600160a01b0382166110b45760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610839565b805f036110cb576110c683835f6119e4565b505050565b6001600160a01b0383165f9081526013602052604081205460ff1615801561110b57506001600160a01b0383165f9081526013602052604090205460ff16155b905061111f6005546001600160a01b031690565b6001600160a01b0316846001600160a01b03161415801561114e57506005546001600160a01b03848116911614155b801561116257506001600160a01b03831615155b801561117957506001600160a01b03831661dead14155b801561118f5750600854600160a01b900460ff16155b156114f1576001600160a01b0384165f9081526009602052604090205460ff161580156111d457506001600160a01b0383165f9081526009602052604090205460ff16155b6111dc575f80fd5b600e5460ff1661126f576001600160a01b0384165f9081526011602052604090205460ff168061122357506001600160a01b0383165f9081526011602052604090205460ff165b61126f5760405162461bcd60e51b815260206004820152601660248201527f54726164696e67206973206e6f74206163746976652e000000000000000000006044820152606401610839565b6001600160a01b0384165f9081526013602052604090205460ff1680156112ae57506001600160a01b0383165f9081526012602052604090205460ff16155b156113a357600b5482111561132b5760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527f6d61785472616e73616374696f6e416d6f756e742e00000000000000000000006064820152608401610839565b600c546001600160a01b0384165f90815260208190526040902054611350908461201d565b111561139e5760405162461bcd60e51b815260206004820152601360248201527f4d61782077616c6c6574206578636565646564000000000000000000000000006044820152606401610839565b6114f1565b6001600160a01b0383165f9081526013602052604090205460ff1680156113e257506001600160a01b0384165f9081526012602052604090205460ff16155b1561145f57600b5482111561139e5760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560448201527f206d61785472616e73616374696f6e416d6f756e742e000000000000000000006064820152608401610839565b6001600160a01b0383165f9081526012602052604090205460ff166114f157600c546001600160a01b0384165f908152602081905260409020546114a3908461201d565b11156114f15760405162461bcd60e51b815260206004820152601360248201527f4d61782077616c6c6574206578636565646564000000000000000000000000006044820152606401610839565b305f9081526020819052604081205490811580159061150e575082155b90508080156115275750600854600160a01b900460ff16155b801561154b57506001600160a01b0386165f9081526013602052604090205460ff16155b801561156f57506001600160a01b0386165f9081526011602052604090205460ff16155b801561159357506001600160a01b0385165f9081526011602052604090205460ff16155b156115f857600880547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16600160a01b1790556115cf84611bcf565b600880547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1690555b6008545f90600160a01b900460ff16158015611612575083155b6001600160a01b0388165f9081526011602052604090205490915060ff168061165257506001600160a01b0386165f9081526011602052604090205460ff165b1561165a57505f5b5f81156116e3576001600160a01b0387165f9081526013602052604090205460ff16156116a8576116a1606461169b60105489611d1790919063ffffffff16565b90611d29565b90506116c5565b6116c2606461169b600f5489611d1790919063ffffffff16565b90505b80156116d6576116d68830836119e4565b6116e08187612066565b95505b6116ee8888886119e4565b5050505050505050565b6005546001600160a01b031633146109955760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610839565b600580546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0382165f81815260136020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6040805160028082526060820183525f9260208301908036833701905050905030815f8151811061184157611841611fc3565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118e19190612079565b816001815181106118f4576118f4611fc3565b60200260200101906001600160a01b031690816001600160a01b03168152505061193f307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84610dbc565b6008546040517f791ac9470000000000000000000000000000000000000000000000000000000081526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81169263791ac947926119b39287925f92889291909116904290600401612094565b5f604051808303815f87803b1580156119ca575f80fd5b505af11580156119dc573d5f803e3d5ffd5b505050505050565b6001600160a01b038316611a605760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610839565b6001600160a01b038216611adc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610839565b6001600160a01b0383165f9081526020819052604090205481811015611b6a5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152608401610839565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36108cf565b305f9081526020819052604081205490818103611beb57505050565b601054600f54611bfb919061201d565b5f03611c64575f82118015611c115750600d5482105b15611c1d575080611d0e565b5f611c38606461169b60105487611d1790919063ffffffff16565b9050611c448185612066565b9350600d54841115611c5a57600d549150611c5e565b8391505b50611d0e565b5f82118015611c7f5750600d54611c7c906005611d29565b82105b15611c8957505050565b5f82118015611ca45750600d54611ca1906005611d29565b82115b8015611cb15750600d5482105b15611ccb57600d54611cc4906005611d29565b9050611d0e565b5f611ce6606461169b60105487611d1790919063ffffffff16565b9050611cf28185612066565b9350600d54841115611d0857600d549150611d0c565b8391505b505b6110c68161180e565b5f611d228284612030565b9392505050565b5f611d228284612047565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610a4b575f80fd5b8035611d8881611d69565b919050565b5f8060408385031215611d9e575f80fd5b8235611da981611d69565b946020939093013593505050565b5f805f60608486031215611dc9575f80fd5b8335611dd481611d69565b92506020840135611de481611d69565b929592945050506040919091013590565b634e487b7160e01b5f52604160045260245ffd5b5f6020808385031215611e1a575f80fd5b823567ffffffffffffffff80821115611e31575f80fd5b818501915085601f830112611e44575f80fd5b813581811115611e5657611e56611df5565b8060051b604051601f19603f83011681018181108582111715611e7b57611e7b611df5565b604052918252848201925083810185019188831115611e98575f80fd5b938501935b82851015611ebd57611eae85611d7d565b84529385019392850192611e9d565b98975050505050505050565b5f60208284031215611ed9575f80fd5b8135611d2281611d69565b5f8060408385031215611ef5575f80fd5b50508035926020909101359150565b8015158114610a4b575f80fd5b5f8060408385031215611f22575f80fd5b8235611f2d81611d69565b91506020830135611f3d81611f04565b809150509250929050565b5f60208284031215611f58575f80fd5b5035919050565b5f8060408385031215611f70575f80fd5b8235611f7b81611d69565b91506020830135611f3d81611d69565b600181811c90821680611f9f57607f821691505b602082108103611fbd57634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611fe7575f80fd5b5051919050565b5f60208284031215611ffe575f80fd5b8151611d2281611f04565b634e487b7160e01b5f52601160045260245ffd5b808201808211156106bb576106bb612009565b80820281158282048414176106bb576106bb612009565b5f8261206157634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156106bb576106bb612009565b5f60208284031215612089575f80fd5b8151611d2281611d69565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156120e45784516001600160a01b0316835293830193918301916001016120bf565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220655a293f05882e25f87ec9546fed8e5949c712c2c4ef12798f80e206ec39fc2c64736f6c63430008190033

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

00000000000000000000000024916921adfb227f991a984f12b760a169732bb2

-----Decoded View---------------
Arg [0] : wallet (address): 0x24916921AdFb227F991A984f12b760A169732bB2

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000024916921adfb227f991a984f12b760a169732bb2


Deployed Bytecode Sourcemap

14737:9989:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15473:31;;;;;;;;;;-1:-1:-1;15473:31:0;;;;;;;;;;;179:14:1;;172:22;154:41;;142:2;127:18;15473:31:0;;;;;;;;9761:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;10693:201::-;;;;;;;;;;-1:-1:-1;10693:201:0;;;;;:::i;:::-;;:::i;10082:108::-;;;;;;;;;;-1:-1:-1;10170:12:0;;10082:108;;;1452:25:1;;;1440:2;1425:18;10082:108:0;1306:177:1;10902:295:0;;;;;;;;;;-1:-1:-1;10902:295:0;;;;;:::i;:::-;;:::i;15224:58::-;;;;;;;;;;;;;;;;9981:93;;;;;;;;;;-1:-1:-1;9981:93:0;;10064:2;2091:36:1;;2079:2;2064:18;9981:93:0;1949:184:1;18339:171:0;;;;;;;;;;-1:-1:-1;18339:171:0;;;;;:::i;:::-;;:::i;:::-;;21934:347;;;;;;;;;;-1:-1:-1;21934:347:0;;;;;:::i;:::-;;:::i;11205:238::-;;;;;;;;;;-1:-1:-1;11205:238:0;;;;;:::i;:::-;;:::i;18030:126::-;;;;;;;;;;-1:-1:-1;18030:126:0;;;;;:::i;:::-;-1:-1:-1;;;;;18120:28:0;18096:4;18120:28;;;:19;:28;;;;;;;;;18030:126;22289:211;;;;;;;;;;-1:-1:-1;22289:211:0;;;;;:::i;:::-;;:::i;14820:52::-;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4206:55:1;;;4188:74;;4176:2;4161:18;14820:52:0;4017:251:1;10198:127:0;;;;;;;;;;-1:-1:-1;10198:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;10299:18:0;10272:7;10299:18;;;;;;;;;;;;10198:127;8837:103;;;;;;;;;;;;;:::i;21499:194::-;;;;;;;;;;;;;:::i;21701:225::-;;;;;;;;;;;;;:::i;8602:87::-;;;;;;;;;;-1:-1:-1;8675:6:0;;-1:-1:-1;;;;;8675:6:0;8602:87;;9869:104;;;;;;;;;;;;;:::i;17586:242::-;;;;;;;;;;-1:-1:-1;17586:242:0;;;;;:::i;:::-;;:::i;11451:436::-;;;;;;;;;;-1:-1:-1;11451:436:0;;;;;:::i;:::-;;:::i;10333:193::-;;;;;;;;;;-1:-1:-1;10333:193:0;;;;;:::i;:::-;;:::i;22508:127::-;;;;;;;;;;-1:-1:-1;22508:127:0;;;;;:::i;:::-;;:::i;22643:667::-;;;;;;;;;;-1:-1:-1;22643:667:0;;;;;:::i;:::-;;:::i;15289:58::-;;;;;;;;;;;;;;;;15546:27;;;;;;;;;;;;;;;;18164:167;;;;;;;;;;-1:-1:-1;18164:167:0;;;;;:::i;:::-;;:::i;10534:151::-;;;;;;;;;;-1:-1:-1;10534:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;10650:18:0;;;10623:7;10650:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10534:151;15513:26;;;;;;;;;;;;;;;;15408:56;;;;;;;;;;;;;;;;8948:201;;;;;;;;;;-1:-1:-1;8948:201:0;;;;;:::i;:::-;;:::i;15354:47::-;;;;;;;;;;;;;;;;17175:79;;;;;;;;;;;;;:::i;9761:100::-;9815:13;9848:5;9841:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9761:100;:::o;10693:201::-;10776:4;326:10;10832:32;326:10;10848:7;10857:6;10832:8;:32::i;:::-;10882:4;10875:11;;;10693:201;;;;;:::o;10902:295::-;11033:4;326:10;11091:38;11107:4;326:10;11122:6;11091:15;:38::i;:::-;11140:27;11150:4;11156:2;11160:6;11140:9;:27::i;:::-;-1:-1:-1;11185:4:0;;10902:295;-1:-1:-1;;;;10902:295:0:o;18339:171::-;8561:13;:11;:13::i;:::-;18414:9:::1;18409:94;18433:6;:13;18429:1;:17;18409:94;;;18486:5;18468:4;:15;18473:6;18480:1;18473:9;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;18468:15:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;18468:15:0;:23;;-1:-1:-1;;18468:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;18448:3:0::1;18409:94;;;;18339:171:::0;:::o;21934:347::-;22026:14;;-1:-1:-1;;;;;22026:14:0;326:10;-1:-1:-1;;;;;22010:30:0;;22002:39;;;;;;22124:38;;;;;22156:4;22124:38;;;4188:74:1;22082:12:0;;22052:20;;-1:-1:-1;;;;;22124:23:0;;;;;4161:18:1;;22124:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22106:56;;22191:1;22181:7;:11;22173:42;;;;-1:-1:-1;;;22173:42:0;;6614:2:1;22173:42:0;;;6596:21:1;6653:2;6633:18;;;6626:30;6692:20;6672:18;;;6665:48;6730:18;;22173:42:0;;;;;;;;;22249:14;;22226:47;;;;;-1:-1:-1;;;;;22249:14:0;;;22226:47;;;6933:74:1;7023:18;;;7016:34;;;22226:22:0;;;;;;6906:18:1;;22226:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;21991:290;;21934:347;:::o;11205:238::-;326:10;11293:4;10650:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;10650:27:0;;;;;;;;;;11293:4;;326:10;11349:64;;326:10;;10650:27;;11374:38;;11402:10;;11374:38;:::i;:::-;11349:8;:64::i;22289:211::-;8561:13;:11;:13::i;:::-;22389:2:::1;22378:7;:13;;:31;;;;;22407:2;22395:8;:14;;22378:31;22370:66;;;::::0;-1:-1:-1;;;22370:66:0;;7832:2:1;22370:66:0::1;::::0;::::1;7814:21:1::0;7871:2;7851:18;;;7844:30;7910:24;7890:18;;;7883:52;7952:18;;22370:66:0::1;7630:346:1::0;22370:66:0::1;22447:6;:16:::0;;;;22474:7:::1;:18:::0;22289:211::o;8837:103::-;8561:13;:11;:13::i;:::-;8902:30:::1;8929:1;8902:18;:30::i;:::-;8837:103::o:0;21499:194::-;8561:13;:11;:13::i;:::-;21553:25:::1;21581:13;10170:12:::0;;;10082:108;21581:13:::1;21605:20;:40:::0;;;21656:9:::1;:29:::0;-1:-1:-1;21499:194:0:o;21701:225::-;21770:14;;-1:-1:-1;;;;;21770:14:0;326:10;-1:-1:-1;;;;;21754:30:0;;21746:39;;;;;;21828:1;21804:21;:25;21796:60;;;;-1:-1:-1;;;21796:60:0;;8183:2:1;21796:60:0;;;8165:21:1;8222:2;8202:18;;;8195:30;8261:24;8241:18;;;8234:52;8303:18;;21796:60:0;7981:346:1;21796:60:0;21867:51;;21875:10;;21896:21;21867:51;;;;;;;;;21896:21;21875:10;21867:51;;;;;;;;;;;;;;;;;;;;;21701:225::o;9869:104::-;9925:13;9958:7;9951:14;;;;;:::i;17586:242::-;8561:13;:11;:13::i;:::-;17693::::1;::::0;-1:-1:-1;;;;;17693:13:0;;::::1;17685:21:::0;;::::1;::::0;17677:91:::1;;;::::0;-1:-1:-1;;;17677:91:0;;8534:2:1;17677:91:0::1;::::0;::::1;8516:21:1::0;8573:2;8553:18;;;8546:30;8612:34;8592:18;;;8585:62;8683:27;8663:18;;;8656:55;8728:19;;17677:91:0::1;8332:421:1::0;17677:91:0::1;17779:41;17808:4;17814:5;17779:28;:41::i;11451:436::-:0;326:10;11544:4;10650:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;10650:27:0;;;;;;;;;;11544:4;;326:10;11691:15;11671:16;:35;;11663:85;;;;-1:-1:-1;;;11663:85:0;;8960:2:1;11663:85:0;;;8942:21:1;8999:2;8979:18;;;8972:30;9038:34;9018:18;;;9011:62;9109:7;9089:18;;;9082:35;9134:19;;11663:85:0;8758:401:1;11663:85:0;11784:60;11793:5;11800:7;11828:15;11809:16;:34;11784:8;:60::i;10333:193::-;10412:4;326:10;10468:28;326:10;10485:2;10489:6;10468:9;:28::i;22508:127::-;8561:13;:11;:13::i;:::-;22607:20:::1;:7:::0;22618:8:::1;22607:20;:::i;:::-;22586:18;:41:::0;-1:-1:-1;22508:127:0:o;22643:667::-;22724:14;;-1:-1:-1;;;;;22724:14:0;326:10;-1:-1:-1;;;;;22708:30:0;;22700:39;;;;;;22750:25;22778:13;10170:12;;;10082:108;22778:13;22846:4;22802:23;10299:18;;;;;;;;;;;22750:41;;-1:-1:-1;22911:3:0;22900:14;;;22896:273;;-1:-1:-1;22946:15:0;22896:273;;;23039:3;23009:27;23029:7;23009:17;:27;:::i;:::-;:33;;;;:::i;:::-;22994:48;;23076:15;23061:12;:30;23057:101;;;-1:-1:-1;23127:15:0;23057:101;23205:15;23189:12;:31;;23181:80;;;;-1:-1:-1;;;23181:80:0;;9818:2:1;23181:80:0;;;9800:21:1;9857:2;9837:18;;;9830:30;9896:34;9876:18;;;9869:62;9967:6;9947:18;;;9940:34;9991:19;;23181:80:0;9616:400:1;23181:80:0;23272:30;23289:12;23272:16;:30::i;18164:167::-;8561:13;:11;:13::i;:::-;18238:9:::1;18233:91;18257:5;:12;18253:1;:16;18233:91;;;18308:4;18291;:14;18296:5;18302:1;18296:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;18291:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;18291:14:0;:21;;-1:-1:-1;;18291:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;18271:3:0::1;18233:91;;8948:201:::0;8561:13;:11;:13::i;:::-;-1:-1:-1;;;;;9037:22:0;::::1;9029:73;;;::::0;-1:-1:-1;;;9029:73:0;;10223:2:1;9029:73:0::1;::::0;::::1;10205:21:1::0;10262:2;10242:18;;;10235:30;10301:34;10281:18;;;10274:62;10372:8;10352:18;;;10345:36;10398:19;;9029:73:0::1;10021:402:1::0;9029:73:0::1;9113:28;9132:8;9113:18;:28::i;17175:79::-:0;8561:13;:11;:13::i;:::-;17228:11:::1;:18:::0;;-1:-1:-1;;17228:18:0::1;17242:4;17228:18;::::0;;17175:79::o;13624:380::-;-1:-1:-1;;;;;13760:19:0;;13752:68;;;;-1:-1:-1;;;13752:68:0;;10630:2:1;13752:68:0;;;10612:21:1;10669:2;10649:18;;;10642:30;10708:34;10688:18;;;10681:62;10779:6;10759:18;;;10752:34;10803:19;;13752:68:0;10428:400:1;13752:68:0;-1:-1:-1;;;;;13839:21:0;;13831:68;;;;-1:-1:-1;;;13831:68:0;;11035:2:1;13831:68:0;;;11017:21:1;11074:2;11054:18;;;11047:30;11113:34;11093:18;;;11086:62;11184:4;11164:18;;;11157:32;11206:19;;13831:68:0;10833:398:1;13831:68:0;-1:-1:-1;;;;;13912:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;13964:32;;1452:25:1;;;13964:32:0;;1425:18:1;13964:32:0;;;;;;;13624:380;;;:::o;14012:453::-;-1:-1:-1;;;;;10650:18:0;;;14147:24;10650:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;14234:17;14214:37;;14210:248;;14296:6;14276:16;:26;;14268:68;;;;-1:-1:-1;;;14268:68:0;;11438:2:1;14268:68:0;;;11420:21:1;11477:2;11457:18;;;11450:30;11516:31;11496:18;;;11489:59;11565:18;;14268:68:0;11236:353:1;14268:68:0;14380:51;14389:5;14396:7;14424:6;14405:16;:25;14380:8;:51::i;18518:2483::-;-1:-1:-1;;;;;18618:18:0;;18610:68;;;;-1:-1:-1;;;18610:68:0;;11796:2:1;18610:68:0;;;11778:21:1;11835:2;11815:18;;;11808:30;11874:34;11854:18;;;11847:62;11945:7;11925:18;;;11918:35;11970:19;;18610:68:0;11594:401:1;18610:68:0;-1:-1:-1;;;;;18697:16:0;;18689:64;;;;-1:-1:-1;;;18689:64:0;;12202:2:1;18689:64:0;;;12184:21:1;12241:2;12221:18;;;12214:30;12280:34;12260:18;;;12253:62;12351:5;12331:18;;;12324:33;12374:19;;18689:64:0;12000:399:1;18689:64:0;18770:6;18780:1;18770:11;18766:93;;18798:28;18814:4;18820:2;18824:1;18798:15;:28::i;:::-;18518:2483;;;:::o;18766:93::-;-1:-1:-1;;;;;18898:31:0;;18879:15;18898:31;;;:25;:31;;;;;;;;18897:32;:66;;;;-1:-1:-1;;;;;;18934:29:0;;;;;;:25;:29;;;;;;;;18933:30;18897:66;18879:84;;18988:7;8675:6;;-1:-1:-1;;;;;8675:6:0;;8602:87;18988:7;-1:-1:-1;;;;;18980:15:0;:4;-1:-1:-1;;;;;18980:15:0;;;:32;;;;-1:-1:-1;8675:6:0;;-1:-1:-1;;;;;18999:13:0;;;8675:6;;18999:13;;18980:32;:52;;;;-1:-1:-1;;;;;;19016:16:0;;;;18980:52;:77;;;;-1:-1:-1;;;;;;19036:21:0;;19050:6;19036:21;;18980:77;:90;;;;-1:-1:-1;19062:8:0;;-1:-1:-1;;;19062:8:0;;;;19061:9;18980:90;18976:1050;;;-1:-1:-1;;;;;19098:10:0;;;;;;:4;:10;;;;;;;;19097:11;:24;;;;-1:-1:-1;;;;;;19113:8:0;;;;;;:4;:8;;;;;;;;19112:9;19097:24;19089:33;;;;;;19144:11;;;;19139:140;;-1:-1:-1;;;;;19184:25:0;;;;;;:19;:25;;;;;;;;;:52;;-1:-1:-1;;;;;;19213:23:0;;;;;;:19;:23;;;;;;;;19184:52;19176:87;;;;-1:-1:-1;;;19176:87:0;;12606:2:1;19176:87:0;;;12588:21:1;12645:2;12625:18;;;12618:30;12684:24;12664:18;;;12657:52;12726:18;;19176:87:0;12404:346:1;19176:87:0;-1:-1:-1;;;;;19299:31:0;;;;;;:25;:31;;;;;;;;:71;;;;-1:-1:-1;;;;;;19335:35:0;;;;;;:31;:35;;;;;;;;19334:36;19299:71;19295:706;;;19409:20;;19399:6;:30;;19391:96;;;;-1:-1:-1;;;19391:96:0;;12957:2:1;19391:96:0;;;12939:21:1;12996:2;12976:18;;;12969:30;13035:34;13015:18;;;13008:62;13106:23;13086:18;;;13079:51;13147:19;;19391:96:0;12755:417:1;19391:96:0;19540:9;;-1:-1:-1;;;;;10299:18:0;;10272:7;10299:18;;;;;;;;;;;19514:22;;:6;:22;:::i;:::-;:35;;19506:67;;;;-1:-1:-1;;;19506:67:0;;13379:2:1;19506:67:0;;;13361:21:1;13418:2;13398:18;;;13391:30;13457:21;13437:18;;;13430:49;13496:18;;19506:67:0;13177:343:1;19506:67:0;19295:706;;;-1:-1:-1;;;;;19614:29:0;;;;;;:25;:29;;;;;;;;:71;;;;-1:-1:-1;;;;;;19648:37:0;;;;;;:31;:37;;;;;;;;19647:38;19614:71;19610:391;;;19724:20;;19714:6;:30;;19706:97;;;;-1:-1:-1;;;19706:97:0;;13727:2:1;19706:97:0;;;13709:21:1;13766:2;13746:18;;;13739:30;13805:34;13785:18;;;13778:62;13876:24;13856:18;;;13849:52;13918:19;;19706:97:0;13525:418:1;19610:391:0;-1:-1:-1;;;;;19862:35:0;;;;;;:31;:35;;;;;;;;19857:144;;19952:9;;-1:-1:-1;;;;;10299:18:0;;10272:7;10299:18;;;;;;;;;;;19926:22;;:6;:22;:::i;:::-;:35;;19918:67;;;;-1:-1:-1;;;19918:67:0;;13379:2:1;19918:67:0;;;13361:21:1;13418:2;13398:18;;;13391:30;13457:21;13437:18;;;13430:49;13496:18;;19918:67:0;13177:343:1;19918:67:0;20087:4;20038:28;10299:18;;;;;;;;;;;;20121:24;;;;;:39;;;20150:10;20149:11;20121:39;20106:54;;20177:7;:20;;;;-1:-1:-1;20189:8:0;;-1:-1:-1;;;20189:8:0;;;;20188:9;20177:20;:56;;;;-1:-1:-1;;;;;;20202:31:0;;;;;;:25;:31;;;;;;;;20201:32;20177:56;:86;;;;-1:-1:-1;;;;;;20238:25:0;;;;;;:19;:25;;;;;;;;20237:26;20177:86;:114;;;;-1:-1:-1;;;;;;20268:23:0;;;;;;:19;:23;;;;;;;;20267:24;20177:114;20173:224;;;20308:8;:15;;;;-1:-1:-1;;;20308:15:0;;;20338:16;20347:6;20338:8;:16::i;:::-;20369:8;:16;;;;;;20173:224;20425:8;;20409:12;;-1:-1:-1;;;20425:8:0;;;;20424:9;:24;;;;;20438:10;20437:11;20424:24;-1:-1:-1;;;;;20465:25:0;;;;;;:19;:25;;;;;;20409:39;;-1:-1:-1;20465:25:0;;;:52;;-1:-1:-1;;;;;;20494:23:0;;;;;;:19;:23;;;;;;;;20465:52;20461:100;;;-1:-1:-1;20544:5:0;20461:100;20573:12;20606:7;20602:348;;;-1:-1:-1;;;;;20634:29:0;;;;;;:25;:29;;;;;;;;20630:193;;;20691:28;20715:3;20691:19;20702:7;;20691:6;:10;;:19;;;;:::i;:::-;:23;;:28::i;:::-;20684:35;;20630:193;;;20780:27;20803:3;20780:18;20791:6;;20780;:10;;:18;;;;:::i;:27::-;20773:34;;20630:193;20839:8;;20835:83;;20864:42;20880:4;20894;20901;20864:15;:42::i;:::-;20928:14;20938:4;20928:14;;:::i;:::-;;;20602:348;20960:33;20976:4;20982:2;20986:6;20960:15;:33::i;:::-;18597:2404;;;;;18518:2483;;;:::o;8697:132::-;8675:6;;-1:-1:-1;;;;;8675:6:0;326:10;8761:23;8753:68;;;;-1:-1:-1;;;8753:68:0;;14283:2:1;8753:68:0;;;14265:21:1;;;14302:18;;;14295:30;14361:34;14341:18;;;14334:62;14413:18;;8753:68:0;14081:356:1;9157:191:0;9250:6;;;-1:-1:-1;;;;;9267:17:0;;;;;;;;;;;9300:40;;9250:6;;;9267:17;9250:6;;9300:40;;9231:16;;9300:40;9220:128;9157:191;:::o;17836:186::-;-1:-1:-1;;;;;17919:31:0;;;;;;:25;:31;;;;;;:39;;-1:-1:-1;;17919:39:0;;;;;;;;;;17974:40;;17919:39;;:31;17974:40;;;17836:186;;:::o;21009:482::-;21101:16;;;21115:1;21101:16;;;;;;;;21077:21;;21101:16;;;;;;;;;;-1:-1:-1;21101:16:0;21077:40;;21146:4;21128;21133:1;21128:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;21128:23:0;;;-1:-1:-1;;;;;21128:23:0;;;;;21172:16;-1:-1:-1;;;;;21172:21:0;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21162:4;21167:1;21162:7;;;;;;;;:::i;:::-;;;;;;:33;-1:-1:-1;;;;;21162:33:0;;;-1:-1:-1;;;;;21162:33:0;;;;;21208:63;21225:4;21240:16;21259:11;21208:8;:63::i;:::-;21427:15;;21284:199;;;;;-1:-1:-1;;;;;21284:16:0;:67;;;;;:199;;21366:11;;21392:1;;21408:4;;21427:15;;;;;21457;;21284:199;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21064:427;21009:482;:::o;11895:675::-;-1:-1:-1;;;;;12026:18:0;;12018:68;;;;-1:-1:-1;;;12018:68:0;;11796:2:1;12018:68:0;;;11778:21:1;11835:2;11815:18;;;11808:30;11874:34;11854:18;;;11847:62;11945:7;11925:18;;;11918:35;11970:19;;12018:68:0;11594:401:1;12018:68:0;-1:-1:-1;;;;;12105:16:0;;12097:64;;;;-1:-1:-1;;;12097:64:0;;12202:2:1;12097:64:0;;;12184:21:1;12241:2;12221:18;;;12214:30;12280:34;12260:18;;;12253:62;12351:5;12331:18;;;12324:33;12374:19;;12097:64:0;12000:399:1;12097:64:0;-1:-1:-1;;;;;12247:15:0;;12225:19;12247:15;;;;;;;;;;;12281:21;;;;12273:72;;;;-1:-1:-1;;;12273:72:0;;15931:2:1;12273:72:0;;;15913:21:1;15970:2;15950:18;;;15943:30;16009:34;15989:18;;;15982:62;16080:8;16060:18;;;16053:36;16106:19;;12273:72:0;15729:402:1;12273:72:0;-1:-1:-1;;;;;12381:15:0;;;:9;:15;;;;;;;;;;;12399:20;;;12381:38;;12434:13;;;;;;;;;;:23;;;;;;12486:26;;1452:25:1;;;12434:13:0;;12486:26;;1425:18:1;12486:26:0;;;;;;;12525:37;18518:2483;23318:1397;23415:4;23371:23;10299:18;;;;;;;;;;;;23470:20;;;23466:59;;23507:7;;23318:1397;:::o;23466:59::-;23549:7;;23542:6;;:14;;;;:::i;:::-;23561:1;23541:21;23537:1130;;23598:1;23580:15;:19;:59;;;;;23621:18;;23603:15;:36;23580:59;23577:443;;;-1:-1:-1;23671:15:0;23537:1130;;23577:443;23728:21;23752:28;23776:3;23752:19;23763:7;;23752:6;:10;;:19;;;;:::i;:28::-;23728:52;-1:-1:-1;23795:23:0;23728:52;23795:23;;:::i;:::-;;;23846:18;;23837:6;:27;23833:176;;;23900:18;;23885:33;;23833:176;;;23987:6;23972:21;;23833:176;23713:307;23537:1130;;;24074:1;24056:15;:19;:66;;;;-1:-1:-1;24097:18:0;;:25;;24120:1;24097:22;:25::i;:::-;24079:15;:43;24056:66;24053:607;;;24139:7;;23318:1397;:::o;24053:607::-;24194:1;24176:15;:19;:66;;;;-1:-1:-1;24217:18:0;;:25;;24240:1;24217:22;:25::i;:::-;24199:15;:43;24176:66;:106;;;;;24264:18;;24246:15;:36;24176:106;24172:488;;;24314:18;;:25;;24337:1;24314:22;:25::i;:::-;24299:40;;24172:488;;;24381:21;24405:28;24429:3;24405:19;24416:7;;24405:6;:10;;:19;;;;:::i;:28::-;24381:52;-1:-1:-1;24448:23:0;24381:52;24448:23;;:::i;:::-;;;24499:18;;24490:6;:27;24486:163;;;24553:18;;24538:33;;24486:163;;;24627:6;24612:21;;24486:163;24366:294;24172:488;24677:30;24694:12;24677:16;:30::i;6398:98::-;6456:7;6483:5;6487:1;6483;:5;:::i;:::-;6476:12;6398:98;-1:-1:-1;;;6398:98:0:o;6504:::-;6562:7;6589:5;6593:1;6589;:5;:::i;206:477:1:-;355:2;344:9;337:21;318:4;387:6;381:13;430:6;425:2;414:9;410:18;403:34;489:6;484:2;476:6;472:15;467:2;456:9;452:18;446:50;545:1;540:2;531:6;520:9;516:22;512:31;505:42;674:2;-1:-1:-1;;599:2:1;591:6;587:15;583:88;572:9;568:104;564:113;556:121;;;206:477;;;;:::o;688:154::-;-1:-1:-1;;;;;767:5:1;763:54;756:5;753:65;743:93;;832:1;829;822:12;847:134;915:20;;944:31;915:20;944:31;:::i;:::-;847:134;;;:::o;986:315::-;1054:6;1062;1115:2;1103:9;1094:7;1090:23;1086:32;1083:52;;;1131:1;1128;1121:12;1083:52;1170:9;1157:23;1189:31;1214:5;1189:31;:::i;:::-;1239:5;1291:2;1276:18;;;;1263:32;;-1:-1:-1;;;986:315:1:o;1488:456::-;1565:6;1573;1581;1634:2;1622:9;1613:7;1609:23;1605:32;1602:52;;;1650:1;1647;1640:12;1602:52;1689:9;1676:23;1708:31;1733:5;1708:31;:::i;:::-;1758:5;-1:-1:-1;1815:2:1;1800:18;;1787:32;1828:33;1787:32;1828:33;:::i;:::-;1488:456;;1880:7;;-1:-1:-1;;;1934:2:1;1919:18;;;;1906:32;;1488:456::o;2138:184::-;-1:-1:-1;;;2187:1:1;2180:88;2287:4;2284:1;2277:15;2311:4;2308:1;2301:15;2327:1180;2411:6;2442:2;2485;2473:9;2464:7;2460:23;2456:32;2453:52;;;2501:1;2498;2491:12;2453:52;2541:9;2528:23;2570:18;2611:2;2603:6;2600:14;2597:34;;;2627:1;2624;2617:12;2597:34;2665:6;2654:9;2650:22;2640:32;;2710:7;2703:4;2699:2;2695:13;2691:27;2681:55;;2732:1;2729;2722:12;2681:55;2768:2;2755:16;2790:2;2786;2783:10;2780:36;;;2796:18;;:::i;:::-;2842:2;2839:1;2835:10;2874:2;2868:9;-1:-1:-1;;2928:2:1;2924;2920:11;2916:84;2908:6;2904:97;3051:6;3039:10;3036:22;3031:2;3019:10;3016:18;3013:46;3010:72;;;3062:18;;:::i;:::-;3098:2;3091:22;3148:18;;;3182:15;;;;-1:-1:-1;3224:11:1;;;3220:20;;;3252:19;;;3249:39;;;3284:1;3281;3274:12;3249:39;3308:11;;;;3328:148;3344:6;3339:3;3336:15;3328:148;;;3410:23;3429:3;3410:23;:::i;:::-;3398:36;;3361:12;;;;3454;;;;3328:148;;;3495:6;2327:1180;-1:-1:-1;;;;;;;;2327:1180:1:o;3512:247::-;3571:6;3624:2;3612:9;3603:7;3599:23;3595:32;3592:52;;;3640:1;3637;3630:12;3592:52;3679:9;3666:23;3698:31;3723:5;3698:31;:::i;3764:248::-;3832:6;3840;3893:2;3881:9;3872:7;3868:23;3864:32;3861:52;;;3909:1;3906;3899:12;3861:52;-1:-1:-1;;3932:23:1;;;4002:2;3987:18;;;3974:32;;-1:-1:-1;3764:248:1:o;4504:118::-;4590:5;4583:13;4576:21;4569:5;4566:32;4556:60;;4612:1;4609;4602:12;4627:382;4692:6;4700;4753:2;4741:9;4732:7;4728:23;4724:32;4721:52;;;4769:1;4766;4759:12;4721:52;4808:9;4795:23;4827:31;4852:5;4827:31;:::i;:::-;4877:5;-1:-1:-1;4934:2:1;4919:18;;4906:32;4947:30;4906:32;4947:30;:::i;:::-;4996:7;4986:17;;;4627:382;;;;;:::o;5014:180::-;5073:6;5126:2;5114:9;5105:7;5101:23;5097:32;5094:52;;;5142:1;5139;5132:12;5094:52;-1:-1:-1;5165:23:1;;5014:180;-1:-1:-1;5014:180:1:o;5199:388::-;5267:6;5275;5328:2;5316:9;5307:7;5303:23;5299:32;5296:52;;;5344:1;5341;5334:12;5296:52;5383:9;5370:23;5402:31;5427:5;5402:31;:::i;:::-;5452:5;-1:-1:-1;5509:2:1;5494:18;;5481:32;5522:33;5481:32;5522:33;:::i;5592:437::-;5671:1;5667:12;;;;5714;;;5735:61;;5789:4;5781:6;5777:17;5767:27;;5735:61;5842:2;5834:6;5831:14;5811:18;5808:38;5805:218;;-1:-1:-1;;;5876:1:1;5869:88;5980:4;5977:1;5970:15;6008:4;6005:1;5998:15;5805:218;;5592:437;;;:::o;6034:184::-;-1:-1:-1;;;6083:1:1;6076:88;6183:4;6180:1;6173:15;6207:4;6204:1;6197:15;6223:184;6293:6;6346:2;6334:9;6325:7;6321:23;6317:32;6314:52;;;6362:1;6359;6352:12;6314:52;-1:-1:-1;6385:16:1;;6223:184;-1:-1:-1;6223:184:1:o;7061:245::-;7128:6;7181:2;7169:9;7160:7;7156:23;7152:32;7149:52;;;7197:1;7194;7187:12;7149:52;7229:9;7223:16;7248:28;7270:5;7248:28;:::i;7311:184::-;-1:-1:-1;;;7360:1:1;7353:88;7460:4;7457:1;7450:15;7484:4;7481:1;7474:15;7500:125;7565:9;;;7586:10;;;7583:36;;;7599:18;;:::i;9164:168::-;9237:9;;;9268;;9285:15;;;9279:22;;9265:37;9255:71;;9306:18;;:::i;9337:274::-;9377:1;9403;9393:189;;-1:-1:-1;;;9435:1:1;9428:88;9539:4;9536:1;9529:15;9567:4;9564:1;9557:15;9393:189;-1:-1:-1;9596:9:1;;9337:274::o;13948:128::-;14015:9;;;14036:11;;;14033:37;;;14050:18;;:::i;14442:251::-;14512:6;14565:2;14553:9;14544:7;14540:23;14536:32;14533:52;;;14581:1;14578;14571:12;14533:52;14613:9;14607:16;14632:31;14657:5;14632:31;:::i;14698:1026::-;14960:4;15008:3;14997:9;14993:19;15039:6;15028:9;15021:25;15065:2;15103:6;15098:2;15087:9;15083:18;15076:34;15146:3;15141:2;15130:9;15126:18;15119:31;15170:6;15205;15199:13;15236:6;15228;15221:22;15274:3;15263:9;15259:19;15252:26;;15313:2;15305:6;15301:15;15287:29;;15334:1;15344:218;15358:6;15355:1;15352:13;15344:218;;;15423:13;;-1:-1:-1;;;;;15419:62:1;15407:75;;15537:15;;;;15502:12;;;;15380:1;15373:9;15344:218;;;-1:-1:-1;;;;;;;15618:55:1;;;;15613:2;15598:18;;15591:83;-1:-1:-1;;;15705:3:1;15690:19;15683:35;15579:3;14698:1026;-1:-1:-1;;;14698:1026:1:o

Swarm Source

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