ETH Price: $3,411.83 (-1.65%)
Gas: 9 Gwei

Token

CHUBCAT (CHUB)
 

Overview

Max Total Supply

10,000,000 CHUB

Holders

244

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
338.538560844081430002 CHUB

Value
$0.00
0xf0c27c71700c47ad460577560acf41d95b396fca
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:
CHUBCAT

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-06-19
*/

/*

Website: https://chubcat.asia/

Telegram: https://t.me/chubcatofficial

X: https://x.com/Chubcatofficial

*/

 


// SPDX-License-Identifier: MIT

pragma solidity ^0.8.22;

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

    function _msgData() internal view virtual returns (bytes calldata) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

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

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

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

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

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, 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);
    }
}

contract Ownable is Context {
    address private _owner;

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

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

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

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

    function renounceOwnership() external virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

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

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

    function WETH() external pure returns (address);

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

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

}

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

contract CHUBCAT is ERC20, Ownable {
    UniswapV2Router public immutable uniswapV2Router;
    address public immutable uniswapV2Pair;

    uint256 public maxWallet;
    uint256 public maxTxnAmount;

    bool private swapping;
    uint256 public swapTokensAtAmount;
    uint256 public swapLimit;

    address devWallet;
    address private marketingWallet;

    bool public limitsInEffect = true;
    bool public tradingLive = false;
    bool public swapEnabled = false;

    mapping(address => uint256) private _holderLastTransferTimestamp;
    bool public transferDelayEnabled = true;

    uint256 public buyFee;
    uint256 public sellFee;

    uint256 public taxedTokens;

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

    event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value);

    event EnabledTrading();

    event RemovedLimits();

    event ExcludeFromFees(address indexed account, bool isExcluded);

    event UpdatedTxnAmount(uint256 newAmount);

    event UpdatedMaxWalletAmount(uint256 newAmount);

    event MaxTransactionExclusion(address _address, bool excluded);

    event OwnerManualCollection(uint256 timestamp);


    constructor(
        string memory _tokenName,
        string memory _tokenSymbol,
        uint256 _totalSupply,
        uint _maxTx,
        uint _maxWallet,
        uint _buyTax,
        uint _sellTax,
        address _teamWallet,
        address _marketingWallet
    ) ERC20(_tokenName, _tokenSymbol) {
        UniswapV2Router _uniswapV2Router = UniswapV2Router(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);

        excludeFromMaxTransaction(address(_uniswapV2Router), true);
        uniswapV2Router = _uniswapV2Router;

        uniswapV2Pair = UniswapV2Factory(_uniswapV2Router.factory()).createPair(
            address(this),
            _uniswapV2Router.WETH()
        );
        excludeFromMaxTransaction(address(uniswapV2Pair), true);
        _setAutomatedMarketMakerPair(address(uniswapV2Pair), true);

        buyFee = _buyTax;
        sellFee = _sellTax;

        uint256 totalSupply = _totalSupply * 10 ** 18;

        maxWallet = (totalSupply * _maxWallet) / 100;
        maxTxnAmount = (totalSupply * _maxTx) / 100;
        swapTokensAtAmount = (totalSupply * 5) / 1000;
        swapLimit = 6;

        marketingWallet = payable(_marketingWallet);
        devWallet = _teamWallet;

        excludeFromFees(owner(), true);
        excludeFromFees(devWallet, true);
        excludeFromFees(marketingWallet, true);
        excludeFromFees(address(this), true);
        excludeFromFees(address(0xdead), true);

        excludeFromMaxTransaction(owner(), true);
        excludeFromMaxTransaction(devWallet, true);
        excludeFromMaxTransaction(marketingWallet, true);
        excludeFromMaxTransaction(address(this), true);
        excludeFromMaxTransaction(address(0xdead), true);

        _generateSupply(devWallet, totalSupply);
        transferOwnership(devWallet);
    }

    receive() external payable {}

    // ENABLE TRADING
    function enableTrading() external onlyOwner {
        require(!tradingLive, "Trading already live!");
        tradingLive = true;
        swapEnabled = true;
        emit EnabledTrading();
    }

    // REMOVE TXN LIMITS
    function removeLimits() external onlyOwner {
        limitsInEffect = false;
        transferDelayEnabled = false;
        swapTokensAtAmount = (totalSupply() * 2) / 100;
        swapLimit = 20;
        emit RemovedLimits();
    }

    function updateTxnAmount(uint256 newNum) external onlyOwner {
        require(
            newNum >= ((totalSupply() * 2) / 1000) / 1e18,
            "Cannot set max txn amount lower than 0.2%"
        );
        maxTxnAmount = newNum * (10 ** 18);
        emit UpdatedTxnAmount(maxTxnAmount);
    }

    function updateMaxWalletAmount(uint256 newNum) external onlyOwner {
        require(
            newNum >= ((totalSupply() * 3) / 1000) / 1e18,
            "Cannot set max wallet amount lower than 0.3%"
        );
        maxWallet = newNum * (10 ** 18);
        emit UpdatedMaxWalletAmount(maxWallet);
    }

    function updateSwapTokensAtAmount(uint256 newAmount) external onlyOwner {
        require(
            newAmount >= (totalSupply() * 1) / 100000,
            "Swap amount cannot be lower than 0.001% total supply."
        );
        require(
            newAmount <= (totalSupply() * 5) / 1000,
            "Swap amount cannot be higher than 0.5% total supply."
        );
        swapTokensAtAmount = newAmount;
    }

    function updateFees(uint256 _buyFee, uint256 _sellFee) external onlyOwner {
        buyFee = _buyFee;
        sellFee = _sellFee;
        require((buyFee / 100) <= 20, "Must keep fees at 20% or less");
        require((sellFee / 100) <= 30, "Must keep fees at 30% or less");
    }

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

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

        _setAutomatedMarketMakerPair(pair, value);
        emit SetAutomatedMarketMakerPair(pair, value);
    }

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

        excludeFromMaxTransaction(pair, value);

        emit SetAutomatedMarketMakerPair(pair, value);
    }

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

    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");
        require(amount > 0, "amount must be greater than 0");

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


        if (limitsInEffect) {
            if (
                from != owner() &&
                to != owner() &&
                to != address(0) &&
                to != address(0xdead) &&
                !_isExcludedFromFees[from] &&
                !_isExcludedFromFees[to]
            ) {
                // LAUNCH TRANSFER DELAY
                if (transferDelayEnabled) {
                    if (
                        to != address(uniswapV2Router) &&
                        to != address(uniswapV2Pair)
                    ) {
                        require(
                            _holderLastTransferTimestamp[tx.origin] <
                                block.number,
                            "Only one transfer per block allowed."
                        );
                        _holderLastTransferTimestamp[tx.origin] = block.number;
                    }
                }

                // BUY TXN
                if (
                    automatedMarketMakerPairs[from] &&
                    !_isExcludedMaxTransactionAmount[to]
                ) {
                    require(
                        amount <= maxTxnAmount,
                        "Buy transfer amount exceeds the max txn."
                    );
                    require(
                        amount + balanceOf(to) <= maxWallet,
                        "Cannot Exceed max wallet"
                    );
                }
                // SELL TXN
                else if (
                    automatedMarketMakerPairs[to] &&
                    !_isExcludedMaxTransactionAmount[from]
                ) {
                    require(
                        amount <= maxTxnAmount,
                        "Sell transfer amount exceeds the max txn."
                    );
                } else if (!_isExcludedMaxTransactionAmount[to]) {
                    require(
                        amount + balanceOf(to) <= maxWallet,
                        "Cannot Exceed max wallet"
                    );
                }
            }
        }

        uint256 contractTokenBalance = balanceOf(address(this));

        bool canSwap = contractTokenBalance >= swapTokensAtAmount;

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

            collectFees();

            swapping = false;
        }

        bool takeFee = true;

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

        uint256 fees = 0;

        if (takeFee) {
            // SELL TXN
            if (automatedMarketMakerPairs[to] && sellFee > 0) {
                fees = (amount * sellFee) / 100;
                taxedTokens += fees;
            }
            // BUY TXN
            else if (automatedMarketMakerPairs[from] && buyFee > 0) {
                fees = (amount * buyFee) / 100;
                taxedTokens += fees;
            }

            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,
            address(this),
            block.timestamp
        );
    }


    function collectFees() private {
        uint256 contractBalance = balanceOf(address(this));
        uint256 totalTokensToSwap = taxedTokens;

        if (contractBalance == 0 || totalTokensToSwap == 0) {
            return;
        }

        if (limitsInEffect) {
            if (contractBalance > swapTokensAtAmount * swapLimit) {
                contractBalance = swapTokensAtAmount * swapLimit;
            }
        } else {
            if (contractBalance > swapTokensAtAmount / swapLimit) {
                contractBalance = swapTokensAtAmount / swapLimit;
            }
        }

        bool success;

        swapTokensForEth(contractBalance);

        taxedTokens = 0;

        if (address(this).balance > 0) {
            (success, ) = address(marketingWallet).call{value: address(this).balance}(
                ""
            );
        }
    }
    //Remove any clog from contract
    function manualSwap() external  {
        require(msg.sender == devWallet,"Not Auth");
        require(balanceOf(address(this)) >= 0, "No tokens to swap");
        swapping = true;
        collectFees();
        swapping = false;
        emit OwnerManualCollection(block.timestamp);
    }

    //Remove Tokens from contract
        function manualTokenCollection() external  {
        require(msg.sender == devWallet,"Not Auth");
        require(taxedTokens == 0, "Cant Remove Tokens That Are Allocated for swapping");
        uint256 tokenBalance = balanceOf(address(this));
        require(tokenBalance > 0, "No tokens in contract");
        super._transfer(address(this), devWallet, tokenBalance);
    }


     //Remove any sent eth to contract
    function withdrawETH() external {
        require(msg.sender == devWallet,"Not Auth");
        bool success;
        (success, ) = address(msg.sender).call{value: address(this).balance}(
            ""
        );
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"_tokenName","type":"string"},{"internalType":"string","name":"_tokenSymbol","type":"string"},{"internalType":"uint256","name":"_totalSupply","type":"uint256"},{"internalType":"uint256","name":"_maxTx","type":"uint256"},{"internalType":"uint256","name":"_maxWallet","type":"uint256"},{"internalType":"uint256","name":"_buyTax","type":"uint256"},{"internalType":"uint256","name":"_sellTax","type":"uint256"},{"internalType":"address","name":"_teamWallet","type":"address"},{"internalType":"address","name":"_marketingWallet","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":[],"name":"EnabledTrading","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":false,"internalType":"address","name":"_address","type":"address"},{"indexed":false,"internalType":"bool","name":"excluded","type":"bool"}],"name":"MaxTransactionExclusion","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"OwnerManualCollection","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":[],"name":"RemovedLimits","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"UpdatedMaxWalletAmount","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"UpdatedTxnAmount","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludedMaxTransactionAmount","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":"buyFee","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":"enableTrading","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":"excludeFromMaxTransaction","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":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualTokenCollection","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTxnAmount","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":"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":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"taxedTokens","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingLive","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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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 UniswapV2Router","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"updateFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newNum","type":"uint256"}],"name":"updateMaxWalletAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"updateSwapTokensAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newNum","type":"uint256"}],"name":"updateTxnAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c06040526001600c60146101000a81548160ff0219169083151502179055505f600c60156101000a81548160ff0219169083151502179055505f600c60166101000a81548160ff0219169083151502179055506001600e5f6101000a81548160ff02191690831515021790555034801562000079575f80fd5b506040516200615d3803806200615d83398181016040528101906200009f919062000ed9565b88888160039081620000b291906200121e565b508060049081620000c491906200121e565b5050505f620000d86200068060201b60201c565b90508060055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3505f737a250d5630b4cf539739df2c5dacb4c659f2488d9050620001a08160016200068760201b60201c565b8073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200021e573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000244919062001302565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002aa573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002d0919062001302565b6040518363ffffffff1660e01b8152600401620002ef92919062001343565b6020604051808303815f875af11580156200030c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000332919062001302565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250506200037a60a05160016200068760201b60201c565b6200038f60a05160016200078060201b60201c565b84600f81905550836010819055505f670de0b6b3a764000089620003b491906200139b565b905060648782620003c691906200139b565b620003d2919062001412565b60068190555060648882620003e891906200139b565b620003f4919062001412565b6007819055506103e86005826200040c91906200139b565b62000418919062001412565b6009819055506006600a8190555082600c5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620004c8620004ba6200083060201b60201c565b60016200085860201b60201c565b620004fc600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016200085860201b60201c565b62000530600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016200085860201b60201c565b620005433060016200085860201b60201c565b6200055861dead60016200085860201b60201c565b6200057a6200056c6200083060201b60201c565b60016200068760201b60201c565b620005ae600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016200068760201b60201c565b620005e2600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016200068760201b60201c565b620005f53060016200068760201b60201c565b6200060a61dead60016200068760201b60201c565b6200063d600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682620009a160201b60201c565b6200066f600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1662000aeb60201b60201c565b505050505050505050505062001666565b5f33905090565b620006976200068060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161462000728576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200071f90620014a7565b60405180910390fd5b8060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b8060145f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550620007e682826200068760201b60201c565b8015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b620008686200068060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614620008f9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008f090620014a7565b60405180910390fd5b8060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051620009959190620014e3565b60405180910390a25050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000a12576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000a09906200154c565b60405180910390fd5b8060025f82825462000a2591906200156c565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825462000a7991906200156c565b925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000adf9190620015b7565b60405180910390a35050565b62000afb6200068060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161462000b8c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000b8390620014a7565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160362000bfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000bf49062001646565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a38060055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b62000d1c8262000cd4565b810181811067ffffffffffffffff8211171562000d3e5762000d3d62000ce4565b5b80604052505050565b5f62000d5262000cbb565b905062000d60828262000d11565b919050565b5f67ffffffffffffffff82111562000d825762000d8162000ce4565b5b62000d8d8262000cd4565b9050602081019050919050565b5f5b8381101562000db957808201518184015260208101905062000d9c565b5f8484015250505050565b5f62000dda62000dd48462000d65565b62000d47565b90508281526020810184848401111562000df95762000df862000cd0565b5b62000e0684828562000d9a565b509392505050565b5f82601f83011262000e255762000e2462000ccc565b5b815162000e3784826020860162000dc4565b91505092915050565b5f819050919050565b62000e548162000e40565b811462000e5f575f80fd5b50565b5f8151905062000e728162000e49565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f62000ea38262000e78565b9050919050565b62000eb58162000e97565b811462000ec0575f80fd5b50565b5f8151905062000ed38162000eaa565b92915050565b5f805f805f805f805f6101208a8c03121562000efa5762000ef962000cc4565b5b5f8a015167ffffffffffffffff81111562000f1a5762000f1962000cc8565b5b62000f288c828d0162000e0e565b99505060208a015167ffffffffffffffff81111562000f4c5762000f4b62000cc8565b5b62000f5a8c828d0162000e0e565b985050604062000f6d8c828d0162000e62565b975050606062000f808c828d0162000e62565b965050608062000f938c828d0162000e62565b95505060a062000fa68c828d0162000e62565b94505060c062000fb98c828d0162000e62565b93505060e062000fcc8c828d0162000ec3565b92505061010062000fe08c828d0162000ec3565b9150509295985092959850929598565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806200103f57607f821691505b60208210810362001055576200105462000ffa565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620010b97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200107c565b620010c586836200107c565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6200110662001100620010fa8462000e40565b620010dd565b62000e40565b9050919050565b5f819050919050565b6200112183620010e6565b6200113962001130826200110d565b84845462001088565b825550505050565b5f90565b6200114f62001141565b6200115c81848462001116565b505050565b5b818110156200118357620011775f8262001145565b60018101905062001162565b5050565b601f821115620011d2576200119c816200105b565b620011a7846200106d565b81016020851015620011b7578190505b620011cf620011c6856200106d565b83018262001161565b50505b505050565b5f82821c905092915050565b5f620011f45f1984600802620011d7565b1980831691505092915050565b5f6200120e8383620011e3565b9150826002028217905092915050565b620012298262000ff0565b67ffffffffffffffff81111562001245576200124462000ce4565b5b62001251825462001027565b6200125e82828562001187565b5f60209050601f83116001811462001294575f84156200127f578287015190505b6200128b858262001201565b865550620012fa565b601f198416620012a4866200105b565b5f5b82811015620012cd57848901518255600182019150602085019450602081019050620012a6565b86831015620012ed5784890151620012e9601f891682620011e3565b8355505b6001600288020188555050505b505050505050565b5f602082840312156200131a576200131962000cc4565b5b5f620013298482850162000ec3565b91505092915050565b6200133d8162000e97565b82525050565b5f604082019050620013585f83018562001332565b62001367602083018462001332565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f620013a78262000e40565b9150620013b48362000e40565b9250828202620013c48162000e40565b91508282048414831517620013de57620013dd6200136e565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6200141e8262000e40565b91506200142b8362000e40565b9250826200143e576200143d620013e5565b5b828204905092915050565b5f82825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6200148f60208362001449565b91506200149c8262001459565b602082019050919050565b5f6020820190508181035f830152620014c08162001481565b9050919050565b5f8115159050919050565b620014dd81620014c7565b82525050565b5f602082019050620014f85f830184620014d2565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f62001534601f8362001449565b91506200154182620014fe565b602082019050919050565b5f6020820190508181035f830152620015658162001526565b9050919050565b5f620015788262000e40565b9150620015858362000e40565b9250828201905080821115620015a0576200159f6200136e565b5b92915050565b620015b18162000e40565b82525050565b5f602082019050620015cc5f830184620015a6565b92915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f6200162e60268362001449565b91506200163b82620015d2565b604082019050919050565b5f6020820190508181035f8301526200165f8162001620565b9050919050565b60805160a051614aab620016b25f395f8181610e93015281816117c6015261297a01525f8181610b5701528181612923015281816133830152818161346201526134890152614aab5ff3fe608060405260043610610249575f3560e01c8063715018a611610138578063b62496f5116100b5578063d257b34f11610079578063d257b34f14610832578063dd62ed3e1461085a578063e086e5ec14610896578063e2f45605146108ac578063f2fde38b146108d6578063f8b45b05146108fe57610250565b8063b62496f514610752578063c02466681461078e578063c18bc195146107b6578063c876d0b9146107de578063cf46f24c1461080857610250565b80638da5cb5b116100fc5780638da5cb5b1461065e57806395d89b41146106885780639a7a23d6146106b2578063a457c2d7146106da578063a9059cbb1461071657610250565b8063715018a6146105ca578063751039fc146105e05780637571336a146105f657806376d628b71461061e5780638a8c523c1461064857610250565b806339509351116101c657806351bc3c851161018a57806351bc3c85146104fc5780636a01f09c146105125780636db794371461053c5780636ddd17131461056457806370a082311461058e57610250565b8063395093511461041a57806345c1e4b214610456578063470624021461047e57806349bd5a5e146104a85780634a62bb65146104d257610250565b80631694505e1161020d5780631694505e1461033657806318160ddd1461036057806323b872dd1461038a5780632b14ca56146103c6578063313ce567146103f057610250565b806306fdde0314610254578063095ea7b31461027e57806310d5de53146102ba57806311704f52146102f657806315832b9e1461032057610250565b3661025057005b5f80fd5b34801561025f575f80fd5b50610268610928565b60405161027591906135a3565b60405180910390f35b348015610289575f80fd5b506102a4600480360381019061029f9190613654565b6109b8565b6040516102b191906136ac565b60405180910390f35b3480156102c5575f80fd5b506102e060048036038101906102db91906136c5565b6109d5565b6040516102ed91906136ac565b60405180910390f35b348015610301575f80fd5b5061030a6109f2565b60405161031791906136ac565b60405180910390f35b34801561032b575f80fd5b50610334610a05565b005b348015610341575f80fd5b5061034a610b55565b604051610357919061374b565b60405180910390f35b34801561036b575f80fd5b50610374610b79565b6040516103819190613773565b60405180910390f35b348015610395575f80fd5b506103b060048036038101906103ab919061378c565b610b82565b6040516103bd91906136ac565b60405180910390f35b3480156103d1575f80fd5b506103da610c74565b6040516103e79190613773565b60405180910390f35b3480156103fb575f80fd5b50610404610c7a565b60405161041191906137f7565b60405180910390f35b348015610425575f80fd5b50610440600480360381019061043b9190613654565b610c82565b60405161044d91906136ac565b60405180910390f35b348015610461575f80fd5b5061047c60048036038101906104779190613810565b610d29565b005b348015610489575f80fd5b50610492610e8b565b60405161049f9190613773565b60405180910390f35b3480156104b3575f80fd5b506104bc610e91565b6040516104c9919061384a565b60405180910390f35b3480156104dd575f80fd5b506104e6610eb5565b6040516104f391906136ac565b60405180910390f35b348015610507575f80fd5b50610510610ec8565b005b34801561051d575f80fd5b50610526611016565b6040516105339190613773565b60405180910390f35b348015610547575f80fd5b50610562600480360381019061055d9190613863565b61101c565b005b34801561056f575f80fd5b50610578611168565b60405161058591906136ac565b60405180910390f35b348015610599575f80fd5b506105b460048036038101906105af91906136c5565b61117b565b6040516105c19190613773565b60405180910390f35b3480156105d5575f80fd5b506105de6111c0565b005b3480156105eb575f80fd5b506105f4611313565b005b348015610601575f80fd5b5061061c600480360381019061061791906138cb565b611438565b005b348015610629575f80fd5b50610632611526565b60405161063f9190613773565b60405180910390f35b348015610653575f80fd5b5061065c61152c565b005b348015610669575f80fd5b50610672611676565b60405161067f919061384a565b60405180910390f35b348015610693575f80fd5b5061069c61169e565b6040516106a991906135a3565b60405180910390f35b3480156106bd575f80fd5b506106d860048036038101906106d391906138cb565b61172e565b005b3480156106e5575f80fd5b5061070060048036038101906106fb9190613654565b6118a6565b60405161070d91906136ac565b60405180910390f35b348015610721575f80fd5b5061073c60048036038101906107379190613654565b61198c565b60405161074991906136ac565b60405180910390f35b34801561075d575f80fd5b50610778600480360381019061077391906136c5565b6119a9565b60405161078591906136ac565b60405180910390f35b348015610799575f80fd5b506107b460048036038101906107af91906138cb565b6119c6565b005b3480156107c1575f80fd5b506107dc60048036038101906107d79190613810565b611b02565b005b3480156107e9575f80fd5b506107f2611c64565b6040516107ff91906136ac565b60405180910390f35b348015610813575f80fd5b5061081c611c76565b6040516108299190613773565b60405180910390f35b34801561083d575f80fd5b5061085860048036038101906108539190613810565b611c7c565b005b348015610865575f80fd5b50610880600480360381019061087b9190613909565b611de3565b60405161088d9190613773565b60405180910390f35b3480156108a1575f80fd5b506108aa611e65565b005b3480156108b7575f80fd5b506108c0611f61565b6040516108cd9190613773565b60405180910390f35b3480156108e1575f80fd5b506108fc60048036038101906108f791906136c5565b611f67565b005b348015610909575f80fd5b50610912612129565b60405161091f9190613773565b60405180910390f35b60606003805461093790613974565b80601f016020809104026020016040519081016040528092919081815260200182805461096390613974565b80156109ae5780601f10610985576101008083540402835291602001916109ae565b820191905f5260205f20905b81548152906001019060200180831161099157829003601f168201915b5050505050905090565b5f6109cb6109c461212f565b8484612136565b6001905092915050565b6013602052805f5260405f205f915054906101000a900460ff1681565b600c60159054906101000a900460ff1681565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8b906139ee565b60405180910390fd5b5f60115414610ad8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610acf90613a7c565b60405180910390fd5b5f610ae23061117b565b90505f8111610b26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1d90613ae4565b60405180910390fd5b610b5230600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836122f9565b50565b7f000000000000000000000000000000000000000000000000000000000000000081565b5f600254905090565b5f610b8e848484612558565b5f60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610bd561212f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015610c54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4b90613b72565b60405180910390fd5b610c6885610c6061212f565b858403612136565b60019150509392505050565b60105481565b5f6012905090565b5f610d1f610c8e61212f565b848460015f610c9b61212f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610d1a9190613bbd565b612136565b6001905092915050565b610d3161212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610dbf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db690613c3a565b60405180910390fd5b670de0b6b3a76400006103e86002610dd5610b79565b610ddf9190613c58565b610de99190613cc6565b610df39190613cc6565b811015610e35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e2c90613d66565b60405180910390fd5b670de0b6b3a764000081610e499190613c58565b6007819055507fbd8a1f50bda6367cd3771d8453c2582c5f01613dd6d8ee271672f4943da806d3600754604051610e809190613773565b60405180910390a150565b600f5481565b7f000000000000000000000000000000000000000000000000000000000000000081565b600c60149054906101000a900460ff1681565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f57576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4e906139ee565b60405180910390fd5b5f610f613061117b565b1015610fa2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9990613dce565b60405180910390fd5b600160085f6101000a81548160ff021916908315150217905550610fc46130fa565b5f60085f6101000a81548160ff0219169083151502179055507f7704eca0c9eaa0b85444383d91c148463b321cff28fcb55afee0ca730b3a55334260405161100c9190613773565b60405180910390a1565b600a5481565b61102461212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a990613c3a565b60405180910390fd5b81600f819055508060108190555060146064600f546110d19190613cc6565b1115611112576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110990613e36565b60405180910390fd5b601e60646010546111239190613cc6565b1115611164576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115b90613e9e565b60405180910390fd5b5050565b600c60169054906101000a900460ff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6111c861212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611256576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124d90613c3a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f60055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61131b61212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a090613c3a565b60405180910390fd5b5f600c60146101000a81548160ff0219169083151502179055505f600e5f6101000a81548160ff021916908315150217905550606460026113e8610b79565b6113f29190613c58565b6113fc9190613cc6565b6009819055506014600a819055507fa4ffae85e880608d5d4365c2b682786545d136145537788e7e0940dff9f0b98c60405160405180910390a1565b61144061212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114c590613c3a565b60405180910390fd5b8060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b60115481565b61153461212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146115c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115b990613c3a565b60405180910390fd5b600c60159054906101000a900460ff1615611612576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161160990613f06565b60405180910390fd5b6001600c60156101000a81548160ff0219169083151502179055506001600c60166101000a81548160ff0219169083151502179055507fa56feb2d31b9a7424db0be063fd450863979c9e2382cf5110f869bd1ad361bb760405160405180910390a1565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546116ad90613974565b80601f01602080910402602001604051908101604052809291908181526020018280546116d990613974565b80156117245780601f106116fb57610100808354040283529160200191611724565b820191905f5260205f20905b81548152906001019060200180831161170757829003601f168201915b5050505050905090565b61173661212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146117c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117bb90613c3a565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611852576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161184990613f94565b60405180910390fd5b61185c828261323e565b8015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b5f8060015f6118b361212f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508281101561196d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196490614022565b60405180910390fd5b61198161197861212f565b85858403612136565b600191505092915050565b5f61199f61199861212f565b8484612558565b6001905092915050565b6014602052805f5260405f205f915054906101000a900460ff1681565b6119ce61212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5390613c3a565b60405180910390fd5b8060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051611af691906136ac565b60405180910390a25050565b611b0a61212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b8f90613c3a565b60405180910390fd5b670de0b6b3a76400006103e86003611bae610b79565b611bb89190613c58565b611bc29190613cc6565b611bcc9190613cc6565b811015611c0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c05906140b0565b60405180910390fd5b670de0b6b3a764000081611c229190613c58565b6006819055507fefc9add9a9b7382de284ef5ad69d8ea863e2680492b21a81948c2d5f04a442bc600654604051611c599190613773565b60405180910390a150565b600e5f9054906101000a900460ff1681565b60075481565b611c8461212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611d12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d0990613c3a565b60405180910390fd5b620186a06001611d20610b79565b611d2a9190613c58565b611d349190613cc6565b811015611d76576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d6d9061413e565b60405180910390fd5b6103e86005611d83610b79565b611d8d9190613c58565b611d979190613cc6565b811115611dd9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dd0906141cc565b60405180910390fd5b8060098190555050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611ef4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eeb906139ee565b60405180910390fd5b5f3373ffffffffffffffffffffffffffffffffffffffff1647604051611f1990614217565b5f6040518083038185875af1925050503d805f8114611f53576040519150601f19603f3d011682016040523d82523d5f602084013e611f58565b606091505b50508091505050565b60095481565b611f6f61212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ffd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ff490613c3a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361206b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120629061429b565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a38060055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60065481565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036121a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161219b90614329565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612212576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612209906143b7565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516122ec9190613773565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612367576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161235e90614445565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036123d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123cc906144d3565b60405180910390fd5b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905081811015612458576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161244f90614561565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546124e69190613bbd565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161254a9190613773565b60405180910390a350505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036125c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125bd90614445565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612634576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161262b906144d3565b60405180910390fd5b5f8111612676576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161266d906145c9565b60405180910390fd5b600c60159054906101000a900460ff166127655760125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680612725575060125f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b612764576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161275b90614631565b60405180910390fd5b5b600c60149054906101000a900460ff1615612d6c57612782611676565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156127f057506127c0611676565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561282857505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612862575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156128b5575060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015612908575060125f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612d6b57600e5f9054906101000a900460ff1615612a91577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156129c957507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15612a905743600d5f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205410612a4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a44906146bf565b60405180910390fd5b43600d5f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b60145f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015612b2e575060135f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612bd557600754811115612b78576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b6f9061474d565b60405180910390fd5b600654612b848361117b565b82612b8f9190613bbd565b1115612bd0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bc7906147b5565b60405180910390fd5b612d6a565b60145f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015612c72575060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612cc157600754811115612cbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cb390614843565b60405180910390fd5b612d69565b60135f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16612d6857600654612d1b8361117b565b82612d269190613bbd565b1115612d67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d5e906147b5565b60405180910390fd5b5b5b5b5b5b5f612d763061117b565b90505f6009548210159050808015612d9a5750600c60169054906101000a900460ff165b8015612db2575060085f9054906101000a900460ff16155b8015612e05575060145f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015612e58575060125f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015612eab575060125f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612eec57600160085f6101000a81548160ff021916908315150217905550612ed26130fa565b5f60085f6101000a81548160ff0219169083151502179055505b5f6001905060125f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680612f8c575060125f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b15612f95575f90505b5f81156130e65760145f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015612ff357505f601054115b15613031576064601054866130089190613c58565b6130129190613cc6565b90508060115f8282546130259190613bbd565b925050819055506130c3565b60145f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16801561308857505f600f54115b156130c2576064600f548661309d9190613c58565b6130a79190613cc6565b90508060115f8282546130ba9190613bbd565b925050819055505b5b5f8111156130d7576130d68730836122f9565b5b80856130e39190614861565b94505b6130f18787876122f9565b50505050505050565b5f6131043061117b565b90505f60115490505f82148061311957505f81145b1561312557505061323c565b600c60149054906101000a900460ff161561316957600a5460095461314a9190613c58565b82111561316457600a546009546131619190613c58565b91505b613194565b600a546009546131799190613cc6565b82111561319357600a546009546131909190613cc6565b91505b5b5f61319e836132e6565b5f6011819055505f47111561323857600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16476040516131f290614217565b5f6040518083038185875af1925050503d805f811461322c576040519150601f19603f3d011682016040523d82523d5f602084013e613231565b606091505b5050809150505b5050505b565b8060145f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555061329c8282611438565b8015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b5f600267ffffffffffffffff81111561330257613301614894565b5b6040519080825280602002602001820160405280156133305781602001602082028036833780820191505090505b50905030815f81518110613347576133466148c1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156133ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061340e9190614902565b81600181518110613422576134216148c1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050613487307f000000000000000000000000000000000000000000000000000000000000000084612136565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016134e8959493929190614a1d565b5f604051808303815f87803b1580156134ff575f80fd5b505af1158015613511573d5f803e3d5ffd5b505050505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015613550578082015181840152602081019050613535565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61357582613519565b61357f8185613523565b935061358f818560208601613533565b6135988161355b565b840191505092915050565b5f6020820190508181035f8301526135bb818461356b565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6135f0826135c7565b9050919050565b613600816135e6565b811461360a575f80fd5b50565b5f8135905061361b816135f7565b92915050565b5f819050919050565b61363381613621565b811461363d575f80fd5b50565b5f8135905061364e8161362a565b92915050565b5f806040838503121561366a576136696135c3565b5b5f6136778582860161360d565b925050602061368885828601613640565b9150509250929050565b5f8115159050919050565b6136a681613692565b82525050565b5f6020820190506136bf5f83018461369d565b92915050565b5f602082840312156136da576136d96135c3565b5b5f6136e78482850161360d565b91505092915050565b5f819050919050565b5f61371361370e613709846135c7565b6136f0565b6135c7565b9050919050565b5f613724826136f9565b9050919050565b5f6137358261371a565b9050919050565b6137458161372b565b82525050565b5f60208201905061375e5f83018461373c565b92915050565b61376d81613621565b82525050565b5f6020820190506137865f830184613764565b92915050565b5f805f606084860312156137a3576137a26135c3565b5b5f6137b08682870161360d565b93505060206137c18682870161360d565b92505060406137d286828701613640565b9150509250925092565b5f60ff82169050919050565b6137f1816137dc565b82525050565b5f60208201905061380a5f8301846137e8565b92915050565b5f60208284031215613825576138246135c3565b5b5f61383284828501613640565b91505092915050565b613844816135e6565b82525050565b5f60208201905061385d5f83018461383b565b92915050565b5f8060408385031215613879576138786135c3565b5b5f61388685828601613640565b925050602061389785828601613640565b9150509250929050565b6138aa81613692565b81146138b4575f80fd5b50565b5f813590506138c5816138a1565b92915050565b5f80604083850312156138e1576138e06135c3565b5b5f6138ee8582860161360d565b92505060206138ff858286016138b7565b9150509250929050565b5f806040838503121561391f5761391e6135c3565b5b5f61392c8582860161360d565b925050602061393d8582860161360d565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061398b57607f821691505b60208210810361399e5761399d613947565b5b50919050565b7f4e6f7420417574680000000000000000000000000000000000000000000000005f82015250565b5f6139d8600883613523565b91506139e3826139a4565b602082019050919050565b5f6020820190508181035f830152613a05816139cc565b9050919050565b7f43616e742052656d6f766520546f6b656e7320546861742041726520416c6c6f5f8201527f636174656420666f72207377617070696e670000000000000000000000000000602082015250565b5f613a66603283613523565b9150613a7182613a0c565b604082019050919050565b5f6020820190508181035f830152613a9381613a5a565b9050919050565b7f4e6f20746f6b656e7320696e20636f6e747261637400000000000000000000005f82015250565b5f613ace601583613523565b9150613ad982613a9a565b602082019050919050565b5f6020820190508181035f830152613afb81613ac2565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f613b5c602883613523565b9150613b6782613b02565b604082019050919050565b5f6020820190508181035f830152613b8981613b50565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f613bc782613621565b9150613bd283613621565b9250828201905080821115613bea57613be9613b90565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f613c24602083613523565b9150613c2f82613bf0565b602082019050919050565b5f6020820190508181035f830152613c5181613c18565b9050919050565b5f613c6282613621565b9150613c6d83613621565b9250828202613c7b81613621565b91508282048414831517613c9257613c91613b90565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f613cd082613621565b9150613cdb83613621565b925082613ceb57613cea613c99565b5b828204905092915050565b7f43616e6e6f7420736574206d61782074786e20616d6f756e74206c6f776572205f8201527f7468616e20302e32250000000000000000000000000000000000000000000000602082015250565b5f613d50602983613523565b9150613d5b82613cf6565b604082019050919050565b5f6020820190508181035f830152613d7d81613d44565b9050919050565b7f4e6f20746f6b656e7320746f20737761700000000000000000000000000000005f82015250565b5f613db8601183613523565b9150613dc382613d84565b602082019050919050565b5f6020820190508181035f830152613de581613dac565b9050919050565b7f4d757374206b656570206665657320617420323025206f72206c6573730000005f82015250565b5f613e20601d83613523565b9150613e2b82613dec565b602082019050919050565b5f6020820190508181035f830152613e4d81613e14565b9050919050565b7f4d757374206b656570206665657320617420333025206f72206c6573730000005f82015250565b5f613e88601d83613523565b9150613e9382613e54565b602082019050919050565b5f6020820190508181035f830152613eb581613e7c565b9050919050565b7f54726164696e6720616c7265616479206c6976652100000000000000000000005f82015250565b5f613ef0601583613523565b9150613efb82613ebc565b602082019050919050565b5f6020820190508181035f830152613f1d81613ee4565b9050919050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d205f8201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b5f613f7e603983613523565b9150613f8982613f24565b604082019050919050565b5f6020820190508181035f830152613fab81613f72565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f61400c602583613523565b915061401782613fb2565b604082019050919050565b5f6020820190508181035f83015261403981614000565b9050919050565b7f43616e6e6f7420736574206d61782077616c6c657420616d6f756e74206c6f775f8201527f6572207468616e20302e33250000000000000000000000000000000000000000602082015250565b5f61409a602c83613523565b91506140a582614040565b604082019050919050565b5f6020820190508181035f8301526140c78161408e565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e5f8201527f20302e3030312520746f74616c20737570706c792e0000000000000000000000602082015250565b5f614128603583613523565b9150614133826140ce565b604082019050919050565b5f6020820190508181035f8301526141558161411c565b9050919050565b7f5377617020616d6f756e742063616e6e6f7420626520686967686572207468615f8201527f6e20302e352520746f74616c20737570706c792e000000000000000000000000602082015250565b5f6141b6603483613523565b91506141c18261415c565b604082019050919050565b5f6020820190508181035f8301526141e3816141aa565b9050919050565b5f81905092915050565b50565b5f6142025f836141ea565b915061420d826141f4565b5f82019050919050565b5f614221826141f7565b9150819050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f614285602683613523565b91506142908261422b565b604082019050919050565b5f6020820190508181035f8301526142b281614279565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f614313602483613523565b915061431e826142b9565b604082019050919050565b5f6020820190508181035f83015261434081614307565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6143a1602283613523565b91506143ac82614347565b604082019050919050565b5f6020820190508181035f8301526143ce81614395565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61442f602583613523565b915061443a826143d5565b604082019050919050565b5f6020820190508181035f83015261445c81614423565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6144bd602383613523565b91506144c882614463565b604082019050919050565b5f6020820190508181035f8301526144ea816144b1565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f61454b602683613523565b9150614556826144f1565b604082019050919050565b5f6020820190508181035f8301526145788161453f565b9050919050565b7f616d6f756e74206d7573742062652067726561746572207468616e20300000005f82015250565b5f6145b3601d83613523565b91506145be8261457f565b602082019050919050565b5f6020820190508181035f8301526145e0816145a7565b9050919050565b7f54726164696e67206973206e6f74206163746976652e000000000000000000005f82015250565b5f61461b601683613523565b9150614626826145e7565b602082019050919050565b5f6020820190508181035f8301526146488161460f565b9050919050565b7f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f5f8201527f7765642e00000000000000000000000000000000000000000000000000000000602082015250565b5f6146a9602483613523565b91506146b48261464f565b604082019050919050565b5f6020820190508181035f8301526146d68161469d565b9050919050565b7f427579207472616e7366657220616d6f756e74206578636565647320746865205f8201527f6d61782074786e2e000000000000000000000000000000000000000000000000602082015250565b5f614737602883613523565b9150614742826146dd565b604082019050919050565b5f6020820190508181035f8301526147648161472b565b9050919050565b7f43616e6e6f7420457863656564206d61782077616c6c657400000000000000005f82015250565b5f61479f601883613523565b91506147aa8261476b565b602082019050919050565b5f6020820190508181035f8301526147cc81614793565b9050919050565b7f53656c6c207472616e7366657220616d6f756e742065786365656473207468655f8201527f206d61782074786e2e0000000000000000000000000000000000000000000000602082015250565b5f61482d602983613523565b9150614838826147d3565b604082019050919050565b5f6020820190508181035f83015261485a81614821565b9050919050565b5f61486b82613621565b915061487683613621565b925082820390508181111561488e5761488d613b90565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f815190506148fc816135f7565b92915050565b5f60208284031215614917576149166135c3565b5b5f614924848285016148ee565b91505092915050565b5f819050919050565b5f61495061494b6149468461492d565b6136f0565b613621565b9050919050565b61496081614936565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b614998816135e6565b82525050565b5f6149a9838361498f565b60208301905092915050565b5f602082019050919050565b5f6149cb82614966565b6149d58185614970565b93506149e083614980565b805f5b83811015614a105781516149f7888261499e565b9750614a02836149b5565b9250506001810190506149e3565b5085935050505092915050565b5f60a082019050614a305f830188613764565b614a3d6020830187614957565b8181036040830152614a4f81866149c1565b9050614a5e606083018561383b565b614a6b6080830184613764565b969550505050505056fea264697066735822122050501e34f90ae11ca342c4ce04dbeb8444ebc1b6e1bb8d4ad5febf6fb5c40cd364736f6c634300081800330000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000009896800000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000019000000000000000000000000cce95d24f3892055757d06ca7eef0d657c3fa6af000000000000000000000000b50a0b9a543ec757ae056b65d44a1033707e275e0000000000000000000000000000000000000000000000000000000000000007434855424341540000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044348554200000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405260043610610249575f3560e01c8063715018a611610138578063b62496f5116100b5578063d257b34f11610079578063d257b34f14610832578063dd62ed3e1461085a578063e086e5ec14610896578063e2f45605146108ac578063f2fde38b146108d6578063f8b45b05146108fe57610250565b8063b62496f514610752578063c02466681461078e578063c18bc195146107b6578063c876d0b9146107de578063cf46f24c1461080857610250565b80638da5cb5b116100fc5780638da5cb5b1461065e57806395d89b41146106885780639a7a23d6146106b2578063a457c2d7146106da578063a9059cbb1461071657610250565b8063715018a6146105ca578063751039fc146105e05780637571336a146105f657806376d628b71461061e5780638a8c523c1461064857610250565b806339509351116101c657806351bc3c851161018a57806351bc3c85146104fc5780636a01f09c146105125780636db794371461053c5780636ddd17131461056457806370a082311461058e57610250565b8063395093511461041a57806345c1e4b214610456578063470624021461047e57806349bd5a5e146104a85780634a62bb65146104d257610250565b80631694505e1161020d5780631694505e1461033657806318160ddd1461036057806323b872dd1461038a5780632b14ca56146103c6578063313ce567146103f057610250565b806306fdde0314610254578063095ea7b31461027e57806310d5de53146102ba57806311704f52146102f657806315832b9e1461032057610250565b3661025057005b5f80fd5b34801561025f575f80fd5b50610268610928565b60405161027591906135a3565b60405180910390f35b348015610289575f80fd5b506102a4600480360381019061029f9190613654565b6109b8565b6040516102b191906136ac565b60405180910390f35b3480156102c5575f80fd5b506102e060048036038101906102db91906136c5565b6109d5565b6040516102ed91906136ac565b60405180910390f35b348015610301575f80fd5b5061030a6109f2565b60405161031791906136ac565b60405180910390f35b34801561032b575f80fd5b50610334610a05565b005b348015610341575f80fd5b5061034a610b55565b604051610357919061374b565b60405180910390f35b34801561036b575f80fd5b50610374610b79565b6040516103819190613773565b60405180910390f35b348015610395575f80fd5b506103b060048036038101906103ab919061378c565b610b82565b6040516103bd91906136ac565b60405180910390f35b3480156103d1575f80fd5b506103da610c74565b6040516103e79190613773565b60405180910390f35b3480156103fb575f80fd5b50610404610c7a565b60405161041191906137f7565b60405180910390f35b348015610425575f80fd5b50610440600480360381019061043b9190613654565b610c82565b60405161044d91906136ac565b60405180910390f35b348015610461575f80fd5b5061047c60048036038101906104779190613810565b610d29565b005b348015610489575f80fd5b50610492610e8b565b60405161049f9190613773565b60405180910390f35b3480156104b3575f80fd5b506104bc610e91565b6040516104c9919061384a565b60405180910390f35b3480156104dd575f80fd5b506104e6610eb5565b6040516104f391906136ac565b60405180910390f35b348015610507575f80fd5b50610510610ec8565b005b34801561051d575f80fd5b50610526611016565b6040516105339190613773565b60405180910390f35b348015610547575f80fd5b50610562600480360381019061055d9190613863565b61101c565b005b34801561056f575f80fd5b50610578611168565b60405161058591906136ac565b60405180910390f35b348015610599575f80fd5b506105b460048036038101906105af91906136c5565b61117b565b6040516105c19190613773565b60405180910390f35b3480156105d5575f80fd5b506105de6111c0565b005b3480156105eb575f80fd5b506105f4611313565b005b348015610601575f80fd5b5061061c600480360381019061061791906138cb565b611438565b005b348015610629575f80fd5b50610632611526565b60405161063f9190613773565b60405180910390f35b348015610653575f80fd5b5061065c61152c565b005b348015610669575f80fd5b50610672611676565b60405161067f919061384a565b60405180910390f35b348015610693575f80fd5b5061069c61169e565b6040516106a991906135a3565b60405180910390f35b3480156106bd575f80fd5b506106d860048036038101906106d391906138cb565b61172e565b005b3480156106e5575f80fd5b5061070060048036038101906106fb9190613654565b6118a6565b60405161070d91906136ac565b60405180910390f35b348015610721575f80fd5b5061073c60048036038101906107379190613654565b61198c565b60405161074991906136ac565b60405180910390f35b34801561075d575f80fd5b50610778600480360381019061077391906136c5565b6119a9565b60405161078591906136ac565b60405180910390f35b348015610799575f80fd5b506107b460048036038101906107af91906138cb565b6119c6565b005b3480156107c1575f80fd5b506107dc60048036038101906107d79190613810565b611b02565b005b3480156107e9575f80fd5b506107f2611c64565b6040516107ff91906136ac565b60405180910390f35b348015610813575f80fd5b5061081c611c76565b6040516108299190613773565b60405180910390f35b34801561083d575f80fd5b5061085860048036038101906108539190613810565b611c7c565b005b348015610865575f80fd5b50610880600480360381019061087b9190613909565b611de3565b60405161088d9190613773565b60405180910390f35b3480156108a1575f80fd5b506108aa611e65565b005b3480156108b7575f80fd5b506108c0611f61565b6040516108cd9190613773565b60405180910390f35b3480156108e1575f80fd5b506108fc60048036038101906108f791906136c5565b611f67565b005b348015610909575f80fd5b50610912612129565b60405161091f9190613773565b60405180910390f35b60606003805461093790613974565b80601f016020809104026020016040519081016040528092919081815260200182805461096390613974565b80156109ae5780601f10610985576101008083540402835291602001916109ae565b820191905f5260205f20905b81548152906001019060200180831161099157829003601f168201915b5050505050905090565b5f6109cb6109c461212f565b8484612136565b6001905092915050565b6013602052805f5260405f205f915054906101000a900460ff1681565b600c60159054906101000a900460ff1681565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8b906139ee565b60405180910390fd5b5f60115414610ad8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610acf90613a7c565b60405180910390fd5b5f610ae23061117b565b90505f8111610b26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1d90613ae4565b60405180910390fd5b610b5230600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836122f9565b50565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b5f600254905090565b5f610b8e848484612558565b5f60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610bd561212f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015610c54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4b90613b72565b60405180910390fd5b610c6885610c6061212f565b858403612136565b60019150509392505050565b60105481565b5f6012905090565b5f610d1f610c8e61212f565b848460015f610c9b61212f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610d1a9190613bbd565b612136565b6001905092915050565b610d3161212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610dbf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db690613c3a565b60405180910390fd5b670de0b6b3a76400006103e86002610dd5610b79565b610ddf9190613c58565b610de99190613cc6565b610df39190613cc6565b811015610e35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e2c90613d66565b60405180910390fd5b670de0b6b3a764000081610e499190613c58565b6007819055507fbd8a1f50bda6367cd3771d8453c2582c5f01613dd6d8ee271672f4943da806d3600754604051610e809190613773565b60405180910390a150565b600f5481565b7f0000000000000000000000007411e927713d2ef66b8ba8296ebdab00570b043081565b600c60149054906101000a900460ff1681565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f57576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4e906139ee565b60405180910390fd5b5f610f613061117b565b1015610fa2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9990613dce565b60405180910390fd5b600160085f6101000a81548160ff021916908315150217905550610fc46130fa565b5f60085f6101000a81548160ff0219169083151502179055507f7704eca0c9eaa0b85444383d91c148463b321cff28fcb55afee0ca730b3a55334260405161100c9190613773565b60405180910390a1565b600a5481565b61102461212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a990613c3a565b60405180910390fd5b81600f819055508060108190555060146064600f546110d19190613cc6565b1115611112576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110990613e36565b60405180910390fd5b601e60646010546111239190613cc6565b1115611164576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115b90613e9e565b60405180910390fd5b5050565b600c60169054906101000a900460ff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6111c861212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611256576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124d90613c3a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f60055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61131b61212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a090613c3a565b60405180910390fd5b5f600c60146101000a81548160ff0219169083151502179055505f600e5f6101000a81548160ff021916908315150217905550606460026113e8610b79565b6113f29190613c58565b6113fc9190613cc6565b6009819055506014600a819055507fa4ffae85e880608d5d4365c2b682786545d136145537788e7e0940dff9f0b98c60405160405180910390a1565b61144061212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114c590613c3a565b60405180910390fd5b8060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b60115481565b61153461212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146115c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115b990613c3a565b60405180910390fd5b600c60159054906101000a900460ff1615611612576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161160990613f06565b60405180910390fd5b6001600c60156101000a81548160ff0219169083151502179055506001600c60166101000a81548160ff0219169083151502179055507fa56feb2d31b9a7424db0be063fd450863979c9e2382cf5110f869bd1ad361bb760405160405180910390a1565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546116ad90613974565b80601f01602080910402602001604051908101604052809291908181526020018280546116d990613974565b80156117245780601f106116fb57610100808354040283529160200191611724565b820191905f5260205f20905b81548152906001019060200180831161170757829003601f168201915b5050505050905090565b61173661212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146117c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117bb90613c3a565b60405180910390fd5b7f0000000000000000000000007411e927713d2ef66b8ba8296ebdab00570b043073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611852576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161184990613f94565b60405180910390fd5b61185c828261323e565b8015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b5f8060015f6118b361212f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508281101561196d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196490614022565b60405180910390fd5b61198161197861212f565b85858403612136565b600191505092915050565b5f61199f61199861212f565b8484612558565b6001905092915050565b6014602052805f5260405f205f915054906101000a900460ff1681565b6119ce61212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5390613c3a565b60405180910390fd5b8060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051611af691906136ac565b60405180910390a25050565b611b0a61212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b8f90613c3a565b60405180910390fd5b670de0b6b3a76400006103e86003611bae610b79565b611bb89190613c58565b611bc29190613cc6565b611bcc9190613cc6565b811015611c0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c05906140b0565b60405180910390fd5b670de0b6b3a764000081611c229190613c58565b6006819055507fefc9add9a9b7382de284ef5ad69d8ea863e2680492b21a81948c2d5f04a442bc600654604051611c599190613773565b60405180910390a150565b600e5f9054906101000a900460ff1681565b60075481565b611c8461212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611d12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d0990613c3a565b60405180910390fd5b620186a06001611d20610b79565b611d2a9190613c58565b611d349190613cc6565b811015611d76576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d6d9061413e565b60405180910390fd5b6103e86005611d83610b79565b611d8d9190613c58565b611d979190613cc6565b811115611dd9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dd0906141cc565b60405180910390fd5b8060098190555050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611ef4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eeb906139ee565b60405180910390fd5b5f3373ffffffffffffffffffffffffffffffffffffffff1647604051611f1990614217565b5f6040518083038185875af1925050503d805f8114611f53576040519150601f19603f3d011682016040523d82523d5f602084013e611f58565b606091505b50508091505050565b60095481565b611f6f61212f565b73ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ffd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ff490613c3a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361206b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120629061429b565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a38060055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60065481565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036121a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161219b90614329565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612212576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612209906143b7565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516122ec9190613773565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612367576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161235e90614445565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036123d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123cc906144d3565b60405180910390fd5b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905081811015612458576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161244f90614561565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546124e69190613bbd565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161254a9190613773565b60405180910390a350505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036125c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125bd90614445565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612634576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161262b906144d3565b60405180910390fd5b5f8111612676576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161266d906145c9565b60405180910390fd5b600c60159054906101000a900460ff166127655760125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680612725575060125f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b612764576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161275b90614631565b60405180910390fd5b5b600c60149054906101000a900460ff1615612d6c57612782611676565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156127f057506127c0611676565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561282857505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612862575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156128b5575060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015612908575060125f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612d6b57600e5f9054906101000a900460ff1615612a91577f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156129c957507f0000000000000000000000007411e927713d2ef66b8ba8296ebdab00570b043073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15612a905743600d5f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205410612a4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a44906146bf565b60405180910390fd5b43600d5f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b60145f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015612b2e575060135f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612bd557600754811115612b78576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b6f9061474d565b60405180910390fd5b600654612b848361117b565b82612b8f9190613bbd565b1115612bd0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bc7906147b5565b60405180910390fd5b612d6a565b60145f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015612c72575060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612cc157600754811115612cbc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cb390614843565b60405180910390fd5b612d69565b60135f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16612d6857600654612d1b8361117b565b82612d269190613bbd565b1115612d67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d5e906147b5565b60405180910390fd5b5b5b5b5b5b5f612d763061117b565b90505f6009548210159050808015612d9a5750600c60169054906101000a900460ff165b8015612db2575060085f9054906101000a900460ff16155b8015612e05575060145f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015612e58575060125f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015612eab575060125f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612eec57600160085f6101000a81548160ff021916908315150217905550612ed26130fa565b5f60085f6101000a81548160ff0219169083151502179055505b5f6001905060125f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680612f8c575060125f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b15612f95575f90505b5f81156130e65760145f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015612ff357505f601054115b15613031576064601054866130089190613c58565b6130129190613cc6565b90508060115f8282546130259190613bbd565b925050819055506130c3565b60145f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16801561308857505f600f54115b156130c2576064600f548661309d9190613c58565b6130a79190613cc6565b90508060115f8282546130ba9190613bbd565b925050819055505b5b5f8111156130d7576130d68730836122f9565b5b80856130e39190614861565b94505b6130f18787876122f9565b50505050505050565b5f6131043061117b565b90505f60115490505f82148061311957505f81145b1561312557505061323c565b600c60149054906101000a900460ff161561316957600a5460095461314a9190613c58565b82111561316457600a546009546131619190613c58565b91505b613194565b600a546009546131799190613cc6565b82111561319357600a546009546131909190613cc6565b91505b5b5f61319e836132e6565b5f6011819055505f47111561323857600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16476040516131f290614217565b5f6040518083038185875af1925050503d805f811461322c576040519150601f19603f3d011682016040523d82523d5f602084013e613231565b606091505b5050809150505b5050505b565b8060145f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555061329c8282611438565b8015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b5f600267ffffffffffffffff81111561330257613301614894565b5b6040519080825280602002602001820160405280156133305781602001602082028036833780820191505090505b50905030815f81518110613347576133466148c1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156133ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061340e9190614902565b81600181518110613422576134216148c1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050613487307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84612136565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016134e8959493929190614a1d565b5f604051808303815f87803b1580156134ff575f80fd5b505af1158015613511573d5f803e3d5ffd5b505050505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015613550578082015181840152602081019050613535565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61357582613519565b61357f8185613523565b935061358f818560208601613533565b6135988161355b565b840191505092915050565b5f6020820190508181035f8301526135bb818461356b565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6135f0826135c7565b9050919050565b613600816135e6565b811461360a575f80fd5b50565b5f8135905061361b816135f7565b92915050565b5f819050919050565b61363381613621565b811461363d575f80fd5b50565b5f8135905061364e8161362a565b92915050565b5f806040838503121561366a576136696135c3565b5b5f6136778582860161360d565b925050602061368885828601613640565b9150509250929050565b5f8115159050919050565b6136a681613692565b82525050565b5f6020820190506136bf5f83018461369d565b92915050565b5f602082840312156136da576136d96135c3565b5b5f6136e78482850161360d565b91505092915050565b5f819050919050565b5f61371361370e613709846135c7565b6136f0565b6135c7565b9050919050565b5f613724826136f9565b9050919050565b5f6137358261371a565b9050919050565b6137458161372b565b82525050565b5f60208201905061375e5f83018461373c565b92915050565b61376d81613621565b82525050565b5f6020820190506137865f830184613764565b92915050565b5f805f606084860312156137a3576137a26135c3565b5b5f6137b08682870161360d565b93505060206137c18682870161360d565b92505060406137d286828701613640565b9150509250925092565b5f60ff82169050919050565b6137f1816137dc565b82525050565b5f60208201905061380a5f8301846137e8565b92915050565b5f60208284031215613825576138246135c3565b5b5f61383284828501613640565b91505092915050565b613844816135e6565b82525050565b5f60208201905061385d5f83018461383b565b92915050565b5f8060408385031215613879576138786135c3565b5b5f61388685828601613640565b925050602061389785828601613640565b9150509250929050565b6138aa81613692565b81146138b4575f80fd5b50565b5f813590506138c5816138a1565b92915050565b5f80604083850312156138e1576138e06135c3565b5b5f6138ee8582860161360d565b92505060206138ff858286016138b7565b9150509250929050565b5f806040838503121561391f5761391e6135c3565b5b5f61392c8582860161360d565b925050602061393d8582860161360d565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061398b57607f821691505b60208210810361399e5761399d613947565b5b50919050565b7f4e6f7420417574680000000000000000000000000000000000000000000000005f82015250565b5f6139d8600883613523565b91506139e3826139a4565b602082019050919050565b5f6020820190508181035f830152613a05816139cc565b9050919050565b7f43616e742052656d6f766520546f6b656e7320546861742041726520416c6c6f5f8201527f636174656420666f72207377617070696e670000000000000000000000000000602082015250565b5f613a66603283613523565b9150613a7182613a0c565b604082019050919050565b5f6020820190508181035f830152613a9381613a5a565b9050919050565b7f4e6f20746f6b656e7320696e20636f6e747261637400000000000000000000005f82015250565b5f613ace601583613523565b9150613ad982613a9a565b602082019050919050565b5f6020820190508181035f830152613afb81613ac2565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f613b5c602883613523565b9150613b6782613b02565b604082019050919050565b5f6020820190508181035f830152613b8981613b50565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f613bc782613621565b9150613bd283613621565b9250828201905080821115613bea57613be9613b90565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f613c24602083613523565b9150613c2f82613bf0565b602082019050919050565b5f6020820190508181035f830152613c5181613c18565b9050919050565b5f613c6282613621565b9150613c6d83613621565b9250828202613c7b81613621565b91508282048414831517613c9257613c91613b90565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f613cd082613621565b9150613cdb83613621565b925082613ceb57613cea613c99565b5b828204905092915050565b7f43616e6e6f7420736574206d61782074786e20616d6f756e74206c6f776572205f8201527f7468616e20302e32250000000000000000000000000000000000000000000000602082015250565b5f613d50602983613523565b9150613d5b82613cf6565b604082019050919050565b5f6020820190508181035f830152613d7d81613d44565b9050919050565b7f4e6f20746f6b656e7320746f20737761700000000000000000000000000000005f82015250565b5f613db8601183613523565b9150613dc382613d84565b602082019050919050565b5f6020820190508181035f830152613de581613dac565b9050919050565b7f4d757374206b656570206665657320617420323025206f72206c6573730000005f82015250565b5f613e20601d83613523565b9150613e2b82613dec565b602082019050919050565b5f6020820190508181035f830152613e4d81613e14565b9050919050565b7f4d757374206b656570206665657320617420333025206f72206c6573730000005f82015250565b5f613e88601d83613523565b9150613e9382613e54565b602082019050919050565b5f6020820190508181035f830152613eb581613e7c565b9050919050565b7f54726164696e6720616c7265616479206c6976652100000000000000000000005f82015250565b5f613ef0601583613523565b9150613efb82613ebc565b602082019050919050565b5f6020820190508181035f830152613f1d81613ee4565b9050919050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d205f8201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b5f613f7e603983613523565b9150613f8982613f24565b604082019050919050565b5f6020820190508181035f830152613fab81613f72565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f61400c602583613523565b915061401782613fb2565b604082019050919050565b5f6020820190508181035f83015261403981614000565b9050919050565b7f43616e6e6f7420736574206d61782077616c6c657420616d6f756e74206c6f775f8201527f6572207468616e20302e33250000000000000000000000000000000000000000602082015250565b5f61409a602c83613523565b91506140a582614040565b604082019050919050565b5f6020820190508181035f8301526140c78161408e565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e5f8201527f20302e3030312520746f74616c20737570706c792e0000000000000000000000602082015250565b5f614128603583613523565b9150614133826140ce565b604082019050919050565b5f6020820190508181035f8301526141558161411c565b9050919050565b7f5377617020616d6f756e742063616e6e6f7420626520686967686572207468615f8201527f6e20302e352520746f74616c20737570706c792e000000000000000000000000602082015250565b5f6141b6603483613523565b91506141c18261415c565b604082019050919050565b5f6020820190508181035f8301526141e3816141aa565b9050919050565b5f81905092915050565b50565b5f6142025f836141ea565b915061420d826141f4565b5f82019050919050565b5f614221826141f7565b9150819050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f614285602683613523565b91506142908261422b565b604082019050919050565b5f6020820190508181035f8301526142b281614279565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f614313602483613523565b915061431e826142b9565b604082019050919050565b5f6020820190508181035f83015261434081614307565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6143a1602283613523565b91506143ac82614347565b604082019050919050565b5f6020820190508181035f8301526143ce81614395565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f61442f602583613523565b915061443a826143d5565b604082019050919050565b5f6020820190508181035f83015261445c81614423565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6144bd602383613523565b91506144c882614463565b604082019050919050565b5f6020820190508181035f8301526144ea816144b1565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f61454b602683613523565b9150614556826144f1565b604082019050919050565b5f6020820190508181035f8301526145788161453f565b9050919050565b7f616d6f756e74206d7573742062652067726561746572207468616e20300000005f82015250565b5f6145b3601d83613523565b91506145be8261457f565b602082019050919050565b5f6020820190508181035f8301526145e0816145a7565b9050919050565b7f54726164696e67206973206e6f74206163746976652e000000000000000000005f82015250565b5f61461b601683613523565b9150614626826145e7565b602082019050919050565b5f6020820190508181035f8301526146488161460f565b9050919050565b7f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f5f8201527f7765642e00000000000000000000000000000000000000000000000000000000602082015250565b5f6146a9602483613523565b91506146b48261464f565b604082019050919050565b5f6020820190508181035f8301526146d68161469d565b9050919050565b7f427579207472616e7366657220616d6f756e74206578636565647320746865205f8201527f6d61782074786e2e000000000000000000000000000000000000000000000000602082015250565b5f614737602883613523565b9150614742826146dd565b604082019050919050565b5f6020820190508181035f8301526147648161472b565b9050919050565b7f43616e6e6f7420457863656564206d61782077616c6c657400000000000000005f82015250565b5f61479f601883613523565b91506147aa8261476b565b602082019050919050565b5f6020820190508181035f8301526147cc81614793565b9050919050565b7f53656c6c207472616e7366657220616d6f756e742065786365656473207468655f8201527f206d61782074786e2e0000000000000000000000000000000000000000000000602082015250565b5f61482d602983613523565b9150614838826147d3565b604082019050919050565b5f6020820190508181035f83015261485a81614821565b9050919050565b5f61486b82613621565b915061487683613621565b925082820390508181111561488e5761488d613b90565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f815190506148fc816135f7565b92915050565b5f60208284031215614917576149166135c3565b5b5f614924848285016148ee565b91505092915050565b5f819050919050565b5f61495061494b6149468461492d565b6136f0565b613621565b9050919050565b61496081614936565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b614998816135e6565b82525050565b5f6149a9838361498f565b60208301905092915050565b5f602082019050919050565b5f6149cb82614966565b6149d58185614970565b93506149e083614980565b805f5b83811015614a105781516149f7888261499e565b9750614a02836149b5565b9250506001810190506149e3565b5085935050505092915050565b5f60a082019050614a305f830188613764565b614a3d6020830187614957565b8181036040830152614a4f81866149c1565b9050614a5e606083018561383b565b614a6b6080830184613764565b969550505050505056fea264697066735822122050501e34f90ae11ca342c4ce04dbeb8444ebc1b6e1bb8d4ad5febf6fb5c40cd364736f6c63430008180033

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

0000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000009896800000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000019000000000000000000000000cce95d24f3892055757d06ca7eef0d657c3fa6af000000000000000000000000b50a0b9a543ec757ae056b65d44a1033707e275e0000000000000000000000000000000000000000000000000000000000000007434855424341540000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044348554200000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _tokenName (string): CHUBCAT
Arg [1] : _tokenSymbol (string): CHUB
Arg [2] : _totalSupply (uint256): 10000000
Arg [3] : _maxTx (uint256): 2
Arg [4] : _maxWallet (uint256): 2
Arg [5] : _buyTax (uint256): 20
Arg [6] : _sellTax (uint256): 25
Arg [7] : _teamWallet (address): 0xCcE95d24f3892055757d06cA7eEF0d657C3fA6AF
Arg [8] : _marketingWallet (address): 0xB50A0B9A543EC757AE056b65D44a1033707e275E

-----Encoded View---------------
13 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000120
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000160
Arg [2] : 0000000000000000000000000000000000000000000000000000000000989680
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000002
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000002
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000014
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000019
Arg [7] : 000000000000000000000000cce95d24f3892055757d06ca7eef0d657c3fa6af
Arg [8] : 000000000000000000000000b50a0b9a543ec757ae056b65d44a1033707e275e
Arg [9] : 0000000000000000000000000000000000000000000000000000000000000007
Arg [10] : 4348554243415400000000000000000000000000000000000000000000000000
Arg [11] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [12] : 4348554200000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

7570:12426:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2013:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2993:194;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8336:63;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7986:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19339:380;;;;;;;;;;;;;:::i;:::-;;7612:48;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2334:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3195:529;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8211:22;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2233:93;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3732:290;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11307:306;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8183:21;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7667:38;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7946:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18997:295;;;;;;;;;;;;;:::i;:::-;;7849:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12380:285;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8024:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2450:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6411:150;;;;;;;;;;;;;:::i;:::-;;11063:236;;;;;;;;;;;;;:::i;:::-;;12673:169;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8242:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10830:199;;;;;;;;;;;;;:::i;:::-;;6197:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2121:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12850:364;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4030:475;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2601:200;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8406:57;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13469:182;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11621:315;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8135:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7745:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11944:428;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2809:176;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19769:224;;;;;;;;;;;;;:::i;:::-;;7809:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6569:281;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7714:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2013:100;2067:13;2100:5;2093:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2013:100;:::o;2993:194::-;3101:4;3118:39;3127:12;:10;:12::i;:::-;3141:7;3150:6;3118:8;:39::i;:::-;3175:4;3168:11;;2993:194;;;;:::o;8336:63::-;;;;;;;;;;;;;;;;;;;;;;:::o;7986:31::-;;;;;;;;;;;;;:::o;19339:380::-;19415:9;;;;;;;;;;;19401:23;;:10;:23;;;19393:43;;;;;;;;;;;;:::i;:::-;;;;;;;;;19470:1;19455:11;;:16;19447:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;19537:20;19560:24;19578:4;19560:9;:24::i;:::-;19537:47;;19618:1;19603:12;:16;19595:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;19656:55;19680:4;19687:9;;;;;;;;;;;19698:12;19656:15;:55::i;:::-;19382:337;19339:380::o;7612:48::-;;;:::o;2334:108::-;2395:7;2422:12;;2415:19;;2334:108;:::o;3195:529::-;3335:4;3352:36;3362:6;3370:9;3381:6;3352:9;:36::i;:::-;3401:24;3428:11;:19;3440:6;3428:19;;;;;;;;;;;;;;;:33;3448:12;:10;:12::i;:::-;3428:33;;;;;;;;;;;;;;;;3401:60;;3514:6;3494:16;:26;;3472:116;;;;;;;;;;;;:::i;:::-;;;;;;;;;3624:57;3633:6;3641:12;:10;:12::i;:::-;3674:6;3655:16;:25;3624:8;:57::i;:::-;3712:4;3705:11;;;3195:529;;;;;:::o;8211:22::-;;;;:::o;2233:93::-;2291:5;2316:2;2309:9;;2233:93;:::o;3732:290::-;3845:4;3862:130;3885:12;:10;:12::i;:::-;3912:7;3971:10;3934:11;:25;3946:12;:10;:12::i;:::-;3934:25;;;;;;;;;;;;;;;:34;3960:7;3934:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;3862:8;:130::i;:::-;4010:4;4003:11;;3732:290;;;;:::o;11307:306::-;6334:12;:10;:12::i;:::-;6324:22;;:6;;;;;;;;;;;:22;;;6316:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11441:4:::1;11433;11428:1;11412:13;:11;:13::i;:::-;:17;;;;:::i;:::-;11411:26;;;;:::i;:::-;11410:35;;;;:::i;:::-;11400:6;:45;;11378:136;;;;;;;;;;;;:::i;:::-;;;;;;;;;11550:8;11540:6;:19;;;;:::i;:::-;11525:12;:34;;;;11575:30;11592:12;;11575:30;;;;;;:::i;:::-;;;;;;;;11307:306:::0;:::o;8183:21::-;;;;:::o;7667:38::-;;;:::o;7946:33::-;;;;;;;;;;;;;:::o;18997:295::-;19062:9;;;;;;;;;;;19048:23;;:10;:23;;;19040:43;;;;;;;;;;;;:::i;:::-;;;;;;;;;19130:1;19102:24;19120:4;19102:9;:24::i;:::-;:29;;19094:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;19175:4;19164:8;;:15;;;;;;;;;;;;;;;;;;19190:13;:11;:13::i;:::-;19225:5;19214:8;;:16;;;;;;;;;;;;;;;;;;19246:38;19268:15;19246:38;;;;;;:::i;:::-;;;;;;;;18997:295::o;7849:24::-;;;;:::o;12380:285::-;6334:12;:10;:12::i;:::-;6324:22;;:6;;;;;;;;;;;:22;;;6316:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12474:7:::1;12465:6;:16;;;;12502:8;12492:7;:18;;;;12547:2;12539:3;12530:6;;:12;;;;:::i;:::-;12529:20;;12521:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;12621:2;12613:3;12603:7;;:13;;;;:::i;:::-;12602:21;;12594:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;12380:285:::0;;:::o;8024:31::-;;;;;;;;;;;;;:::o;2450:143::-;2540:7;2567:9;:18;2577:7;2567:18;;;;;;;;;;;;;;;;2560:25;;2450:143;;;:::o;6411:150::-;6334:12;:10;:12::i;:::-;6324:22;;:6;;;;;;;;;;;:22;;;6316:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6520:1:::1;6483:40;;6504:6;;;;;;;;;;;6483:40;;;;;;;;;;;;6551:1;6534:6;;:19;;;;;;;;;;;;;;;;;;6411:150::o:0;11063:236::-;6334:12;:10;:12::i;:::-;6324:22;;:6;;;;;;;;;;;:22;;;6316:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11134:5:::1;11117:14;;:22;;;;;;;;;;;;;;;;;;11173:5;11150:20;;:28;;;;;;;;;;;;;;;;;;11232:3;11227:1;11211:13;:11;:13::i;:::-;:17;;;;:::i;:::-;11210:25;;;;:::i;:::-;11189:18;:46;;;;11258:2;11246:9;:14;;;;11276:15;;;;;;;;;;11063:236::o:0;12673:169::-;6334:12;:10;:12::i;:::-;6324:22;;:6;;;;;;;;;;;:22;;;6316:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12830:4:::1;12788:31;:39;12820:6;12788:39;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;12673:169:::0;;:::o;8242:26::-;;;;:::o;10830:199::-;6334:12;:10;:12::i;:::-;6324:22;;:6;;;;;;;;;;;:22;;;6316:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10894:11:::1;;;;;;;;;;;10893:12;10885:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;10956:4;10942:11;;:18;;;;;;;;;;;;;;;;;;10985:4;10971:11;;:18;;;;;;;;;;;;;;;;;;11005:16;;;;;;;;;;10830:199::o:0;6197:79::-;6235:7;6262:6;;;;;;;;;;;6255:13;;6197:79;:::o;2121:104::-;2177:13;2210:7;2203:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2121:104;:::o;12850:364::-;6334:12;:10;:12::i;:::-;6324:22;;:6;;;;;;;;;;;:22;;;6316:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12998:13:::1;12990:21;;:4;:21;;::::0;12968:128:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;13109:41;13138:4;13144:5;13109:28;:41::i;:::-;13200:5;13166:40;;13194:4;13166:40;;;;;;;;;;;;12850:364:::0;;:::o;4030:475::-;4148:4;4165:24;4192:11;:25;4204:12;:10;:12::i;:::-;4192:25;;;;;;;;;;;;;;;:34;4218:7;4192:34;;;;;;;;;;;;;;;;4165:61;;4279:15;4259:16;:35;;4237:122;;;;;;;;;;;;:::i;:::-;;;;;;;;;4395:67;4404:12;:10;:12::i;:::-;4418:7;4446:15;4427:16;:34;4395:8;:67::i;:::-;4493:4;4486:11;;;4030:475;;;;:::o;2601:200::-;2712:4;2729:42;2739:12;:10;:12::i;:::-;2753:9;2764:6;2729:9;:42::i;:::-;2789:4;2782:11;;2601:200;;;;:::o;8406:57::-;;;;;;;;;;;;;;;;;;;;;;:::o;13469:182::-;6334:12;:10;:12::i;:::-;6324:22;;:6;;;;;;;;;;;:22;;;6316:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13585:8:::1;13554:19;:28;13574:7;13554:28;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;13625:7;13609:34;;;13634:8;13609:34;;;;;;:::i;:::-;;;;;;;;13469:182:::0;;:::o;11621:315::-;6334:12;:10;:12::i;:::-;6324:22;;:6;;;;;;;;;;;:22;;;6316:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11761:4:::1;11753;11748:1;11732:13;:11;:13::i;:::-;:17;;;;:::i;:::-;11731:26;;;;:::i;:::-;11730:35;;;;:::i;:::-;11720:6;:45;;11698:139;;;;;;;;;;;;:::i;:::-;;;;;;;;;11870:8;11860:6;:19;;;;:::i;:::-;11848:9;:31;;;;11895:33;11918:9;;11895:33;;;;;;:::i;:::-;;;;;;;;11621:315:::0;:::o;8135:39::-;;;;;;;;;;;;;:::o;7745:27::-;;;;:::o;11944:428::-;6334:12;:10;:12::i;:::-;6324:22;;:6;;;;;;;;;;;:22;;;6316:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12084:6:::1;12079:1;12063:13;:11;:13::i;:::-;:17;;;;:::i;:::-;12062:28;;;;:::i;:::-;12049:9;:41;;12027:144;;;;;;;;;;;;:::i;:::-;;;;;;;;;12239:4;12234:1;12218:13;:11;:13::i;:::-;:17;;;;:::i;:::-;12217:26;;;;:::i;:::-;12204:9;:39;;12182:141;;;;;;;;;;;;:::i;:::-;;;;;;;;;12355:9;12334:18;:30;;;;11944:428:::0;:::o;2809:176::-;2923:7;2950:11;:18;2962:5;2950:18;;;;;;;;;;;;;;;:27;2969:7;2950:27;;;;;;;;;;;;;;;;2943:34;;2809:176;;;;:::o;19769:224::-;19834:9;;;;;;;;;;;19820:23;;:10;:23;;;19812:43;;;;;;;;;;;;:::i;:::-;;;;;;;;;19866:12;19911:10;19903:24;;19935:21;19903:82;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19889:96;;;;;19801:192;19769:224::o;7809:33::-;;;;:::o;6569:281::-;6334:12;:10;:12::i;:::-;6324:22;;:6;;;;;;;;;;;:22;;;6316:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6692:1:::1;6672:22;;:8;:22;;::::0;6650:110:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;6805:8;6776:38;;6797:6;;;;;;;;;;;6776:38;;;;;;;;;;;;6834:8;6825:6;;:17;;;;;;;;;;;;;;;;;;6569:281:::0;:::o;7714:24::-;;;;:::o;227:98::-;280:7;307:10;300:17;;227:98;:::o;5466:380::-;5619:1;5602:19;;:5;:19;;;5594:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5700:1;5681:21;;:7;:21;;;5673:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5784:6;5754:11;:18;5766:5;5754:18;;;;;;;;;;;;;;;:27;5773:7;5754:27;;;;;;;;;;;;;;;:36;;;;5822:7;5806:32;;5815:5;5806:32;;;5831:6;5806:32;;;;;;:::i;:::-;;;;;;;;5466:380;;;:::o;4513:651::-;4671:1;4653:20;;:6;:20;;;4645:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;4755:1;4734:23;;:9;:23;;;4726:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;4810:21;4834:9;:17;4844:6;4834:17;;;;;;;;;;;;;;;;4810:41;;4901:6;4884:13;:23;;4862:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;5045:6;5029:13;:22;5009:9;:17;5019:6;5009:17;;;;;;;;;;;;;;;:42;;;;5097:6;5073:9;:20;5083:9;5073:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;5138:9;5121:35;;5130:6;5121:35;;;5149:6;5121:35;;;;;;:::i;:::-;;;;;;;;4634:530;4513:651;;;:::o;13659:3913::-;13807:1;13791:18;;:4;:18;;;13783:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;13884:1;13870:16;;:2;:16;;;13862:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;13954:1;13945:6;:10;13937:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;14007:11;;;;;;;;;;;14002:181;;14061:19;:25;14081:4;14061:25;;;;;;;;;;;;;;;;;;;;;;;;;:52;;;;14090:19;:23;14110:2;14090:23;;;;;;;;;;;;;;;;;;;;;;;;;14061:52;14035:136;;;;;;;;;;;;:::i;:::-;;;;;;;;;14002:181;14201:14;;;;;;;;;;;14197:2105;;;14262:7;:5;:7::i;:::-;14254:15;;:4;:15;;;;:49;;;;;14296:7;:5;:7::i;:::-;14290:13;;:2;:13;;;;14254:49;:86;;;;;14338:1;14324:16;;:2;:16;;;;14254:86;:128;;;;;14375:6;14361:21;;:2;:21;;;;14254:128;:175;;;;;14404:19;:25;14424:4;14404:25;;;;;;;;;;;;;;;;;;;;;;;;;14403:26;14254:175;:220;;;;;14451:19;:23;14471:2;14451:23;;;;;;;;;;;;;;;;;;;;;;;;;14450:24;14254:220;14232:2059;;;14555:20;;;;;;;;;;;14551:562;;;14644:15;14630:30;;:2;:30;;;;:87;;;;;14703:13;14689:28;;:2;:28;;;;14630:87;14600:494;;;14881:12;14806:28;:39;14835:9;14806:39;;;;;;;;;;;;;;;;:87;14768:221;;;;;;;;;;;;:::i;:::-;;;;;;;;;15058:12;15016:28;:39;15045:9;15016:39;;;;;;;;;;;;;;;:54;;;;14600:494;14551:562;15187:25;:31;15213:4;15187:31;;;;;;;;;;;;;;;;;;;;;;;;;:92;;;;;15244:31;:35;15276:2;15244:35;;;;;;;;;;;;;;;;;;;;;;;;;15243:36;15187:92;15161:1115;;;15366:12;;15356:6;:22;;15322:148;;;;;;;;;;;;:::i;:::-;;;;;;;;;15553:9;;15536:13;15546:2;15536:9;:13::i;:::-;15527:6;:22;;;;:::i;:::-;:35;;15493:145;;;;;;;;;;;;:::i;:::-;;;;;;;;;15161:1115;;;15736:25;:29;15762:2;15736:29;;;;;;;;;;;;;;;;;;;;;;;;;:92;;;;;15791:31;:37;15823:4;15791:37;;;;;;;;;;;;;;;;;;;;;;;;;15790:38;15736:92;15710:566;;;15915:12;;15905:6;:22;;15871:149;;;;;;;;;;;;:::i;:::-;;;;;;;;;15710:566;;;16051:31;:35;16083:2;16051:35;;;;;;;;;;;;;;;;;;;;;;;;;16046:230;;16171:9;;16154:13;16164:2;16154:9;:13::i;:::-;16145:6;:22;;;;:::i;:::-;:35;;16111:145;;;;;;;;;;;;:::i;:::-;;;;;;;;;16046:230;15710:566;15161:1115;14232:2059;14197:2105;16314:28;16345:24;16363:4;16345:9;:24::i;:::-;16314:55;;16382:12;16421:18;;16397:20;:42;;16382:57;;16470:7;:35;;;;;16494:11;;;;;;;;;;;16470:35;:61;;;;;16523:8;;;;;;;;;;;16522:9;16470:61;:110;;;;;16549:25;:31;16575:4;16549:31;;;;;;;;;;;;;;;;;;;;;;;;;16548:32;16470:110;:153;;;;;16598:19;:25;16618:4;16598:25;;;;;;;;;;;;;;;;;;;;;;;;;16597:26;16470:153;:194;;;;;16641:19;:23;16661:2;16641:23;;;;;;;;;;;;;;;;;;;;;;;;;16640:24;16470:194;16452:329;;;16702:4;16691:8;;:15;;;;;;;;;;;;;;;;;;16723:13;:11;:13::i;:::-;16764:5;16753:8;;:16;;;;;;;;;;;;;;;;;;16452:329;16793:12;16808:4;16793:19;;16829;:25;16849:4;16829:25;;;;;;;;;;;;;;;;;;;;;;;;;:52;;;;16858:19;:23;16878:2;16858:23;;;;;;;;;;;;;;;;;;;;;;;;;16829:52;16825:100;;;16908:5;16898:15;;16825:100;16937:12;16970:7;16966:553;;;17023:25;:29;17049:2;17023:29;;;;;;;;;;;;;;;;;;;;;;;;;:44;;;;;17066:1;17056:7;;:11;17023:44;17019:351;;;17116:3;17105:7;;17096:6;:16;;;;:::i;:::-;17095:24;;;;:::i;:::-;17088:31;;17153:4;17138:11;;:19;;;;;;;:::i;:::-;;;;;;;;17019:351;;;17220:25;:31;17246:4;17220:31;;;;;;;;;;;;;;;;;;;;;;;;;:45;;;;;17264:1;17255:6;;:10;17220:45;17216:154;;;17313:3;17303:6;;17294;:15;;;;:::i;:::-;17293:23;;;;:::i;:::-;17286:30;;17350:4;17335:11;;:19;;;;;;;:::i;:::-;;;;;;;;17216:154;17019:351;17397:1;17390:4;:8;17386:91;;;17419:42;17435:4;17449;17456;17419:15;:42::i;:::-;17386:91;17503:4;17493:14;;;;;:::i;:::-;;;16966:553;17531:33;17547:4;17553:2;17557:6;17531:15;:33::i;:::-;13772:3800;;;;13659:3913;;;:::o;18065:889::-;18107:23;18133:24;18151:4;18133:9;:24::i;:::-;18107:50;;18168:25;18196:11;;18168:39;;18243:1;18224:15;:20;:46;;;;18269:1;18248:17;:22;18224:46;18220:85;;;18287:7;;;;18220:85;18321:14;;;;;;;;;;;18317:352;;;18395:9;;18374:18;;:30;;;;:::i;:::-;18356:15;:48;18352:137;;;18464:9;;18443:18;;:30;;;;:::i;:::-;18425:48;;18352:137;18317:352;;;18564:9;;18543:18;;:30;;;;:::i;:::-;18525:15;:48;18521:137;;;18633:9;;18612:18;;:30;;;;:::i;:::-;18594:48;;18521:137;18317:352;18681:12;18706:33;18723:15;18706:16;:33::i;:::-;18766:1;18752:11;:15;;;;18808:1;18784:21;:25;18780:167;;;18848:15;;;;;;;;;;;18840:29;;18877:21;18840:95;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18826:109;;;;;18780:167;18096:858;;;18065:889;:::o;13222:239::-;13339:5;13305:25;:31;13331:4;13305:31;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;13357:38;13383:4;13389:5;13357:25;:38::i;:::-;13447:5;13413:40;;13441:4;13413:40;;;;;;;;;;;;13222:239;;:::o;17580:475::-;17646:21;17684:1;17670:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17646:40;;17715:4;17697;17702:1;17697:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;17741:15;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17731:4;17736:1;17731:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;;;17776:62;17793:4;17808:15;17826:11;17776:8;:62::i;:::-;17851:15;:66;;;17932:11;17958:1;17974:4;18001;18021:15;17851:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17635:420;17580:475;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:329::-;3505:6;3554:2;3542:9;3533:7;3529:23;3525:32;3522:119;;;3560:79;;:::i;:::-;3522:119;3680:1;3705:53;3750:7;3741:6;3730:9;3726:22;3705:53;:::i;:::-;3695:63;;3651:117;3446:329;;;;:::o;3781:60::-;3809:3;3830:5;3823:12;;3781:60;;;:::o;3847:142::-;3897:9;3930:53;3948:34;3957:24;3975:5;3957:24;:::i;:::-;3948:34;:::i;:::-;3930:53;:::i;:::-;3917:66;;3847:142;;;:::o;3995:126::-;4045:9;4078:37;4109:5;4078:37;:::i;:::-;4065:50;;3995:126;;;:::o;4127:149::-;4200:9;4233:37;4264:5;4233:37;:::i;:::-;4220:50;;4127:149;;;:::o;4282:177::-;4392:60;4446:5;4392:60;:::i;:::-;4387:3;4380:73;4282:177;;:::o;4465:268::-;4581:4;4619:2;4608:9;4604:18;4596:26;;4632:94;4723:1;4712:9;4708:17;4699:6;4632:94;:::i;:::-;4465:268;;;;:::o;4739:118::-;4826:24;4844:5;4826:24;:::i;:::-;4821:3;4814:37;4739:118;;:::o;4863:222::-;4956:4;4994:2;4983:9;4979:18;4971:26;;5007:71;5075:1;5064:9;5060:17;5051:6;5007:71;:::i;:::-;4863:222;;;;:::o;5091:619::-;5168:6;5176;5184;5233:2;5221:9;5212:7;5208:23;5204:32;5201:119;;;5239:79;;:::i;:::-;5201:119;5359:1;5384:53;5429:7;5420:6;5409:9;5405:22;5384:53;:::i;:::-;5374:63;;5330:117;5486:2;5512:53;5557:7;5548:6;5537:9;5533:22;5512:53;:::i;:::-;5502:63;;5457:118;5614:2;5640:53;5685:7;5676:6;5665:9;5661:22;5640:53;:::i;:::-;5630:63;;5585:118;5091:619;;;;;:::o;5716:86::-;5751:7;5791:4;5784:5;5780:16;5769:27;;5716:86;;;:::o;5808:112::-;5891:22;5907:5;5891:22;:::i;:::-;5886:3;5879:35;5808:112;;:::o;5926:214::-;6015:4;6053:2;6042:9;6038:18;6030:26;;6066:67;6130:1;6119:9;6115:17;6106:6;6066:67;:::i;:::-;5926:214;;;;:::o;6146:329::-;6205:6;6254:2;6242:9;6233:7;6229:23;6225:32;6222:119;;;6260:79;;:::i;:::-;6222:119;6380:1;6405:53;6450:7;6441:6;6430:9;6426:22;6405:53;:::i;:::-;6395:63;;6351:117;6146:329;;;;:::o;6481:118::-;6568:24;6586:5;6568:24;:::i;:::-;6563:3;6556:37;6481:118;;:::o;6605:222::-;6698:4;6736:2;6725:9;6721:18;6713:26;;6749:71;6817:1;6806:9;6802:17;6793:6;6749:71;:::i;:::-;6605:222;;;;:::o;6833:474::-;6901:6;6909;6958:2;6946:9;6937:7;6933:23;6929:32;6926:119;;;6964:79;;:::i;:::-;6926:119;7084:1;7109:53;7154:7;7145:6;7134:9;7130:22;7109:53;:::i;:::-;7099:63;;7055:117;7211:2;7237:53;7282:7;7273:6;7262:9;7258:22;7237:53;:::i;:::-;7227:63;;7182:118;6833:474;;;;;:::o;7313:116::-;7383:21;7398:5;7383:21;:::i;:::-;7376:5;7373:32;7363:60;;7419:1;7416;7409:12;7363:60;7313:116;:::o;7435:133::-;7478:5;7516:6;7503:20;7494:29;;7532:30;7556:5;7532:30;:::i;:::-;7435:133;;;;:::o;7574:468::-;7639:6;7647;7696:2;7684:9;7675:7;7671:23;7667:32;7664:119;;;7702:79;;:::i;:::-;7664:119;7822:1;7847:53;7892:7;7883:6;7872:9;7868:22;7847:53;:::i;:::-;7837:63;;7793:117;7949:2;7975:50;8017:7;8008:6;7997:9;7993:22;7975:50;:::i;:::-;7965:60;;7920:115;7574:468;;;;;:::o;8048:474::-;8116:6;8124;8173:2;8161:9;8152:7;8148:23;8144:32;8141:119;;;8179:79;;:::i;:::-;8141:119;8299:1;8324:53;8369:7;8360:6;8349:9;8345:22;8324:53;:::i;:::-;8314:63;;8270:117;8426:2;8452:53;8497:7;8488:6;8477:9;8473:22;8452:53;:::i;:::-;8442:63;;8397:118;8048:474;;;;;:::o;8528:180::-;8576:77;8573:1;8566:88;8673:4;8670:1;8663:15;8697:4;8694:1;8687:15;8714:320;8758:6;8795:1;8789:4;8785:12;8775:22;;8842:1;8836:4;8832:12;8863:18;8853:81;;8919:4;8911:6;8907:17;8897:27;;8853:81;8981:2;8973:6;8970:14;8950:18;8947:38;8944:84;;9000:18;;:::i;:::-;8944:84;8765:269;8714:320;;;:::o;9040:158::-;9180:10;9176:1;9168:6;9164:14;9157:34;9040:158;:::o;9204:365::-;9346:3;9367:66;9431:1;9426:3;9367:66;:::i;:::-;9360:73;;9442:93;9531:3;9442:93;:::i;:::-;9560:2;9555:3;9551:12;9544:19;;9204:365;;;:::o;9575:419::-;9741:4;9779:2;9768:9;9764:18;9756:26;;9828:9;9822:4;9818:20;9814:1;9803:9;9799:17;9792:47;9856:131;9982:4;9856:131;:::i;:::-;9848:139;;9575:419;;;:::o;10000:237::-;10140:34;10136:1;10128:6;10124:14;10117:58;10209:20;10204:2;10196:6;10192:15;10185:45;10000:237;:::o;10243:366::-;10385:3;10406:67;10470:2;10465:3;10406:67;:::i;:::-;10399:74;;10482:93;10571:3;10482:93;:::i;:::-;10600:2;10595:3;10591:12;10584:19;;10243:366;;;:::o;10615:419::-;10781:4;10819:2;10808:9;10804:18;10796:26;;10868:9;10862:4;10858:20;10854:1;10843:9;10839:17;10832:47;10896:131;11022:4;10896:131;:::i;:::-;10888:139;;10615:419;;;:::o;11040:171::-;11180:23;11176:1;11168:6;11164:14;11157:47;11040:171;:::o;11217:366::-;11359:3;11380:67;11444:2;11439:3;11380:67;:::i;:::-;11373:74;;11456:93;11545:3;11456:93;:::i;:::-;11574:2;11569:3;11565:12;11558:19;;11217:366;;;:::o;11589:419::-;11755:4;11793:2;11782:9;11778:18;11770:26;;11842:9;11836:4;11832:20;11828:1;11817:9;11813:17;11806:47;11870:131;11996:4;11870:131;:::i;:::-;11862:139;;11589:419;;;:::o;12014:227::-;12154:34;12150:1;12142:6;12138:14;12131:58;12223:10;12218:2;12210:6;12206:15;12199:35;12014:227;:::o;12247:366::-;12389:3;12410:67;12474:2;12469:3;12410:67;:::i;:::-;12403:74;;12486:93;12575:3;12486:93;:::i;:::-;12604:2;12599:3;12595:12;12588:19;;12247:366;;;:::o;12619:419::-;12785:4;12823:2;12812:9;12808:18;12800:26;;12872:9;12866:4;12862:20;12858:1;12847:9;12843:17;12836:47;12900:131;13026:4;12900:131;:::i;:::-;12892:139;;12619:419;;;:::o;13044:180::-;13092:77;13089:1;13082:88;13189:4;13186:1;13179:15;13213:4;13210:1;13203:15;13230:191;13270:3;13289:20;13307:1;13289:20;:::i;:::-;13284:25;;13323:20;13341:1;13323:20;:::i;:::-;13318:25;;13366:1;13363;13359:9;13352:16;;13387:3;13384:1;13381:10;13378:36;;;13394:18;;:::i;:::-;13378:36;13230:191;;;;:::o;13427:182::-;13567:34;13563:1;13555:6;13551:14;13544:58;13427:182;:::o;13615:366::-;13757:3;13778:67;13842:2;13837:3;13778:67;:::i;:::-;13771:74;;13854:93;13943:3;13854:93;:::i;:::-;13972:2;13967:3;13963:12;13956:19;;13615:366;;;:::o;13987:419::-;14153:4;14191:2;14180:9;14176:18;14168:26;;14240:9;14234:4;14230:20;14226:1;14215:9;14211:17;14204:47;14268:131;14394:4;14268:131;:::i;:::-;14260:139;;13987:419;;;:::o;14412:410::-;14452:7;14475:20;14493:1;14475:20;:::i;:::-;14470:25;;14509:20;14527:1;14509:20;:::i;:::-;14504:25;;14564:1;14561;14557:9;14586:30;14604:11;14586:30;:::i;:::-;14575:41;;14765:1;14756:7;14752:15;14749:1;14746:22;14726:1;14719:9;14699:83;14676:139;;14795:18;;:::i;:::-;14676:139;14460:362;14412:410;;;;:::o;14828:180::-;14876:77;14873:1;14866:88;14973:4;14970:1;14963:15;14997:4;14994:1;14987:15;15014:185;15054:1;15071:20;15089:1;15071:20;:::i;:::-;15066:25;;15105:20;15123:1;15105:20;:::i;:::-;15100:25;;15144:1;15134:35;;15149:18;;:::i;:::-;15134:35;15191:1;15188;15184:9;15179:14;;15014:185;;;;:::o;15205:228::-;15345:34;15341:1;15333:6;15329:14;15322:58;15414:11;15409:2;15401:6;15397:15;15390:36;15205:228;:::o;15439:366::-;15581:3;15602:67;15666:2;15661:3;15602:67;:::i;:::-;15595:74;;15678:93;15767:3;15678:93;:::i;:::-;15796:2;15791:3;15787:12;15780:19;;15439:366;;;:::o;15811:419::-;15977:4;16015:2;16004:9;16000:18;15992:26;;16064:9;16058:4;16054:20;16050:1;16039:9;16035:17;16028:47;16092:131;16218:4;16092:131;:::i;:::-;16084:139;;15811:419;;;:::o;16236:167::-;16376:19;16372:1;16364:6;16360:14;16353:43;16236:167;:::o;16409:366::-;16551:3;16572:67;16636:2;16631:3;16572:67;:::i;:::-;16565:74;;16648:93;16737:3;16648:93;:::i;:::-;16766:2;16761:3;16757:12;16750:19;;16409:366;;;:::o;16781:419::-;16947:4;16985:2;16974:9;16970:18;16962:26;;17034:9;17028:4;17024:20;17020:1;17009:9;17005:17;16998:47;17062:131;17188:4;17062:131;:::i;:::-;17054:139;;16781:419;;;:::o;17206:179::-;17346:31;17342:1;17334:6;17330:14;17323:55;17206:179;:::o;17391:366::-;17533:3;17554:67;17618:2;17613:3;17554:67;:::i;:::-;17547:74;;17630:93;17719:3;17630:93;:::i;:::-;17748:2;17743:3;17739:12;17732:19;;17391:366;;;:::o;17763:419::-;17929:4;17967:2;17956:9;17952:18;17944:26;;18016:9;18010:4;18006:20;18002:1;17991:9;17987:17;17980:47;18044:131;18170:4;18044:131;:::i;:::-;18036:139;;17763:419;;;:::o;18188:179::-;18328:31;18324:1;18316:6;18312:14;18305:55;18188:179;:::o;18373:366::-;18515:3;18536:67;18600:2;18595:3;18536:67;:::i;:::-;18529:74;;18612:93;18701:3;18612:93;:::i;:::-;18730:2;18725:3;18721:12;18714:19;;18373:366;;;:::o;18745:419::-;18911:4;18949:2;18938:9;18934:18;18926:26;;18998:9;18992:4;18988:20;18984:1;18973:9;18969:17;18962:47;19026:131;19152:4;19026:131;:::i;:::-;19018:139;;18745:419;;;:::o;19170:171::-;19310:23;19306:1;19298:6;19294:14;19287:47;19170:171;:::o;19347:366::-;19489:3;19510:67;19574:2;19569:3;19510:67;:::i;:::-;19503:74;;19586:93;19675:3;19586:93;:::i;:::-;19704:2;19699:3;19695:12;19688:19;;19347:366;;;:::o;19719:419::-;19885:4;19923:2;19912:9;19908:18;19900:26;;19972:9;19966:4;19962:20;19958:1;19947:9;19943:17;19936:47;20000:131;20126:4;20000:131;:::i;:::-;19992:139;;19719:419;;;:::o;20144:244::-;20284:34;20280:1;20272:6;20268:14;20261:58;20353:27;20348:2;20340:6;20336:15;20329:52;20144:244;:::o;20394:366::-;20536:3;20557:67;20621:2;20616:3;20557:67;:::i;:::-;20550:74;;20633:93;20722:3;20633:93;:::i;:::-;20751:2;20746:3;20742:12;20735:19;;20394:366;;;:::o;20766:419::-;20932:4;20970:2;20959:9;20955:18;20947:26;;21019:9;21013:4;21009:20;21005:1;20994:9;20990:17;20983:47;21047:131;21173:4;21047:131;:::i;:::-;21039:139;;20766:419;;;:::o;21191:224::-;21331:34;21327:1;21319:6;21315:14;21308:58;21400:7;21395:2;21387:6;21383:15;21376:32;21191:224;:::o;21421:366::-;21563:3;21584:67;21648:2;21643:3;21584:67;:::i;:::-;21577:74;;21660:93;21749:3;21660:93;:::i;:::-;21778:2;21773:3;21769:12;21762:19;;21421:366;;;:::o;21793:419::-;21959:4;21997:2;21986:9;21982:18;21974:26;;22046:9;22040:4;22036:20;22032:1;22021:9;22017:17;22010:47;22074:131;22200:4;22074:131;:::i;:::-;22066:139;;21793:419;;;:::o;22218:231::-;22358:34;22354:1;22346:6;22342:14;22335:58;22427:14;22422:2;22414:6;22410:15;22403:39;22218:231;:::o;22455:366::-;22597:3;22618:67;22682:2;22677:3;22618:67;:::i;:::-;22611:74;;22694:93;22783:3;22694:93;:::i;:::-;22812:2;22807:3;22803:12;22796:19;;22455:366;;;:::o;22827:419::-;22993:4;23031:2;23020:9;23016:18;23008:26;;23080:9;23074:4;23070:20;23066:1;23055:9;23051:17;23044:47;23108:131;23234:4;23108:131;:::i;:::-;23100:139;;22827:419;;;:::o;23252:240::-;23392:34;23388:1;23380:6;23376:14;23369:58;23461:23;23456:2;23448:6;23444:15;23437:48;23252:240;:::o;23498:366::-;23640:3;23661:67;23725:2;23720:3;23661:67;:::i;:::-;23654:74;;23737:93;23826:3;23737:93;:::i;:::-;23855:2;23850:3;23846:12;23839:19;;23498:366;;;:::o;23870:419::-;24036:4;24074:2;24063:9;24059:18;24051:26;;24123:9;24117:4;24113:20;24109:1;24098:9;24094:17;24087:47;24151:131;24277:4;24151:131;:::i;:::-;24143:139;;23870:419;;;:::o;24295:239::-;24435:34;24431:1;24423:6;24419:14;24412:58;24504:22;24499:2;24491:6;24487:15;24480:47;24295:239;:::o;24540:366::-;24682:3;24703:67;24767:2;24762:3;24703:67;:::i;:::-;24696:74;;24779:93;24868:3;24779:93;:::i;:::-;24897:2;24892:3;24888:12;24881:19;;24540:366;;;:::o;24912:419::-;25078:4;25116:2;25105:9;25101:18;25093:26;;25165:9;25159:4;25155:20;25151:1;25140:9;25136:17;25129:47;25193:131;25319:4;25193:131;:::i;:::-;25185:139;;24912:419;;;:::o;25337:147::-;25438:11;25475:3;25460:18;;25337:147;;;;:::o;25490:114::-;;:::o;25610:398::-;25769:3;25790:83;25871:1;25866:3;25790:83;:::i;:::-;25783:90;;25882:93;25971:3;25882:93;:::i;:::-;26000:1;25995:3;25991:11;25984:18;;25610:398;;;:::o;26014:379::-;26198:3;26220:147;26363:3;26220:147;:::i;:::-;26213:154;;26384:3;26377:10;;26014:379;;;:::o;26399:225::-;26539:34;26535:1;26527:6;26523:14;26516:58;26608:8;26603:2;26595:6;26591:15;26584:33;26399:225;:::o;26630:366::-;26772:3;26793:67;26857:2;26852:3;26793:67;:::i;:::-;26786:74;;26869:93;26958:3;26869:93;:::i;:::-;26987:2;26982:3;26978:12;26971:19;;26630:366;;;:::o;27002:419::-;27168:4;27206:2;27195:9;27191:18;27183:26;;27255:9;27249:4;27245:20;27241:1;27230:9;27226:17;27219:47;27283:131;27409:4;27283:131;:::i;:::-;27275:139;;27002:419;;;:::o;27427:223::-;27567:34;27563:1;27555:6;27551:14;27544:58;27636:6;27631:2;27623:6;27619:15;27612:31;27427:223;:::o;27656:366::-;27798:3;27819:67;27883:2;27878:3;27819:67;:::i;:::-;27812:74;;27895:93;27984:3;27895:93;:::i;:::-;28013:2;28008:3;28004:12;27997:19;;27656:366;;;:::o;28028:419::-;28194:4;28232:2;28221:9;28217:18;28209:26;;28281:9;28275:4;28271:20;28267:1;28256:9;28252:17;28245:47;28309:131;28435:4;28309:131;:::i;:::-;28301:139;;28028:419;;;:::o;28453:221::-;28593:34;28589:1;28581:6;28577:14;28570:58;28662:4;28657:2;28649:6;28645:15;28638:29;28453:221;:::o;28680:366::-;28822:3;28843:67;28907:2;28902:3;28843:67;:::i;:::-;28836:74;;28919:93;29008:3;28919:93;:::i;:::-;29037:2;29032:3;29028:12;29021:19;;28680:366;;;:::o;29052:419::-;29218:4;29256:2;29245:9;29241:18;29233:26;;29305:9;29299:4;29295:20;29291:1;29280:9;29276:17;29269:47;29333:131;29459:4;29333:131;:::i;:::-;29325:139;;29052:419;;;:::o;29477:224::-;29617:34;29613:1;29605:6;29601:14;29594:58;29686:7;29681:2;29673:6;29669:15;29662:32;29477:224;:::o;29707:366::-;29849:3;29870:67;29934:2;29929:3;29870:67;:::i;:::-;29863:74;;29946:93;30035:3;29946:93;:::i;:::-;30064:2;30059:3;30055:12;30048:19;;29707:366;;;:::o;30079:419::-;30245:4;30283:2;30272:9;30268:18;30260:26;;30332:9;30326:4;30322:20;30318:1;30307:9;30303:17;30296:47;30360:131;30486:4;30360:131;:::i;:::-;30352:139;;30079:419;;;:::o;30504:222::-;30644:34;30640:1;30632:6;30628:14;30621:58;30713:5;30708:2;30700:6;30696:15;30689:30;30504:222;:::o;30732:366::-;30874:3;30895:67;30959:2;30954:3;30895:67;:::i;:::-;30888:74;;30971:93;31060:3;30971:93;:::i;:::-;31089:2;31084:3;31080:12;31073:19;;30732:366;;;:::o;31104:419::-;31270:4;31308:2;31297:9;31293:18;31285:26;;31357:9;31351:4;31347:20;31343:1;31332:9;31328:17;31321:47;31385:131;31511:4;31385:131;:::i;:::-;31377:139;;31104:419;;;:::o;31529:225::-;31669:34;31665:1;31657:6;31653:14;31646:58;31738:8;31733:2;31725:6;31721:15;31714:33;31529:225;:::o;31760:366::-;31902:3;31923:67;31987:2;31982:3;31923:67;:::i;:::-;31916:74;;31999:93;32088:3;31999:93;:::i;:::-;32117:2;32112:3;32108:12;32101:19;;31760:366;;;:::o;32132:419::-;32298:4;32336:2;32325:9;32321:18;32313:26;;32385:9;32379:4;32375:20;32371:1;32360:9;32356:17;32349:47;32413:131;32539:4;32413:131;:::i;:::-;32405:139;;32132:419;;;:::o;32557:179::-;32697:31;32693:1;32685:6;32681:14;32674:55;32557:179;:::o;32742:366::-;32884:3;32905:67;32969:2;32964:3;32905:67;:::i;:::-;32898:74;;32981:93;33070:3;32981:93;:::i;:::-;33099:2;33094:3;33090:12;33083:19;;32742:366;;;:::o;33114:419::-;33280:4;33318:2;33307:9;33303:18;33295:26;;33367:9;33361:4;33357:20;33353:1;33342:9;33338:17;33331:47;33395:131;33521:4;33395:131;:::i;:::-;33387:139;;33114:419;;;:::o;33539:172::-;33679:24;33675:1;33667:6;33663:14;33656:48;33539:172;:::o;33717:366::-;33859:3;33880:67;33944:2;33939:3;33880:67;:::i;:::-;33873:74;;33956:93;34045:3;33956:93;:::i;:::-;34074:2;34069:3;34065:12;34058:19;;33717:366;;;:::o;34089:419::-;34255:4;34293:2;34282:9;34278:18;34270:26;;34342:9;34336:4;34332:20;34328:1;34317:9;34313:17;34306:47;34370:131;34496:4;34370:131;:::i;:::-;34362:139;;34089:419;;;:::o;34514:223::-;34654:34;34650:1;34642:6;34638:14;34631:58;34723:6;34718:2;34710:6;34706:15;34699:31;34514:223;:::o;34743:366::-;34885:3;34906:67;34970:2;34965:3;34906:67;:::i;:::-;34899:74;;34982:93;35071:3;34982:93;:::i;:::-;35100:2;35095:3;35091:12;35084:19;;34743:366;;;:::o;35115:419::-;35281:4;35319:2;35308:9;35304:18;35296:26;;35368:9;35362:4;35358:20;35354:1;35343:9;35339:17;35332:47;35396:131;35522:4;35396:131;:::i;:::-;35388:139;;35115:419;;;:::o;35540:227::-;35680:34;35676:1;35668:6;35664:14;35657:58;35749:10;35744:2;35736:6;35732:15;35725:35;35540:227;:::o;35773:366::-;35915:3;35936:67;36000:2;35995:3;35936:67;:::i;:::-;35929:74;;36012:93;36101:3;36012:93;:::i;:::-;36130:2;36125:3;36121:12;36114:19;;35773:366;;;:::o;36145:419::-;36311:4;36349:2;36338:9;36334:18;36326:26;;36398:9;36392:4;36388:20;36384:1;36373:9;36369:17;36362:47;36426:131;36552:4;36426:131;:::i;:::-;36418:139;;36145:419;;;:::o;36570:174::-;36710:26;36706:1;36698:6;36694:14;36687:50;36570:174;:::o;36750:366::-;36892:3;36913:67;36977:2;36972:3;36913:67;:::i;:::-;36906:74;;36989:93;37078:3;36989:93;:::i;:::-;37107:2;37102:3;37098:12;37091:19;;36750:366;;;:::o;37122:419::-;37288:4;37326:2;37315:9;37311:18;37303:26;;37375:9;37369:4;37365:20;37361:1;37350:9;37346:17;37339:47;37403:131;37529:4;37403:131;:::i;:::-;37395:139;;37122:419;;;:::o;37547:228::-;37687:34;37683:1;37675:6;37671:14;37664:58;37756:11;37751:2;37743:6;37739:15;37732:36;37547:228;:::o;37781:366::-;37923:3;37944:67;38008:2;38003:3;37944:67;:::i;:::-;37937:74;;38020:93;38109:3;38020:93;:::i;:::-;38138:2;38133:3;38129:12;38122:19;;37781:366;;;:::o;38153:419::-;38319:4;38357:2;38346:9;38342:18;38334:26;;38406:9;38400:4;38396:20;38392:1;38381:9;38377:17;38370:47;38434:131;38560:4;38434:131;:::i;:::-;38426:139;;38153:419;;;:::o;38578:194::-;38618:4;38638:20;38656:1;38638:20;:::i;:::-;38633:25;;38672:20;38690:1;38672:20;:::i;:::-;38667:25;;38716:1;38713;38709:9;38701:17;;38740:1;38734:4;38731:11;38728:37;;;38745:18;;:::i;:::-;38728:37;38578:194;;;;:::o;38778:180::-;38826:77;38823:1;38816:88;38923:4;38920:1;38913:15;38947:4;38944:1;38937:15;38964:180;39012:77;39009:1;39002:88;39109:4;39106:1;39099:15;39133:4;39130:1;39123:15;39150:143;39207:5;39238:6;39232:13;39223:22;;39254:33;39281:5;39254:33;:::i;:::-;39150:143;;;;:::o;39299:351::-;39369:6;39418:2;39406:9;39397:7;39393:23;39389:32;39386:119;;;39424:79;;:::i;:::-;39386:119;39544:1;39569:64;39625:7;39616:6;39605:9;39601:22;39569:64;:::i;:::-;39559:74;;39515:128;39299:351;;;;:::o;39656:85::-;39701:7;39730:5;39719:16;;39656:85;;;:::o;39747:158::-;39805:9;39838:61;39856:42;39865:32;39891:5;39865:32;:::i;:::-;39856:42;:::i;:::-;39838:61;:::i;:::-;39825:74;;39747:158;;;:::o;39911:147::-;40006:45;40045:5;40006:45;:::i;:::-;40001:3;39994:58;39911:147;;:::o;40064:114::-;40131:6;40165:5;40159:12;40149:22;;40064:114;;;:::o;40184:184::-;40283:11;40317:6;40312:3;40305:19;40357:4;40352:3;40348:14;40333:29;;40184:184;;;;:::o;40374:132::-;40441:4;40464:3;40456:11;;40494:4;40489:3;40485:14;40477:22;;40374:132;;;:::o;40512:108::-;40589:24;40607:5;40589:24;:::i;:::-;40584:3;40577:37;40512:108;;:::o;40626:179::-;40695:10;40716:46;40758:3;40750:6;40716:46;:::i;:::-;40794:4;40789:3;40785:14;40771:28;;40626:179;;;;:::o;40811:113::-;40881:4;40913;40908:3;40904:14;40896:22;;40811:113;;;:::o;40960:732::-;41079:3;41108:54;41156:5;41108:54;:::i;:::-;41178:86;41257:6;41252:3;41178:86;:::i;:::-;41171:93;;41288:56;41338:5;41288:56;:::i;:::-;41367:7;41398:1;41383:284;41408:6;41405:1;41402:13;41383:284;;;41484:6;41478:13;41511:63;41570:3;41555:13;41511:63;:::i;:::-;41504:70;;41597:60;41650:6;41597:60;:::i;:::-;41587:70;;41443:224;41430:1;41427;41423:9;41418:14;;41383:284;;;41387:14;41683:3;41676:10;;41084:608;;;40960:732;;;;:::o;41698:831::-;41961:4;41999:3;41988:9;41984:19;41976:27;;42013:71;42081:1;42070:9;42066:17;42057:6;42013:71;:::i;:::-;42094:80;42170:2;42159:9;42155:18;42146:6;42094:80;:::i;:::-;42221:9;42215:4;42211:20;42206:2;42195:9;42191:18;42184:48;42249:108;42352:4;42343:6;42249:108;:::i;:::-;42241:116;;42367:72;42435:2;42424:9;42420:18;42411:6;42367:72;:::i;:::-;42449:73;42517:3;42506:9;42502:19;42493:6;42449:73;:::i;:::-;41698:831;;;;;;;;:::o

Swarm Source

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