ETH Price: $2,778.97 (+5.87%)

Token

Yamerooo (YMR)
 

Overview

Max Total Supply

420,690,000 YMR

Holders

41

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
378,824.438809097015783756 YMR

Value
$0.00
0xfb826a93e47e654872bd621caf096cdb4cdc4b79
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:
Yamerooo

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-09-16
*/

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

https://yamero.club
https://twitter.com/0x_yamero_x0
__   _____  ___  ___ ___________ _____  _____  _____ _ _ _ 
\ \ / / _ \ |  \/  ||  ___| ___ \  _  ||  _  ||  _  | | | |
 \ V / /_\ \| .  . || |__ | |_/ / | | || | | || | | | | | |
  \ /|  _  || |\/| ||  __||    /| | | || | | || | | | | | |
  | || | | || |  | || |___| |\ \\ \_/ /\ \_/ /\ \_/ /_|_|_|
  \_/\_| |_/\_|  |_/\____/\_| \_|\___/  \___/  \___/(_|_|_)

       :&@@@@@@@@B7                                         
       YPPG#@@@@@@@5~                                       
      ~P????5B@@@@@@@P7:                         :!J55^     
     :#5??????Y&@@@@@@@&5!                    ^JG&@@@5.     
    .P&J???????Y@@@@@@@@@@B55yamero.clubJG&@@@@@?       
    !@G????????Y@@@@@@@@@@@@@@@@@@@@@&GYYB&@@@@@@@G5        
    !@P???????Y#@@@@@@@@@@@@@@@@@@&#BPY&@@@@@@@@@#5^        
    ~@GGBYJY5B@@@@@@@@@#BPPYYYYY5YJJ?~:7PBGPGBGB@&?         
   ~G@@@@&&@@@@@@@@@@@P???YPGPP5???J?^^^7?J###&B5#^         
 !G@@@@@@@@@@@@@@@@@@B??JB@@G#@@G?JJ!^^^~?#BBB@@BJG~        
G@@@@@@@@@@@@@@@&&@@@&G?JB@&#B&&P?7~^^^^^~PGB&#PJ5@#.       
@@@@@@@yamero.club&##GPPYJJP5GG5?!^^^^^^^~^^!??J5#@@!        
@@@@@@@@@@@@@@@@@@&#BG55J??J?!~^^^^^^~7?777!~~P@@@G         
@@@@@@@@@@@@@@@@@@@@@@#BG5?~^^^^^^^^^^^!7777~^^?B&J         
@@@@@@@@@@@@@######BGGPPPY7^^^^^^^^^^^~!7!~^^^^:YBP?:       
@@@@@@@@@@@@@@@@@@@@@&&&#5?7!~^^^^^^!JYPJ!^^^^^~5#J.        
@@@yamero.club@@@@@@@&&&GJ?JYYPGG#JY@@@@@#7~~!75#G?~        
@@@&#@@@@@@@@@@&PY55?7~!?JG&&@@@@@@@@@@@@#JYP&@&#~          
@@@B?G@@@@@@@@5~^^^^^^^^^?##BBBBBGB#@@@@@@@@@#57:           
@@@5??YGBBGPJ!^^^^^^^^^^^^JBBGYJJJPP5#J!~JP?^.              
@@B???????^^^^^^^^^^^^^^^^^7JYY77J?7J7^:                    
@@5??????J7~^^^^^^^^^~~^^^^^~!77777J?^:                     
@@BJ??????J?!~^^^^^~7J?^^^^^75!~~!!Y!:                      
@@@#P??????JJ??7777JJJ?7^^^^Y&GP5JJ?.                       
@@@@@B??JJJ??JJJJJyamero.club&@@@@:                       
@@@@@@GJ???JJJJJ????????JJ??J#@@@@@&:                       
@@@@@@@&Y~^~~!7?J?????????YP&@@@@@@5                        
@@@@@@@@@#J^^^^~7J???????Y@@@@@@@@@~                        

*/

pragma solidity ^0.8.18;

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

// Dex Factory contract interface
interface IDexFactory {
    function createPair(
        address tokenA,
        address tokenB
    ) external returns (address pair);
}

// Dex Router contract interface
interface IDexRouter {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

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

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

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

contract Ownable is Context {
    address private _owner;

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

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

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

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

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = payable(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;
    }
}

contract Yamerooo is Context, IERC20, Ownable {
    
    string private _name = "Yamerooo";
    string private _symbol = "YMR";
    uint8 private _decimals = 18;
    uint256 private _totalSupply = 420_690_000 * 1e18;

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

    mapping(address => bool) public isExcludedFromFee;
    mapping(address => bool) public isExcludedFromMaxTxn;
    mapping(address => bool) public isExcludedFromMaxHolding;

    uint256 public minTokenToSwap = (_totalSupply * 5) / (1000); // this amount will trigger swap and distribute
    uint256 public maxHoldLimit = (_totalSupply * 2) / (100); // this is the max wallet holding limit
    uint256 public maxTxnLimit = (_totalSupply * 2) / (100); // this is the max transaction limit
    uint256 public percentDivider = 100;
    uint256 public launchedAt;

    bool public swapAndLiquifyEnabled; // should be true to turn on to liquidate the pool
    bool public feesStatus; // enable by default
    bool public trading; // once enable can't be disable afterwards
    bool public limitsRemoved;

    IDexRouter public dexRouter; // router declaration
    address public dexPair; // pair address declaration
    
    address private constant DEAD = address(0xdead);
    address private constant ZERO = address(0);

    address private marketingWallet; // marketing address declaration
    uint256 public marketingFeeOnBuy = 10;
    uint256 public marketingFeeOnSell = 15;

    event SwapBack(uint256 tokensSwapped);

    constructor(address _marketingWallet) {
        _balances[owner()] = _totalSupply;

        marketingWallet = _marketingWallet;
        dexRouter = IDexRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        dexPair = IDexFactory(dexRouter.factory()).createPair(address(this), dexRouter.WETH());

        isExcludedFromFee[owner()] = true;
        isExcludedFromFee[address(this)] = true;
        isExcludedFromFee[marketingWallet] = true;
        isExcludedFromFee[address(dexRouter)] = true;

        isExcludedFromMaxTxn[owner()] = true;
        isExcludedFromMaxTxn[address(this)] = true;
        isExcludedFromMaxTxn[marketingWallet] = true;
        isExcludedFromMaxTxn[address(dexRouter)] = true;

        isExcludedFromMaxHolding[owner()] = true;
        isExcludedFromMaxHolding[address(this)] = true;
        isExcludedFromMaxHolding[marketingWallet] = true;
        isExcludedFromMaxHolding[address(dexRouter)] = true;
        isExcludedFromMaxHolding[dexPair] = true;

        emit Transfer(address(0), owner(), _totalSupply);
    }

    //to receive ETH from dexRouter when swapping
    receive() external payable {}

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

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

    function decimals() public view returns (uint8) {
        return _decimals;
    }

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

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

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

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

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()] - 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) {
        _approve(
            _msgSender(),
            spender,
            _allowances[_msgSender()][spender] - subtractedValue
        );
        return true;
    }

    function includeOrExcludeFromFee(
        address account,
        bool value
    ) external onlyOwner {
        isExcludedFromFee[account] = value;
    }

    function includeOrExcludeFromMaxTxn(
        address account,
        bool value
    ) external onlyOwner {
        isExcludedFromMaxTxn[account] = value;
    }

    function includeOrExcludeFromMaxHolding(
        address account,
        bool value
    ) external onlyOwner {
        isExcludedFromMaxHolding[account] = value;
    }

    function setMinTokenToSwap(uint256 _amount) external onlyOwner {
        minTokenToSwap = _amount * 1e18;
    }

    function setMaxHoldLimit(uint256 _amount) external onlyOwner {
        maxHoldLimit = _amount * 1e18;
    }

    function setMaxTxnLimit(uint256 _amount) external onlyOwner {
        maxTxnLimit = _amount * 1e18;
    }

    function setMarketingBuyFeePercent(uint256 _marketingFee) external onlyOwner {
        marketingFeeOnBuy = _marketingFee;
    }

    function setMarketingSellFeePercent(uint256 _marketingFee) external onlyOwner {
        marketingFeeOnSell = _marketingFee;
    }

    function setSwapAndLiquifyEnabled(bool _value) public onlyOwner {
        swapAndLiquifyEnabled = _value;
    }

    function enableOrDisableFees(bool _value) external onlyOwner {
        feesStatus = _value;
    }

    function updateMarketingWalletAddress(address _marketingWallet) external onlyOwner {
        marketingWallet = _marketingWallet;
        excludeWallet(_marketingWallet);
    }

    function excludeWallet(address wallet) internal {
        isExcludedFromFee[wallet] = true;
        isExcludedFromMaxTxn[wallet] = true;
        isExcludedFromMaxHolding[wallet] = true;
    }

    function enableTrading() external onlyOwner {
        require(!trading, ": already enabled");
        trading = true;
        feesStatus = true;
        swapAndLiquifyEnabled = true;
        launchedAt = block.timestamp;
    }

    function limitBreak() external onlyOwner {
        require(!limitsRemoved, ": already removed");
        limitsRemoved = true;
        maxHoldLimit = _totalSupply;
        maxTxnLimit = _totalSupply;
    }

    function totalMarketingBuyFeePerTx(uint256 amount) public view returns (uint256) {
        return (amount * marketingFeeOnBuy) / (percentDivider);
    }

    function totalMarketingSellFeePerTx(uint256 amount) public view returns (uint256) {
        return (amount * marketingFeeOnSell) / (percentDivider);
    }

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

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

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "transfer from the zero address");
        require(to != address(0), "transfer to the zero address");
        require(amount > 0, "Amount must be greater than zero");
        if (!isExcludedFromMaxTxn[from] && !isExcludedFromMaxTxn[to]) {
            require(amount <= maxTxnLimit, " max txn limit exceeds");

            if (!trading) {
                require(
                    dexPair != from && dexPair != to,
                    ": trading is disabled"
                );
            }
        }

        if (!isExcludedFromMaxHolding[to]) {
            require(
                (balanceOf(to) + amount) <= maxHoldLimit,
                ": max hold limit exceeded"
            );
        }

        swapAndLiquify(from, to);

        bool takeFee = true;

        if (isExcludedFromFee[from] || isExcludedFromFee[to] || !feesStatus) {
            takeFee = false;
        }

        _tokenTransfer(from, to, amount, takeFee);
    }

    function _tokenTransfer(
        address sender,
        address recipient,
        uint256 amount,
        bool takeFee
    ) private {
        if (dexPair == sender && takeFee) {

            uint256 allFee = totalMarketingBuyFeePerTx(amount);

            uint256 tTransferAmount = amount - allFee;

            _balances[sender] = _balances[sender] - amount;
            _balances[recipient] = _balances[recipient] + tTransferAmount;
            emit Transfer(sender, recipient, tTransferAmount);

            takeTokenFee(sender, allFee);
        }
        else if (dexPair == recipient && takeFee) {

            uint256 allFee = totalMarketingSellFeePerTx(amount);

            uint256 tTransferAmount = amount - allFee;

            _balances[sender] = _balances[sender] - amount;
            _balances[recipient] = _balances[recipient] + tTransferAmount;
            emit Transfer(sender, recipient, tTransferAmount);

            takeTokenFee(sender, allFee);
        }
        else {
            _balances[sender] = _balances[sender] - amount;
            _balances[recipient] = _balances[recipient] + (amount);
            emit Transfer(sender, recipient, amount);
        }
    }

    function takeTokenFee(address sender, uint256 amount) private {
        _balances[address(this)] = _balances[address(this)] + (amount);
        emit Transfer(sender, address(this), amount);
    }

    function swapBack() private {

        uint256 contractBalance = balanceOf(address(this));

        _approve(address(this), address(dexRouter), contractBalance);

        Utils.swapTokensForEth(address(dexRouter), contractBalance);
        uint256 ethForMarketing = address(this).balance;

        if (ethForMarketing > 0) {
            payable(marketingWallet).transfer(ethForMarketing);
        }

        emit SwapBack(contractBalance);
    }

    function swapAndLiquify(address from, address to) private {
        uint256 contractTokenBalance = balanceOf(address(this));
        bool shouldSell = contractTokenBalance >= minTokenToSwap;
        if (
            shouldSell &&
            from != dexPair &&
            swapAndLiquifyEnabled &&
            !(from == address(this) && to == dexPair)
        ) {
            swapBack();
        }
    }

    function manualUnclog() external {
        if (swapAndLiquifyEnabled) {
            swapBack();
        }
    }

    function rescueEth() external {
        require(address(this).balance > 0, "Invalid Amount");
        payable(marketingWallet).transfer(address(this).balance);
    }

    function rescueToken(IERC20 _token) external {
        require(_token.balanceOf(address(this)) > 0, "Invalid Amount");
        _token.transfer(marketingWallet, _token.balanceOf(address(this)));
    }

}

library Utils {
    function swapTokensForEth(
        address routerAddress,
        uint256 tokenAmount
    ) internal {
        IDexRouter dexRouter = IDexRouter(routerAddress);

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

        dexRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp + 300
        );
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"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":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"}],"name":"SwapBack","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"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":"dexPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dexRouter","outputs":[{"internalType":"contract IDexRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_value","type":"bool"}],"name":"enableOrDisableFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"feesStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"includeOrExcludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"includeOrExcludeFromMaxHolding","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"includeOrExcludeFromMaxTxn","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":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromMaxHolding","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromMaxTxn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limitBreak","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"limitsRemoved","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualUnclog","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingFeeOnBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFeeOnSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxHoldLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxnLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minTokenToSwap","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":"percentDivider","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rescueEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"_token","type":"address"}],"name":"rescueToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_marketingFee","type":"uint256"}],"name":"setMarketingBuyFeePercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_marketingFee","type":"uint256"}],"name":"setMarketingSellFeePercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setMaxHoldLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setMaxTxnLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setMinTokenToSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_value","type":"bool"}],"name":"setSwapAndLiquifyEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"totalMarketingBuyFeePerTx","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"totalMarketingSellFeePerTx","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":"trading","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingWallet","type":"address"}],"name":"updateMarketingWalletAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526040518060400160405280600881526020017f59616d65726f6f6f000000000000000000000000000000000000000000000000815250600190816200004a919062000dc3565b506040518060400160405280600381526020017f594d5200000000000000000000000000000000000000000000000000000000008152506002908162000091919062000dc3565b506012600360006101000a81548160ff021916908360ff1602179055506b015bfc9298de952e2f4000006004556103e86005600454620000d2919062000ed9565b620000de919062000f53565b600a5560646002600454620000f4919062000ed9565b62000100919062000f53565b600b556064600260045462000116919062000ed9565b62000122919062000f53565b600c556064600d55600a601255600f6013553480156200014157600080fd5b506040516200532938038062005329833981810160405281019062000167919062000ff5565b6200017762000b1860201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600454600560006200024862000b2060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550737a250d5630b4cf539739df2c5dacb4c659f2488d600f60046101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f60049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200038a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003b0919062000ff5565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600f60049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200043a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000460919062000ff5565b6040518363ffffffff1660e01b81526004016200047f92919062001038565b6020604051808303816000875af11580156200049f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004c5919062000ff5565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760006200051b62000b2060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160076000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160076000600f60049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160086000620006ce62000b2060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160086000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160086000600f60049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960006200088162000b2060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000600f60049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555062000aa862000b2060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60045460405162000b09919062001076565b60405180910390a35062001093565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000bcb57607f821691505b60208210810362000be15762000be062000b83565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000c4b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000c0c565b62000c57868362000c0c565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000ca462000c9e62000c988462000c6f565b62000c79565b62000c6f565b9050919050565b6000819050919050565b62000cc08362000c83565b62000cd862000ccf8262000cab565b84845462000c19565b825550505050565b600090565b62000cef62000ce0565b62000cfc81848462000cb5565b505050565b5b8181101562000d245762000d1860008262000ce5565b60018101905062000d02565b5050565b601f82111562000d735762000d3d8162000be7565b62000d488462000bfc565b8101602085101562000d58578190505b62000d7062000d678562000bfc565b83018262000d01565b50505b505050565b600082821c905092915050565b600062000d986000198460080262000d78565b1980831691505092915050565b600062000db3838362000d85565b9150826002028217905092915050565b62000dce8262000b49565b67ffffffffffffffff81111562000dea5762000de962000b54565b5b62000df6825462000bb2565b62000e0382828562000d28565b600060209050601f83116001811462000e3b576000841562000e26578287015190505b62000e32858262000da5565b86555062000ea2565b601f19841662000e4b8662000be7565b60005b8281101562000e755784890151825560018201915060208501945060208101905062000e4e565b8683101562000e95578489015162000e91601f89168262000d85565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000ee68262000c6f565b915062000ef38362000c6f565b925082820262000f038162000c6f565b9150828204841483151762000f1d5762000f1c62000eaa565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000f608262000c6f565b915062000f6d8362000c6f565b92508262000f805762000f7f62000f24565b5b828204905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000fbd8262000f90565b9050919050565b62000fcf8162000fb0565b811462000fdb57600080fd5b50565b60008151905062000fef8162000fc4565b92915050565b6000602082840312156200100e576200100d62000f8b565b5b60006200101e8482850162000fde565b91505092915050565b620010328162000fb0565b82525050565b60006040820190506200104f600083018562001027565b6200105e602083018462001027565b9392505050565b620010708162000c6f565b82525050565b60006020820190506200108d600083018462001065565b92915050565b61428680620010a36000396000f3fe6080604052600436106102975760003560e01c80638da5cb5b1161015a578063c49b9a80116100c1578063ea5b9e851161007a578063ea5b9e8514610a11578063ec44acf214610a3a578063f097ea1a14610a65578063f242ab4114610a8e578063f2fde38b14610ab9578063fe6f1b0514610ae25761029e565b8063c49b9a8014610929578063c769f08914610952578063ce31a06b1461097b578063d9950f6214610992578063dc4c7dbc146109a9578063dd62ed3e146109d45761029e565b8063a40a72a111610113578063a40a72a1146107f5578063a457c2d714610832578063a7c29b401461086f578063a9059cbb14610898578063b0bc2a2d146108d5578063bf56b371146108fe5761029e565b80638da5cb5b146106e557806395d89b4114610710578063969e24d81461073b57806399b102b5146107645780639a36dfa1146107a15780639b6a2750146107cc5761029e565b80634a74bb02116101fe57806370a08231116101b757806370a08231146105e9578063715018a61461062657806384ea21bc1461063d5780638756aabd1461067a578063879dd3c5146106a35780638a8c523c146106ce5761029e565b80634a74bb02146104c5578063502d5627146104f05780635342acb41461052d57806353c2fd5f1461056a5780635fc2e59614610593578063681aa362146105be5761029e565b806323b872dd1161025057806323b872dd146103b75780632d129390146103f4578063313ce5671461041d57806338347fa414610448578063395093511461045f5780634460d3cf1461049c5761029e565b806306fdde03146102a35780630758d924146102ce578063095ea7b3146102f957806318160ddd146103365780631884f1e6146103615780631d6f96551461038c5761029e565b3661029e57005b600080fd5b3480156102af57600080fd5b506102b8610b0d565b6040516102c5919061344e565b60405180910390f35b3480156102da57600080fd5b506102e3610b9f565b6040516102f091906134ef565b60405180910390f35b34801561030557600080fd5b50610320600480360381019061031b9190613583565b610bc5565b60405161032d91906135de565b60405180910390f35b34801561034257600080fd5b5061034b610be3565b6040516103589190613608565b60405180910390f35b34801561036d57600080fd5b50610376610bed565b6040516103839190613608565b60405180910390f35b34801561039857600080fd5b506103a1610bf3565b6040516103ae91906135de565b60405180910390f35b3480156103c357600080fd5b506103de60048036038101906103d99190613623565b610c06565b6040516103eb91906135de565b60405180910390f35b34801561040057600080fd5b5061041b600480360381019061041691906136a2565b610cbe565b005b34801561042957600080fd5b50610432610dae565b60405161043f91906136fe565b60405180910390f35b34801561045457600080fd5b5061045d610dc5565b005b34801561046b57600080fd5b5061048660048036038101906104819190613583565b610de5565b60405161049391906135de565b60405180910390f35b3480156104a857600080fd5b506104c360048036038101906104be9190613757565b610e91565b005b3480156104d157600080fd5b506104da61106a565b6040516104e791906135de565b60405180910390f35b3480156104fc57600080fd5b5061051760048036038101906105129190613784565b61107d565b6040516105249190613608565b60405180910390f35b34801561053957600080fd5b50610554600480360381019061054f91906137b1565b6110a1565b60405161056191906135de565b60405180910390f35b34801561057657600080fd5b50610591600480360381019061058c9190613784565b6110c1565b005b34801561059f57600080fd5b506105a8611160565b6040516105b59190613608565b60405180910390f35b3480156105ca57600080fd5b506105d3611166565b6040516105e09190613608565b60405180910390f35b3480156105f557600080fd5b50610610600480360381019061060b91906137b1565b61116c565b60405161061d9190613608565b60405180910390f35b34801561063257600080fd5b5061063b6111b5565b005b34801561064957600080fd5b50610664600480360381019061065f91906137b1565b611308565b60405161067191906135de565b60405180910390f35b34801561068657600080fd5b506106a1600480360381019061069c9190613784565b611328565b005b3480156106af57600080fd5b506106b86113da565b6040516106c591906135de565b60405180910390f35b3480156106da57600080fd5b506106e36113ed565b005b3480156106f157600080fd5b506106fa61152c565b60405161070791906137ed565b60405180910390f35b34801561071c57600080fd5b50610725611555565b604051610732919061344e565b60405180910390f35b34801561074757600080fd5b50610762600480360381019061075d91906137b1565b6115e7565b005b34801561077057600080fd5b5061078b600480360381019061078691906137b1565b6116c9565b60405161079891906135de565b60405180910390f35b3480156107ad57600080fd5b506107b66116e9565b6040516107c39190613608565b60405180910390f35b3480156107d857600080fd5b506107f360048036038101906107ee9190613784565b6116ef565b005b34801561080157600080fd5b5061081c60048036038101906108179190613784565b6117a1565b6040516108299190613608565b60405180910390f35b34801561083e57600080fd5b5061085960048036038101906108549190613583565b6117c5565b60405161086691906135de565b60405180910390f35b34801561087b57600080fd5b50610896600480360381019061089191906136a2565b611871565b005b3480156108a457600080fd5b506108bf60048036038101906108ba9190613583565b611961565b6040516108cc91906135de565b60405180910390f35b3480156108e157600080fd5b506108fc60048036038101906108f79190613808565b61197f565b005b34801561090a57600080fd5b50610913611a31565b6040516109209190613608565b60405180910390f35b34801561093557600080fd5b50610950600480360381019061094b9190613808565b611a37565b005b34801561095e57600080fd5b5061097960048036038101906109749190613784565b611ae9565b005b34801561098757600080fd5b50610990611b88565b005b34801561099e57600080fd5b506109a7611c36565b005b3480156109b557600080fd5b506109be611d4a565b6040516109cb9190613608565b60405180910390f35b3480156109e057600080fd5b506109fb60048036038101906109f69190613835565b611d50565b604051610a089190613608565b60405180910390f35b348015610a1d57600080fd5b50610a386004803603810190610a3391906136a2565b611dd7565b005b348015610a4657600080fd5b50610a4f611ec7565b604051610a5c91906135de565b60405180910390f35b348015610a7157600080fd5b50610a8c6004803603810190610a879190613784565b611eda565b005b348015610a9a57600080fd5b50610aa3611f8c565b604051610ab091906137ed565b60405180910390f35b348015610ac557600080fd5b50610ae06004803603810190610adb91906137b1565b611fb2565b005b348015610aee57600080fd5b50610af7612173565b604051610b049190613608565b60405180910390f35b606060018054610b1c906138a4565b80601f0160208091040260200160405190810160405280929190818152602001828054610b48906138a4565b8015610b955780601f10610b6a57610100808354040283529160200191610b95565b820191906000526020600020905b815481529060010190602001808311610b7857829003601f168201915b5050505050905090565b600f60049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610bd9610bd2612179565b8484612181565b6001905092915050565b6000600454905090565b600a5481565b600f60039054906101000a900460ff1681565b6000610c1384848461234a565b610cb384610c1f612179565b84600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610c69612179565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cae9190613904565b612181565b600190509392505050565b610cc6612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4a90613984565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000600360009054906101000a900460ff16905090565b600f60009054906101000a900460ff1615610de357610de26127e9565b5b565b6000610e87610df2612179565b848460066000610e00612179565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e8291906139a4565b612181565b6001905092915050565b60008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610ecc91906137ed565b602060405180830381865afa158015610ee9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f0d91906139ed565b11610f4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4490613a66565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610fc591906137ed565b602060405180830381865afa158015610fe2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100691906139ed565b6040518363ffffffff1660e01b8152600401611023929190613a86565b6020604051808303816000875af1158015611042573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110669190613ac4565b5050565b600f60009054906101000a900460ff1681565b6000600d54601254836110909190613af1565b61109a9190613b62565b9050919050565b60076020528060005260406000206000915054906101000a900460ff1681565b6110c9612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611156576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114d90613984565b60405180910390fd5b8060138190555050565b60125481565b600c5481565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6111bd612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461124a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124190613984565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60096020528060005260406000206000915054906101000a900460ff1681565b611330612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b490613984565b60405180910390fd5b670de0b6b3a7640000816113d19190613af1565b600b8190555050565b600f60019054906101000a900460ff1681565b6113f5612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161147990613984565b60405180910390fd5b600f60029054906101000a900460ff16156114d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114c990613bdf565b60405180910390fd5b6001600f60026101000a81548160ff0219169083151502179055506001600f60016101000a81548160ff0219169083151502179055506001600f60006101000a81548160ff02191690831515021790555042600e81905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054611564906138a4565b80601f0160208091040260200160405190810160405280929190818152602001828054611590906138a4565b80156115dd5780601f106115b2576101008083540402835291602001916115dd565b820191906000526020600020905b8154815290600101906020018083116115c057829003601f168201915b5050505050905090565b6115ef612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461167c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167390613984565b60405180910390fd5b80601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506116c681612902565b50565b60086020528060005260406000206000915054906101000a900460ff1681565b600b5481565b6116f7612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611784576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177b90613984565b60405180910390fd5b670de0b6b3a7640000816117989190613af1565b600c8190555050565b6000600d54601354836117b49190613af1565b6117be9190613b62565b9050919050565b60006118676117d2612179565b8484600660006117e0612179565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118629190613904565b612181565b6001905092915050565b611879612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611906576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118fd90613984565b60405180910390fd5b80600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600061197561196e612179565b848461234a565b6001905092915050565b611987612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0b90613984565b60405180910390fd5b80600f60016101000a81548160ff02191690831515021790555050565b600e5481565b611a3f612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611acc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac390613984565b60405180910390fd5b80600f60006101000a81548160ff02191690831515021790555050565b611af1612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7590613984565b60405180910390fd5b8060128190555050565b60004711611bcb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bc290613a66565b60405180910390fd5b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015611c33573d6000803e3d6000fd5b50565b611c3e612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ccb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cc290613984565b60405180910390fd5b600f60039054906101000a900460ff1615611d1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d1290613c4b565b60405180910390fd5b6001600f60036101000a81548160ff021916908315150217905550600454600b81905550600454600c81905550565b60135481565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611ddf612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611e6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6390613984565b60405180910390fd5b80600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600f60029054906101000a900460ff1681565b611ee2612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611f6f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f6690613984565b60405180910390fd5b670de0b6b3a764000081611f839190613af1565b600a8190555050565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611fba612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612047576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203e90613984565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036120b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120ad90613cdd565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600d5481565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036121f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121e790613d49565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361225f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161225690613db5565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161233d9190613608565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036123b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123b090613e21565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612428576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161241f90613e8d565b60405180910390fd5b6000811161246b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161246290613ef9565b60405180910390fd5b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561250f5750600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561265a57600c54811115612559576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161255090613f65565b60405180910390fd5b600f60029054906101000a900460ff16612659578273ffffffffffffffffffffffffffffffffffffffff16601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415801561261957508173ffffffffffffffffffffffffffffffffffffffff16601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b612658576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161264f90613fd1565b60405180910390fd5b5b5b600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661270457600b54816126b88461116c565b6126c291906139a4565b1115612703576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126fa9061403d565b60405180910390fd5b5b61270e8383612a0d565b600060019050600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806127b55750600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806127cd5750600f60019054906101000a900460ff16155b156127d757600090505b6127e384848484612b3c565b50505050565b60006127f43061116c565b905061282330600f60049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683612181565b61284f600f60049054906101000a900473ffffffffffffffffffffffffffffffffffffffff16826130e1565b600047905060008111156128c757601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156128c5573d6000803e3d6000fd5b505b7fd851aeb8e2074b285cc12da5e2fbf79e642e38f62ef8e59590790c157491ee05826040516128f69190613608565b60405180910390a15050565b6001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000612a183061116c565b90506000600a548210159050808015612a7f5750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015612a975750600f60009054906101000a900460ff165b8015612b2857503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015612b265750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b155b15612b3657612b356127e9565b5b50505050565b8373ffffffffffffffffffffffffffffffffffffffff16601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148015612b965750805b15612d4a576000612ba68361107d565b905060008184612bb69190613904565b905083600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c039190613904565b600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c9191906139a4565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612d319190613608565b60405180910390a3612d4386836132c7565b50506130db565b8273ffffffffffffffffffffffffffffffffffffffff16601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148015612da45750805b15612f58576000612db4836117a1565b905060008184612dc49190613904565b905083600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612e119190613904565b600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612e9f91906139a4565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612f3f9190613608565b60405180910390a3612f5186836132c7565b50506130da565b81600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612fa39190613904565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461303191906139a4565b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516130d19190613608565b60405180910390a35b5b50505050565b60008290506000600267ffffffffffffffff8111156131035761310261405d565b5b6040519080825280602002602001820160405280156131315781602001602082028036833780820191505090505b50905030816000815181106131495761314861408c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508173ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131f291906140d0565b816001815181106132065761320561408c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508173ffffffffffffffffffffffffffffffffffffffff1663791ac947846000843061012c4261326f91906139a4565b6040518663ffffffff1660e01b815260040161328f9594939291906141f6565b600060405180830381600087803b1580156132a957600080fd5b505af11580156132bd573d6000803e3d6000fd5b5050505050505050565b80600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461331291906139a4565b600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516133b29190613608565b60405180910390a35050565b600081519050919050565b600082825260208201905092915050565b60005b838110156133f85780820151818401526020810190506133dd565b60008484015250505050565b6000601f19601f8301169050919050565b6000613420826133be565b61342a81856133c9565b935061343a8185602086016133da565b61344381613404565b840191505092915050565b600060208201905081810360008301526134688184613415565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006134b56134b06134ab84613470565b613490565b613470565b9050919050565b60006134c78261349a565b9050919050565b60006134d9826134bc565b9050919050565b6134e9816134ce565b82525050565b600060208201905061350460008301846134e0565b92915050565b600080fd5b600061351a82613470565b9050919050565b61352a8161350f565b811461353557600080fd5b50565b60008135905061354781613521565b92915050565b6000819050919050565b6135608161354d565b811461356b57600080fd5b50565b60008135905061357d81613557565b92915050565b6000806040838503121561359a5761359961350a565b5b60006135a885828601613538565b92505060206135b98582860161356e565b9150509250929050565b60008115159050919050565b6135d8816135c3565b82525050565b60006020820190506135f360008301846135cf565b92915050565b6136028161354d565b82525050565b600060208201905061361d60008301846135f9565b92915050565b60008060006060848603121561363c5761363b61350a565b5b600061364a86828701613538565b935050602061365b86828701613538565b925050604061366c8682870161356e565b9150509250925092565b61367f816135c3565b811461368a57600080fd5b50565b60008135905061369c81613676565b92915050565b600080604083850312156136b9576136b861350a565b5b60006136c785828601613538565b92505060206136d88582860161368d565b9150509250929050565b600060ff82169050919050565b6136f8816136e2565b82525050565b600060208201905061371360008301846136ef565b92915050565b60006137248261350f565b9050919050565b61373481613719565b811461373f57600080fd5b50565b6000813590506137518161372b565b92915050565b60006020828403121561376d5761376c61350a565b5b600061377b84828501613742565b91505092915050565b60006020828403121561379a5761379961350a565b5b60006137a88482850161356e565b91505092915050565b6000602082840312156137c7576137c661350a565b5b60006137d584828501613538565b91505092915050565b6137e78161350f565b82525050565b600060208201905061380260008301846137de565b92915050565b60006020828403121561381e5761381d61350a565b5b600061382c8482850161368d565b91505092915050565b6000806040838503121561384c5761384b61350a565b5b600061385a85828601613538565b925050602061386b85828601613538565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806138bc57607f821691505b6020821081036138cf576138ce613875565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061390f8261354d565b915061391a8361354d565b9250828203905081811115613932576139316138d5565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061396e6020836133c9565b915061397982613938565b602082019050919050565b6000602082019050818103600083015261399d81613961565b9050919050565b60006139af8261354d565b91506139ba8361354d565b92508282019050808211156139d2576139d16138d5565b5b92915050565b6000815190506139e781613557565b92915050565b600060208284031215613a0357613a0261350a565b5b6000613a11848285016139d8565b91505092915050565b7f496e76616c696420416d6f756e74000000000000000000000000000000000000600082015250565b6000613a50600e836133c9565b9150613a5b82613a1a565b602082019050919050565b60006020820190508181036000830152613a7f81613a43565b9050919050565b6000604082019050613a9b60008301856137de565b613aa860208301846135f9565b9392505050565b600081519050613abe81613676565b92915050565b600060208284031215613ada57613ad961350a565b5b6000613ae884828501613aaf565b91505092915050565b6000613afc8261354d565b9150613b078361354d565b9250828202613b158161354d565b91508282048414831517613b2c57613b2b6138d5565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613b6d8261354d565b9150613b788361354d565b925082613b8857613b87613b33565b5b828204905092915050565b7f3a20616c726561647920656e61626c6564000000000000000000000000000000600082015250565b6000613bc96011836133c9565b9150613bd482613b93565b602082019050919050565b60006020820190508181036000830152613bf881613bbc565b9050919050565b7f3a20616c72656164792072656d6f766564000000000000000000000000000000600082015250565b6000613c356011836133c9565b9150613c4082613bff565b602082019050919050565b60006020820190508181036000830152613c6481613c28565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000613cc76026836133c9565b9150613cd282613c6b565b604082019050919050565b60006020820190508181036000830152613cf681613cba565b9050919050565b7f20617070726f76652066726f6d20746865207a65726f20616464726573730000600082015250565b6000613d33601e836133c9565b9150613d3e82613cfd565b602082019050919050565b60006020820190508181036000830152613d6281613d26565b9050919050565b7f617070726f766520746f20746865207a65726f20616464726573730000000000600082015250565b6000613d9f601b836133c9565b9150613daa82613d69565b602082019050919050565b60006020820190508181036000830152613dce81613d92565b9050919050565b7f7472616e736665722066726f6d20746865207a65726f20616464726573730000600082015250565b6000613e0b601e836133c9565b9150613e1682613dd5565b602082019050919050565b60006020820190508181036000830152613e3a81613dfe565b9050919050565b7f7472616e7366657220746f20746865207a65726f206164647265737300000000600082015250565b6000613e77601c836133c9565b9150613e8282613e41565b602082019050919050565b60006020820190508181036000830152613ea681613e6a565b9050919050565b7f416d6f756e74206d7573742062652067726561746572207468616e207a65726f600082015250565b6000613ee36020836133c9565b9150613eee82613ead565b602082019050919050565b60006020820190508181036000830152613f1281613ed6565b9050919050565b7f206d61782074786e206c696d6974206578636565647300000000000000000000600082015250565b6000613f4f6016836133c9565b9150613f5a82613f19565b602082019050919050565b60006020820190508181036000830152613f7e81613f42565b9050919050565b7f3a2074726164696e672069732064697361626c65640000000000000000000000600082015250565b6000613fbb6015836133c9565b9150613fc682613f85565b602082019050919050565b60006020820190508181036000830152613fea81613fae565b9050919050565b7f3a206d617820686f6c64206c696d697420657863656564656400000000000000600082015250565b60006140276019836133c9565b915061403282613ff1565b602082019050919050565b600060208201905081810360008301526140568161401a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815190506140ca81613521565b92915050565b6000602082840312156140e6576140e561350a565b5b60006140f4848285016140bb565b91505092915050565b6000819050919050565b600061412261411d614118846140fd565b613490565b61354d565b9050919050565b61413281614107565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61416d8161350f565b82525050565b600061417f8383614164565b60208301905092915050565b6000602082019050919050565b60006141a382614138565b6141ad8185614143565b93506141b883614154565b8060005b838110156141e95781516141d08882614173565b97506141db8361418b565b9250506001810190506141bc565b5085935050505092915050565b600060a08201905061420b60008301886135f9565b6142186020830187614129565b818103604083015261422a8186614198565b905061423960608301856137de565b61424660808301846135f9565b969550505050505056fea264697066735822122062101dbd4320b1853337a7f3b87595cd01889534707b61a6df5127d364e1b85464736f6c634300081200330000000000000000000000002ce40ee87f09fca8b23a8b23f5ccff842c2e0ec3

Deployed Bytecode

0x6080604052600436106102975760003560e01c80638da5cb5b1161015a578063c49b9a80116100c1578063ea5b9e851161007a578063ea5b9e8514610a11578063ec44acf214610a3a578063f097ea1a14610a65578063f242ab4114610a8e578063f2fde38b14610ab9578063fe6f1b0514610ae25761029e565b8063c49b9a8014610929578063c769f08914610952578063ce31a06b1461097b578063d9950f6214610992578063dc4c7dbc146109a9578063dd62ed3e146109d45761029e565b8063a40a72a111610113578063a40a72a1146107f5578063a457c2d714610832578063a7c29b401461086f578063a9059cbb14610898578063b0bc2a2d146108d5578063bf56b371146108fe5761029e565b80638da5cb5b146106e557806395d89b4114610710578063969e24d81461073b57806399b102b5146107645780639a36dfa1146107a15780639b6a2750146107cc5761029e565b80634a74bb02116101fe57806370a08231116101b757806370a08231146105e9578063715018a61461062657806384ea21bc1461063d5780638756aabd1461067a578063879dd3c5146106a35780638a8c523c146106ce5761029e565b80634a74bb02146104c5578063502d5627146104f05780635342acb41461052d57806353c2fd5f1461056a5780635fc2e59614610593578063681aa362146105be5761029e565b806323b872dd1161025057806323b872dd146103b75780632d129390146103f4578063313ce5671461041d57806338347fa414610448578063395093511461045f5780634460d3cf1461049c5761029e565b806306fdde03146102a35780630758d924146102ce578063095ea7b3146102f957806318160ddd146103365780631884f1e6146103615780631d6f96551461038c5761029e565b3661029e57005b600080fd5b3480156102af57600080fd5b506102b8610b0d565b6040516102c5919061344e565b60405180910390f35b3480156102da57600080fd5b506102e3610b9f565b6040516102f091906134ef565b60405180910390f35b34801561030557600080fd5b50610320600480360381019061031b9190613583565b610bc5565b60405161032d91906135de565b60405180910390f35b34801561034257600080fd5b5061034b610be3565b6040516103589190613608565b60405180910390f35b34801561036d57600080fd5b50610376610bed565b6040516103839190613608565b60405180910390f35b34801561039857600080fd5b506103a1610bf3565b6040516103ae91906135de565b60405180910390f35b3480156103c357600080fd5b506103de60048036038101906103d99190613623565b610c06565b6040516103eb91906135de565b60405180910390f35b34801561040057600080fd5b5061041b600480360381019061041691906136a2565b610cbe565b005b34801561042957600080fd5b50610432610dae565b60405161043f91906136fe565b60405180910390f35b34801561045457600080fd5b5061045d610dc5565b005b34801561046b57600080fd5b5061048660048036038101906104819190613583565b610de5565b60405161049391906135de565b60405180910390f35b3480156104a857600080fd5b506104c360048036038101906104be9190613757565b610e91565b005b3480156104d157600080fd5b506104da61106a565b6040516104e791906135de565b60405180910390f35b3480156104fc57600080fd5b5061051760048036038101906105129190613784565b61107d565b6040516105249190613608565b60405180910390f35b34801561053957600080fd5b50610554600480360381019061054f91906137b1565b6110a1565b60405161056191906135de565b60405180910390f35b34801561057657600080fd5b50610591600480360381019061058c9190613784565b6110c1565b005b34801561059f57600080fd5b506105a8611160565b6040516105b59190613608565b60405180910390f35b3480156105ca57600080fd5b506105d3611166565b6040516105e09190613608565b60405180910390f35b3480156105f557600080fd5b50610610600480360381019061060b91906137b1565b61116c565b60405161061d9190613608565b60405180910390f35b34801561063257600080fd5b5061063b6111b5565b005b34801561064957600080fd5b50610664600480360381019061065f91906137b1565b611308565b60405161067191906135de565b60405180910390f35b34801561068657600080fd5b506106a1600480360381019061069c9190613784565b611328565b005b3480156106af57600080fd5b506106b86113da565b6040516106c591906135de565b60405180910390f35b3480156106da57600080fd5b506106e36113ed565b005b3480156106f157600080fd5b506106fa61152c565b60405161070791906137ed565b60405180910390f35b34801561071c57600080fd5b50610725611555565b604051610732919061344e565b60405180910390f35b34801561074757600080fd5b50610762600480360381019061075d91906137b1565b6115e7565b005b34801561077057600080fd5b5061078b600480360381019061078691906137b1565b6116c9565b60405161079891906135de565b60405180910390f35b3480156107ad57600080fd5b506107b66116e9565b6040516107c39190613608565b60405180910390f35b3480156107d857600080fd5b506107f360048036038101906107ee9190613784565b6116ef565b005b34801561080157600080fd5b5061081c60048036038101906108179190613784565b6117a1565b6040516108299190613608565b60405180910390f35b34801561083e57600080fd5b5061085960048036038101906108549190613583565b6117c5565b60405161086691906135de565b60405180910390f35b34801561087b57600080fd5b50610896600480360381019061089191906136a2565b611871565b005b3480156108a457600080fd5b506108bf60048036038101906108ba9190613583565b611961565b6040516108cc91906135de565b60405180910390f35b3480156108e157600080fd5b506108fc60048036038101906108f79190613808565b61197f565b005b34801561090a57600080fd5b50610913611a31565b6040516109209190613608565b60405180910390f35b34801561093557600080fd5b50610950600480360381019061094b9190613808565b611a37565b005b34801561095e57600080fd5b5061097960048036038101906109749190613784565b611ae9565b005b34801561098757600080fd5b50610990611b88565b005b34801561099e57600080fd5b506109a7611c36565b005b3480156109b557600080fd5b506109be611d4a565b6040516109cb9190613608565b60405180910390f35b3480156109e057600080fd5b506109fb60048036038101906109f69190613835565b611d50565b604051610a089190613608565b60405180910390f35b348015610a1d57600080fd5b50610a386004803603810190610a3391906136a2565b611dd7565b005b348015610a4657600080fd5b50610a4f611ec7565b604051610a5c91906135de565b60405180910390f35b348015610a7157600080fd5b50610a8c6004803603810190610a879190613784565b611eda565b005b348015610a9a57600080fd5b50610aa3611f8c565b604051610ab091906137ed565b60405180910390f35b348015610ac557600080fd5b50610ae06004803603810190610adb91906137b1565b611fb2565b005b348015610aee57600080fd5b50610af7612173565b604051610b049190613608565b60405180910390f35b606060018054610b1c906138a4565b80601f0160208091040260200160405190810160405280929190818152602001828054610b48906138a4565b8015610b955780601f10610b6a57610100808354040283529160200191610b95565b820191906000526020600020905b815481529060010190602001808311610b7857829003601f168201915b5050505050905090565b600f60049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610bd9610bd2612179565b8484612181565b6001905092915050565b6000600454905090565b600a5481565b600f60039054906101000a900460ff1681565b6000610c1384848461234a565b610cb384610c1f612179565b84600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610c69612179565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cae9190613904565b612181565b600190509392505050565b610cc6612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4a90613984565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000600360009054906101000a900460ff16905090565b600f60009054906101000a900460ff1615610de357610de26127e9565b5b565b6000610e87610df2612179565b848460066000610e00612179565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e8291906139a4565b612181565b6001905092915050565b60008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610ecc91906137ed565b602060405180830381865afa158015610ee9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f0d91906139ed565b11610f4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4490613a66565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610fc591906137ed565b602060405180830381865afa158015610fe2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100691906139ed565b6040518363ffffffff1660e01b8152600401611023929190613a86565b6020604051808303816000875af1158015611042573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110669190613ac4565b5050565b600f60009054906101000a900460ff1681565b6000600d54601254836110909190613af1565b61109a9190613b62565b9050919050565b60076020528060005260406000206000915054906101000a900460ff1681565b6110c9612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611156576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114d90613984565b60405180910390fd5b8060138190555050565b60125481565b600c5481565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6111bd612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461124a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124190613984565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60096020528060005260406000206000915054906101000a900460ff1681565b611330612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b490613984565b60405180910390fd5b670de0b6b3a7640000816113d19190613af1565b600b8190555050565b600f60019054906101000a900460ff1681565b6113f5612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161147990613984565b60405180910390fd5b600f60029054906101000a900460ff16156114d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114c990613bdf565b60405180910390fd5b6001600f60026101000a81548160ff0219169083151502179055506001600f60016101000a81548160ff0219169083151502179055506001600f60006101000a81548160ff02191690831515021790555042600e81905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054611564906138a4565b80601f0160208091040260200160405190810160405280929190818152602001828054611590906138a4565b80156115dd5780601f106115b2576101008083540402835291602001916115dd565b820191906000526020600020905b8154815290600101906020018083116115c057829003601f168201915b5050505050905090565b6115ef612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461167c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167390613984565b60405180910390fd5b80601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506116c681612902565b50565b60086020528060005260406000206000915054906101000a900460ff1681565b600b5481565b6116f7612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611784576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177b90613984565b60405180910390fd5b670de0b6b3a7640000816117989190613af1565b600c8190555050565b6000600d54601354836117b49190613af1565b6117be9190613b62565b9050919050565b60006118676117d2612179565b8484600660006117e0612179565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118629190613904565b612181565b6001905092915050565b611879612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611906576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118fd90613984565b60405180910390fd5b80600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600061197561196e612179565b848461234a565b6001905092915050565b611987612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0b90613984565b60405180910390fd5b80600f60016101000a81548160ff02191690831515021790555050565b600e5481565b611a3f612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611acc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac390613984565b60405180910390fd5b80600f60006101000a81548160ff02191690831515021790555050565b611af1612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611b7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7590613984565b60405180910390fd5b8060128190555050565b60004711611bcb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bc290613a66565b60405180910390fd5b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015611c33573d6000803e3d6000fd5b50565b611c3e612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ccb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cc290613984565b60405180910390fd5b600f60039054906101000a900460ff1615611d1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d1290613c4b565b60405180910390fd5b6001600f60036101000a81548160ff021916908315150217905550600454600b81905550600454600c81905550565b60135481565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611ddf612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611e6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6390613984565b60405180910390fd5b80600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600f60029054906101000a900460ff1681565b611ee2612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611f6f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f6690613984565b60405180910390fd5b670de0b6b3a764000081611f839190613af1565b600a8190555050565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611fba612179565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612047576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203e90613984565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036120b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120ad90613cdd565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600d5481565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036121f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121e790613d49565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361225f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161225690613db5565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161233d9190613608565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036123b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123b090613e21565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612428576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161241f90613e8d565b60405180910390fd5b6000811161246b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161246290613ef9565b60405180910390fd5b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561250f5750600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561265a57600c54811115612559576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161255090613f65565b60405180910390fd5b600f60029054906101000a900460ff16612659578273ffffffffffffffffffffffffffffffffffffffff16601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415801561261957508173ffffffffffffffffffffffffffffffffffffffff16601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b612658576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161264f90613fd1565b60405180910390fd5b5b5b600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661270457600b54816126b88461116c565b6126c291906139a4565b1115612703576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126fa9061403d565b60405180910390fd5b5b61270e8383612a0d565b600060019050600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806127b55750600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806127cd5750600f60019054906101000a900460ff16155b156127d757600090505b6127e384848484612b3c565b50505050565b60006127f43061116c565b905061282330600f60049054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683612181565b61284f600f60049054906101000a900473ffffffffffffffffffffffffffffffffffffffff16826130e1565b600047905060008111156128c757601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156128c5573d6000803e3d6000fd5b505b7fd851aeb8e2074b285cc12da5e2fbf79e642e38f62ef8e59590790c157491ee05826040516128f69190613608565b60405180910390a15050565b6001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000612a183061116c565b90506000600a548210159050808015612a7f5750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015612a975750600f60009054906101000a900460ff165b8015612b2857503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015612b265750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b155b15612b3657612b356127e9565b5b50505050565b8373ffffffffffffffffffffffffffffffffffffffff16601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148015612b965750805b15612d4a576000612ba68361107d565b905060008184612bb69190613904565b905083600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c039190613904565b600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c9191906139a4565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612d319190613608565b60405180910390a3612d4386836132c7565b50506130db565b8273ffffffffffffffffffffffffffffffffffffffff16601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148015612da45750805b15612f58576000612db4836117a1565b905060008184612dc49190613904565b905083600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612e119190613904565b600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612e9f91906139a4565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612f3f9190613608565b60405180910390a3612f5186836132c7565b50506130da565b81600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612fa39190613904565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461303191906139a4565b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516130d19190613608565b60405180910390a35b5b50505050565b60008290506000600267ffffffffffffffff8111156131035761310261405d565b5b6040519080825280602002602001820160405280156131315781602001602082028036833780820191505090505b50905030816000815181106131495761314861408c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508173ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131f291906140d0565b816001815181106132065761320561408c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508173ffffffffffffffffffffffffffffffffffffffff1663791ac947846000843061012c4261326f91906139a4565b6040518663ffffffff1660e01b815260040161328f9594939291906141f6565b600060405180830381600087803b1580156132a957600080fd5b505af11580156132bd573d6000803e3d6000fd5b5050505050505050565b80600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461331291906139a4565b600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516133b29190613608565b60405180910390a35050565b600081519050919050565b600082825260208201905092915050565b60005b838110156133f85780820151818401526020810190506133dd565b60008484015250505050565b6000601f19601f8301169050919050565b6000613420826133be565b61342a81856133c9565b935061343a8185602086016133da565b61344381613404565b840191505092915050565b600060208201905081810360008301526134688184613415565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006134b56134b06134ab84613470565b613490565b613470565b9050919050565b60006134c78261349a565b9050919050565b60006134d9826134bc565b9050919050565b6134e9816134ce565b82525050565b600060208201905061350460008301846134e0565b92915050565b600080fd5b600061351a82613470565b9050919050565b61352a8161350f565b811461353557600080fd5b50565b60008135905061354781613521565b92915050565b6000819050919050565b6135608161354d565b811461356b57600080fd5b50565b60008135905061357d81613557565b92915050565b6000806040838503121561359a5761359961350a565b5b60006135a885828601613538565b92505060206135b98582860161356e565b9150509250929050565b60008115159050919050565b6135d8816135c3565b82525050565b60006020820190506135f360008301846135cf565b92915050565b6136028161354d565b82525050565b600060208201905061361d60008301846135f9565b92915050565b60008060006060848603121561363c5761363b61350a565b5b600061364a86828701613538565b935050602061365b86828701613538565b925050604061366c8682870161356e565b9150509250925092565b61367f816135c3565b811461368a57600080fd5b50565b60008135905061369c81613676565b92915050565b600080604083850312156136b9576136b861350a565b5b60006136c785828601613538565b92505060206136d88582860161368d565b9150509250929050565b600060ff82169050919050565b6136f8816136e2565b82525050565b600060208201905061371360008301846136ef565b92915050565b60006137248261350f565b9050919050565b61373481613719565b811461373f57600080fd5b50565b6000813590506137518161372b565b92915050565b60006020828403121561376d5761376c61350a565b5b600061377b84828501613742565b91505092915050565b60006020828403121561379a5761379961350a565b5b60006137a88482850161356e565b91505092915050565b6000602082840312156137c7576137c661350a565b5b60006137d584828501613538565b91505092915050565b6137e78161350f565b82525050565b600060208201905061380260008301846137de565b92915050565b60006020828403121561381e5761381d61350a565b5b600061382c8482850161368d565b91505092915050565b6000806040838503121561384c5761384b61350a565b5b600061385a85828601613538565b925050602061386b85828601613538565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806138bc57607f821691505b6020821081036138cf576138ce613875565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061390f8261354d565b915061391a8361354d565b9250828203905081811115613932576139316138d5565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061396e6020836133c9565b915061397982613938565b602082019050919050565b6000602082019050818103600083015261399d81613961565b9050919050565b60006139af8261354d565b91506139ba8361354d565b92508282019050808211156139d2576139d16138d5565b5b92915050565b6000815190506139e781613557565b92915050565b600060208284031215613a0357613a0261350a565b5b6000613a11848285016139d8565b91505092915050565b7f496e76616c696420416d6f756e74000000000000000000000000000000000000600082015250565b6000613a50600e836133c9565b9150613a5b82613a1a565b602082019050919050565b60006020820190508181036000830152613a7f81613a43565b9050919050565b6000604082019050613a9b60008301856137de565b613aa860208301846135f9565b9392505050565b600081519050613abe81613676565b92915050565b600060208284031215613ada57613ad961350a565b5b6000613ae884828501613aaf565b91505092915050565b6000613afc8261354d565b9150613b078361354d565b9250828202613b158161354d565b91508282048414831517613b2c57613b2b6138d5565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613b6d8261354d565b9150613b788361354d565b925082613b8857613b87613b33565b5b828204905092915050565b7f3a20616c726561647920656e61626c6564000000000000000000000000000000600082015250565b6000613bc96011836133c9565b9150613bd482613b93565b602082019050919050565b60006020820190508181036000830152613bf881613bbc565b9050919050565b7f3a20616c72656164792072656d6f766564000000000000000000000000000000600082015250565b6000613c356011836133c9565b9150613c4082613bff565b602082019050919050565b60006020820190508181036000830152613c6481613c28565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000613cc76026836133c9565b9150613cd282613c6b565b604082019050919050565b60006020820190508181036000830152613cf681613cba565b9050919050565b7f20617070726f76652066726f6d20746865207a65726f20616464726573730000600082015250565b6000613d33601e836133c9565b9150613d3e82613cfd565b602082019050919050565b60006020820190508181036000830152613d6281613d26565b9050919050565b7f617070726f766520746f20746865207a65726f20616464726573730000000000600082015250565b6000613d9f601b836133c9565b9150613daa82613d69565b602082019050919050565b60006020820190508181036000830152613dce81613d92565b9050919050565b7f7472616e736665722066726f6d20746865207a65726f20616464726573730000600082015250565b6000613e0b601e836133c9565b9150613e1682613dd5565b602082019050919050565b60006020820190508181036000830152613e3a81613dfe565b9050919050565b7f7472616e7366657220746f20746865207a65726f206164647265737300000000600082015250565b6000613e77601c836133c9565b9150613e8282613e41565b602082019050919050565b60006020820190508181036000830152613ea681613e6a565b9050919050565b7f416d6f756e74206d7573742062652067726561746572207468616e207a65726f600082015250565b6000613ee36020836133c9565b9150613eee82613ead565b602082019050919050565b60006020820190508181036000830152613f1281613ed6565b9050919050565b7f206d61782074786e206c696d6974206578636565647300000000000000000000600082015250565b6000613f4f6016836133c9565b9150613f5a82613f19565b602082019050919050565b60006020820190508181036000830152613f7e81613f42565b9050919050565b7f3a2074726164696e672069732064697361626c65640000000000000000000000600082015250565b6000613fbb6015836133c9565b9150613fc682613f85565b602082019050919050565b60006020820190508181036000830152613fea81613fae565b9050919050565b7f3a206d617820686f6c64206c696d697420657863656564656400000000000000600082015250565b60006140276019836133c9565b915061403282613ff1565b602082019050919050565b600060208201905081810360008301526140568161401a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815190506140ca81613521565b92915050565b6000602082840312156140e6576140e561350a565b5b60006140f4848285016140bb565b91505092915050565b6000819050919050565b600061412261411d614118846140fd565b613490565b61354d565b9050919050565b61413281614107565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61416d8161350f565b82525050565b600061417f8383614164565b60208301905092915050565b6000602082019050919050565b60006141a382614138565b6141ad8185614143565b93506141b883614154565b8060005b838110156141e95781516141d08882614173565b97506141db8361418b565b9250506001810190506141bc565b5085935050505092915050565b600060a08201905061420b60008301886135f9565b6142186020830187614129565b818103604083015261422a8186614198565b905061423960608301856137de565b61424660808301846135f9565b969550505050505056fea264697066735822122062101dbd4320b1853337a7f3b87595cd01889534707b61a6df5127d364e1b85464736f6c63430008120033

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

0000000000000000000000002ce40ee87f09fca8b23a8b23f5ccff842c2e0ec3

-----Decoded View---------------
Arg [0] : _marketingWallet (address): 0x2ce40eE87F09FCA8b23A8B23F5CCFf842c2E0eC3

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000002ce40ee87f09fca8b23a8b23f5ccff842c2e0ec3


Deployed Bytecode Sourcemap

5308:11625:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8081:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6481:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8969:186;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8358:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5845:59;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6447:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9163:350;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10469:173;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8267:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16427:115;;;;;;;;;;;;;:::i;:::-;;9521:292;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16726:202;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6237:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12354:154;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5665:49;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11140:131;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6776:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6062:55;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8466:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4855:157;;;;;;;;;;;;;:::i;:::-;;5780:56;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10771:109;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6328:22;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11896:232;;;;;;;;;;;;;:::i;:::-;;4641:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8172:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11507:178;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5721:52;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5959:56;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10888:107;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12516:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9821:300;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10296:165;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8593:192;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11400:99;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6203:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11279:113;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11003:129;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;16550:168;;;;;;;;;;;;;:::i;:::-;;12136:210;;;;;;;;;;;;;:::i;:::-;;6820:38;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8793:168;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10129:159;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6378:19;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10650:113;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6537:22;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5020:281;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6161:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8081:83;8118:13;8151:5;8144:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8081:83;:::o;6481:27::-;;;;;;;;;;;;;:::o;8969:186::-;9069:4;9086:39;9095:12;:10;:12::i;:::-;9109:7;9118:6;9086:8;:39::i;:::-;9143:4;9136:11;;8969:186;;;;:::o;8358:100::-;8411:7;8438:12;;8431:19;;8358:100;:::o;5845:59::-;;;;:::o;6447:25::-;;;;;;;;;;;;;:::o;9163:350::-;9295:4;9312:36;9322:6;9330:9;9341:6;9312:9;:36::i;:::-;9359:124;9382:6;9403:12;:10;:12::i;:::-;9466:6;9430:11;:19;9442:6;9430:19;;;;;;;;;;;;;;;:33;9450:12;:10;:12::i;:::-;9430:33;;;;;;;;;;;;;;;;:42;;;;:::i;:::-;9359:8;:124::i;:::-;9501:4;9494:11;;9163:350;;;;;:::o;10469:173::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10629:5:::1;10593:24;:33;10618:7;10593:33;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;10469:173:::0;;:::o;8267:83::-;8308:5;8333:9;;;;;;;;;;;8326:16;;8267:83;:::o;16427:115::-;16475:21;;;;;;;;;;;16471:64;;;16513:10;:8;:10::i;:::-;16471:64;16427:115::o;9521:292::-;9634:4;9651:132;9674:12;:10;:12::i;:::-;9701:7;9761:10;9723:11;:25;9735:12;:10;:12::i;:::-;9723:25;;;;;;;;;;;;;;;:34;9749:7;9723:34;;;;;;;;;;;;;;;;:49;;;;:::i;:::-;9651:8;:132::i;:::-;9801:4;9794:11;;9521:292;;;;:::o;16726:202::-;16824:1;16790:6;:16;;;16815:4;16790:31;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:35;16782:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;16855:6;:15;;;16871;;;;;;;;;;;16888:6;:16;;;16913:4;16888:31;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16855:65;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;16726:202;:::o;6237:33::-;;;;;;;;;;;;;:::o;12354:154::-;12426:7;12485:14;;12463:17;;12454:6;:26;;;;:::i;:::-;12453:47;;;;:::i;:::-;12446:54;;12354:154;;;:::o;5665:49::-;;;;;;;;;;;;;;;;;;;;;;:::o;11140:131::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11250:13:::1;11229:18;:34;;;;11140:131:::0;:::o;6776:37::-;;;;:::o;6062:55::-;;;;:::o;8466:119::-;8532:7;8559:9;:18;8569:7;8559:18;;;;;;;;;;;;;;;;8552:25;;8466:119;;;:::o;4855:157::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4962:1:::1;4925:40;;4946:6;::::0;::::1;;;;;;;;4925:40;;;;;;;;;;;;5001:1;4976:6:::0;::::1;:28;;;;;;;;;;;;;;;;;;4855:157::o:0;5780:56::-;;;;;;;;;;;;;;;;;;;;;;:::o;10771:109::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10868:4:::1;10858:7;:14;;;;:::i;:::-;10843:12;:29;;;;10771:109:::0;:::o;6328:22::-;;;;;;;;;;;;;:::o;11896:232::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11960:7:::1;;;;;;;;;;;11959:8;11951:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;12010:4;12000:7;;:14;;;;;;;;;;;;;;;;;;12038:4;12025:10;;:17;;;;;;;;;;;;;;;;;;12077:4;12053:21;;:28;;;;;;;;;;;;;;;;;;12105:15;12092:10;:28;;;;11896:232::o:0;4641:79::-;4679:7;4706:6;;;;;;;;;;;4699:13;;4641:79;:::o;8172:87::-;8211:13;8244:7;8237:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8172:87;:::o;11507:178::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11619:16:::1;11601:15;;:34;;;;;;;;;;;;;;;;;;11646:31;11660:16;11646:13;:31::i;:::-;11507:178:::0;:::o;5721:52::-;;;;;;;;;;;;;;;;;;;;;;:::o;5959:56::-;;;;:::o;10888:107::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10983:4:::1;10973:7;:14;;;;:::i;:::-;10959:11;:28;;;;10888:107:::0;:::o;12516:156::-;12589:7;12649:14;;12626:18;;12617:6;:27;;;;:::i;:::-;12616:48;;;;:::i;:::-;12609:55;;12516:156;;;:::o;9821:300::-;9939:4;9956:135;9979:12;:10;:12::i;:::-;10006:7;10065:15;10028:11;:25;10040:12;:10;:12::i;:::-;10028:25;;;;;;;;;;;;;;;:34;10054:7;10028:34;;;;;;;;;;;;;;;;:52;;;;:::i;:::-;9956:8;:135::i;:::-;10109:4;10102:11;;9821:300;;;;:::o;10296:165::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10448:5:::1;10416:20;:29;10437:7;10416:29;;;;;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;10296:165:::0;;:::o;8593:192::-;8696:4;8713:42;8723:12;:10;:12::i;:::-;8737:9;8748:6;8713:9;:42::i;:::-;8773:4;8766:11;;8593:192;;;;:::o;11400:99::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11485:6:::1;11472:10;;:19;;;;;;;;;;;;;;;;;;11400:99:::0;:::o;6203:25::-;;;;:::o;11279:113::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11378:6:::1;11354:21;;:30;;;;;;;;;;;;;;;;;;11279:113:::0;:::o;11003:129::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11111:13:::1;11091:17;:33;;;;11003:129:::0;:::o;16550:168::-;16623:1;16599:21;:25;16591:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;16662:15;;;;;;;;;;;16654:33;;:56;16688:21;16654:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16550:168::o;12136:210::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12197:13:::1;;;;;;;;;;;12196:14;12188:44;;;;;;;;;;;;:::i;:::-;;;;;;;;;12259:4;12243:13;;:20;;;;;;;;;;;;;;;;;;12289:12;;12274;:27;;;;12326:12;;12312:11;:26;;;;12136:210::o:0;6820:38::-;;;;:::o;8793:168::-;8899:7;8926:11;:18;8938:5;8926:18;;;;;;;;;;;;;;;:27;8945:7;8926:27;;;;;;;;;;;;;;;;8919:34;;8793:168;;;;:::o;10129:159::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10275:5:::1;10246:17;:26;10264:7;10246:26;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;;;;;;;10129:159:::0;;:::o;6378:19::-;;;;;;;;;;;;;:::o;10650:113::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10751:4:::1;10741:7;:14;;;;:::i;:::-;10724;:31;;;;10650:113:::0;:::o;6537:22::-;;;;;;;;;;;;;:::o;5020:281::-;4778:12;:10;:12::i;:::-;4768:22;;:6;;;;;;;;;;:22;;;4760:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5143:1:::1;5123:22;;:8;:22;;::::0;5101:110:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;5256:8;5227:38;;5248:6;::::0;::::1;;;;;;;;5227:38;;;;;;;;;;;;5285:8;5276:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;5020:281:::0;:::o;6161:35::-;;;;:::o;3977:115::-;4030:15;4073:10;4058:26;;3977:115;:::o;12680:324::-;12790:1;12773:19;;:5;:19;;;12765:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;12865:1;12846:21;;:7;:21;;;12838:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;12942:6;12912:11;:18;12924:5;12912:18;;;;;;;;;;;;;;;:27;12931:7;12912:27;;;;;;;;;;;;;;;:36;;;;12980:7;12964:32;;12973:5;12964:32;;;12989:6;12964:32;;;;;;:::i;:::-;;;;;;;;12680:324;;;:::o;13012:1077::-;13116:1;13100:18;;:4;:18;;;13092:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;13186:1;13172:16;;:2;:16;;;13164:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;13249:1;13240:6;:10;13232:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;13303:20;:26;13324:4;13303:26;;;;;;;;;;;;;;;;;;;;;;;;;13302:27;:56;;;;;13334:20;:24;13355:2;13334:24;;;;;;;;;;;;;;;;;;;;;;;;;13333:25;13302:56;13298:337;;;13393:11;;13383:6;:21;;13375:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;13453:7;;;;;;;;;;;13448:176;;13522:4;13511:15;;:7;;;;;;;;;;;:15;;;;:32;;;;;13541:2;13530:13;;:7;;;;;;;;;;;:13;;;;13511:32;13481:127;;;;;;;;;;;;:::i;:::-;;;;;;;;;13448:176;13298:337;13652:24;:28;13677:2;13652:28;;;;;;;;;;;;;;;;;;;;;;;;;13647:189;;13751:12;;13740:6;13724:13;13734:2;13724:9;:13::i;:::-;:22;;;;:::i;:::-;13723:40;;13697:127;;;;;;;;;;;;:::i;:::-;;;;;;;;;13647:189;13848:24;13863:4;13869:2;13848:14;:24::i;:::-;13885:12;13900:4;13885:19;;13921:17;:23;13939:4;13921:23;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;13948:17;:21;13966:2;13948:21;;;;;;;;;;;;;;;;;;;;;;;;;13921:48;:63;;;;13974:10;;;;;;;;;;;13973:11;13921:63;13917:111;;;14011:5;14001:15;;13917:111;14040:41;14055:4;14061:2;14065:6;14073:7;14040:14;:41::i;:::-;13081:1008;13012:1077;;;:::o;15538:459::-;15579:23;15605:24;15623:4;15605:9;:24::i;:::-;15579:50;;15642:60;15659:4;15674:9;;;;;;;;;;;15686:15;15642:8;:60::i;:::-;15715:59;15746:9;;;;;;;;;;;15758:15;15715:22;:59::i;:::-;15785:23;15811:21;15785:47;;15867:1;15849:15;:19;15845:102;;;15893:15;;;;;;;;;;;15885:33;;:50;15919:15;15885:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15845:102;15964:25;15973:15;15964:25;;;;;;:::i;:::-;;;;;;;;15566:431;;15538:459::o;11693:195::-;11780:4;11752:17;:25;11770:6;11752:25;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;;;;;;;11826:4;11795:20;:28;11816:6;11795:28;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;11876:4;11841:24;:32;11866:6;11841:32;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;11693:195;:::o;16005:414::-;16074:28;16105:24;16123:4;16105:9;:24::i;:::-;16074:55;;16140:15;16182:14;;16158:20;:38;;16140:56;;16225:10;:42;;;;;16260:7;;;;;;;;;;;16252:15;;:4;:15;;;;16225:42;:80;;;;;16284:21;;;;;;;;;;;16225:80;:138;;;;;16340:4;16324:21;;:4;:21;;;:38;;;;;16355:7;;;;;;;;;;;16349:13;;:2;:13;;;16324:38;16322:41;16225:138;16207:205;;;16390:10;:8;:10::i;:::-;16207:205;16063:356;;16005:414;;:::o;14097:1227::-;14263:6;14252:17;;:7;;;;;;;;;;;:17;;;:28;;;;;14273:7;14252:28;14248:1069;;;14299:14;14316:33;14342:6;14316:25;:33::i;:::-;14299:50;;14366:23;14401:6;14392;:15;;;;:::i;:::-;14366:41;;14464:6;14444:9;:17;14454:6;14444:17;;;;;;;;;;;;;;;;:26;;;;:::i;:::-;14424:9;:17;14434:6;14424:17;;;;;;;;;;;;;;;:46;;;;14531:15;14508:9;:20;14518:9;14508:20;;;;;;;;;;;;;;;;:38;;;;:::i;:::-;14485:9;:20;14495:9;14485:20;;;;;;;;;;;;;;;:61;;;;14583:9;14566:44;;14575:6;14566:44;;;14594:15;14566:44;;;;;;:::i;:::-;;;;;;;;14627:28;14640:6;14648;14627:12;:28::i;:::-;14282:385;;14248:1069;;;14697:9;14686:20;;:7;;;;;;;;;;;:20;;;:31;;;;;14710:7;14686:31;14682:635;;;14736:14;14753:34;14780:6;14753:26;:34::i;:::-;14736:51;;14804:23;14839:6;14830;:15;;;;:::i;:::-;14804:41;;14902:6;14882:9;:17;14892:6;14882:17;;;;;;;;;;;;;;;;:26;;;;:::i;:::-;14862:9;:17;14872:6;14862:17;;;;;;;;;;;;;;;:46;;;;14969:15;14946:9;:20;14956:9;14946:20;;;;;;;;;;;;;;;;:38;;;;:::i;:::-;14923:9;:20;14933:9;14923:20;;;;;;;;;;;;;;;:61;;;;15021:9;15004:44;;15013:6;15004:44;;;15032:15;15004:44;;;;;;:::i;:::-;;;;;;;;15065:28;15078:6;15086;15065:12;:28::i;:::-;14719:386;;14682:635;;;15175:6;15155:9;:17;15165:6;15155:17;;;;;;;;;;;;;;;;:26;;;;:::i;:::-;15135:9;:17;15145:6;15135:17;;;;;;;;;;;;;;;:46;;;;15243:6;15219:9;:20;15229:9;15219:20;;;;;;;;;;;;;;;;:31;;;;:::i;:::-;15196:9;:20;15206:9;15196:20;;;;;;;;;;;;;;;:54;;;;15287:9;15270:35;;15279:6;15270:35;;;15298:6;15270:35;;;;;;:::i;:::-;;;;;;;;14682:635;14248:1069;14097:1227;;;;:::o;16958:504::-;17073:20;17107:13;17073:48;;17134:21;17172:1;17158:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17134:40;;17203:4;17185;17190:1;17185:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;17229:9;:14;;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17219:4;17224:1;17219:7;;;;;;;;:::i;:::-;;;;;;;:26;;;;;;;;;;;17258:9;:60;;;17333:11;17359:1;17375:4;17402;17440:3;17422:15;:21;;;;:::i;:::-;17258:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17062:400;;16958:504;;:::o;15332:198::-;15460:6;15432:9;:24;15450:4;15432:24;;;;;;;;;;;;;;;;:35;;;;:::i;:::-;15405:9;:24;15423:4;15405:24;;;;;;;;;;;;;;;:62;;;;15508:4;15483:39;;15492:6;15483:39;;;15515:6;15483:39;;;;;;:::i;:::-;;;;;;;;15332:198;;:::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;1349:126::-;1386:7;1426:42;1419:5;1415:54;1404:65;;1349:126;;;:::o;1481:60::-;1509:3;1530:5;1523:12;;1481:60;;;:::o;1547:142::-;1597:9;1630:53;1648:34;1657:24;1675:5;1657:24;:::i;:::-;1648:34;:::i;:::-;1630:53;:::i;:::-;1617:66;;1547:142;;;:::o;1695:126::-;1745:9;1778:37;1809:5;1778:37;:::i;:::-;1765:50;;1695:126;;;:::o;1827:144::-;1895:9;1928:37;1959:5;1928:37;:::i;:::-;1915:50;;1827:144;;;:::o;1977:167::-;2082:55;2131:5;2082:55;:::i;:::-;2077:3;2070:68;1977:167;;:::o;2150:258::-;2261:4;2299:2;2288:9;2284:18;2276:26;;2312:89;2398:1;2387:9;2383:17;2374:6;2312:89;:::i;:::-;2150:258;;;;:::o;2495:117::-;2604:1;2601;2594:12;2741:96;2778:7;2807:24;2825:5;2807:24;:::i;:::-;2796:35;;2741:96;;;:::o;2843:122::-;2916:24;2934:5;2916:24;:::i;:::-;2909:5;2906:35;2896:63;;2955:1;2952;2945:12;2896:63;2843:122;:::o;2971:139::-;3017:5;3055:6;3042:20;3033:29;;3071:33;3098:5;3071:33;:::i;:::-;2971:139;;;;:::o;3116:77::-;3153:7;3182:5;3171:16;;3116:77;;;:::o;3199:122::-;3272:24;3290:5;3272:24;:::i;:::-;3265:5;3262:35;3252:63;;3311:1;3308;3301:12;3252:63;3199:122;:::o;3327:139::-;3373:5;3411:6;3398:20;3389:29;;3427:33;3454:5;3427:33;:::i;:::-;3327:139;;;;:::o;3472:474::-;3540:6;3548;3597:2;3585:9;3576:7;3572:23;3568:32;3565:119;;;3603:79;;:::i;:::-;3565:119;3723:1;3748:53;3793:7;3784:6;3773:9;3769:22;3748:53;:::i;:::-;3738:63;;3694:117;3850:2;3876:53;3921:7;3912:6;3901:9;3897:22;3876:53;:::i;:::-;3866:63;;3821:118;3472:474;;;;;:::o;3952:90::-;3986:7;4029:5;4022:13;4015:21;4004:32;;3952:90;;;:::o;4048:109::-;4129:21;4144:5;4129:21;:::i;:::-;4124:3;4117:34;4048:109;;:::o;4163:210::-;4250:4;4288:2;4277:9;4273:18;4265:26;;4301:65;4363:1;4352:9;4348:17;4339:6;4301:65;:::i;:::-;4163:210;;;;:::o;4379:118::-;4466:24;4484:5;4466:24;:::i;:::-;4461:3;4454:37;4379:118;;:::o;4503:222::-;4596:4;4634:2;4623:9;4619:18;4611:26;;4647:71;4715:1;4704:9;4700:17;4691:6;4647:71;:::i;:::-;4503:222;;;;:::o;4731:619::-;4808:6;4816;4824;4873:2;4861:9;4852:7;4848:23;4844:32;4841:119;;;4879:79;;:::i;:::-;4841:119;4999:1;5024:53;5069:7;5060:6;5049:9;5045:22;5024:53;:::i;:::-;5014:63;;4970:117;5126:2;5152:53;5197:7;5188:6;5177:9;5173:22;5152:53;:::i;:::-;5142:63;;5097:118;5254:2;5280:53;5325:7;5316:6;5305:9;5301:22;5280:53;:::i;:::-;5270:63;;5225:118;4731:619;;;;;:::o;5356:116::-;5426:21;5441:5;5426:21;:::i;:::-;5419:5;5416:32;5406:60;;5462:1;5459;5452:12;5406:60;5356:116;:::o;5478:133::-;5521:5;5559:6;5546:20;5537:29;;5575:30;5599:5;5575:30;:::i;:::-;5478:133;;;;:::o;5617:468::-;5682:6;5690;5739:2;5727:9;5718:7;5714:23;5710:32;5707:119;;;5745:79;;:::i;:::-;5707:119;5865:1;5890:53;5935:7;5926:6;5915:9;5911:22;5890:53;:::i;:::-;5880:63;;5836:117;5992:2;6018:50;6060:7;6051:6;6040:9;6036:22;6018:50;:::i;:::-;6008:60;;5963:115;5617:468;;;;;:::o;6091:86::-;6126:7;6166:4;6159:5;6155:16;6144:27;;6091:86;;;:::o;6183:112::-;6266:22;6282:5;6266:22;:::i;:::-;6261:3;6254:35;6183:112;;:::o;6301:214::-;6390:4;6428:2;6417:9;6413:18;6405:26;;6441:67;6505:1;6494:9;6490:17;6481:6;6441:67;:::i;:::-;6301:214;;;;:::o;6521:109::-;6571:7;6600:24;6618:5;6600:24;:::i;:::-;6589:35;;6521:109;;;:::o;6636:148::-;6722:37;6753:5;6722:37;:::i;:::-;6715:5;6712:48;6702:76;;6774:1;6771;6764:12;6702:76;6636:148;:::o;6790:165::-;6849:5;6887:6;6874:20;6865:29;;6903:46;6943:5;6903:46;:::i;:::-;6790:165;;;;:::o;6961:355::-;7033:6;7082:2;7070:9;7061:7;7057:23;7053:32;7050:119;;;7088:79;;:::i;:::-;7050:119;7208:1;7233:66;7291:7;7282:6;7271:9;7267:22;7233:66;:::i;:::-;7223:76;;7179:130;6961:355;;;;:::o;7322:329::-;7381:6;7430:2;7418:9;7409:7;7405:23;7401:32;7398:119;;;7436:79;;:::i;:::-;7398:119;7556:1;7581:53;7626:7;7617:6;7606:9;7602:22;7581:53;:::i;:::-;7571:63;;7527:117;7322:329;;;;:::o;7657:::-;7716:6;7765:2;7753:9;7744:7;7740:23;7736:32;7733:119;;;7771:79;;:::i;:::-;7733:119;7891:1;7916:53;7961:7;7952:6;7941:9;7937:22;7916:53;:::i;:::-;7906:63;;7862:117;7657:329;;;;:::o;7992:118::-;8079:24;8097:5;8079:24;:::i;:::-;8074:3;8067:37;7992:118;;:::o;8116:222::-;8209:4;8247:2;8236:9;8232:18;8224:26;;8260:71;8328:1;8317:9;8313:17;8304:6;8260:71;:::i;:::-;8116:222;;;;:::o;8344:323::-;8400:6;8449:2;8437:9;8428:7;8424:23;8420:32;8417:119;;;8455:79;;:::i;:::-;8417:119;8575:1;8600:50;8642:7;8633:6;8622:9;8618:22;8600:50;:::i;:::-;8590:60;;8546:114;8344:323;;;;:::o;8673:474::-;8741:6;8749;8798:2;8786:9;8777:7;8773:23;8769:32;8766:119;;;8804:79;;:::i;:::-;8766:119;8924:1;8949:53;8994:7;8985:6;8974:9;8970:22;8949:53;:::i;:::-;8939:63;;8895:117;9051:2;9077:53;9122:7;9113:6;9102:9;9098:22;9077:53;:::i;:::-;9067:63;;9022:118;8673:474;;;;;:::o;9153:180::-;9201:77;9198:1;9191:88;9298:4;9295:1;9288:15;9322:4;9319:1;9312:15;9339:320;9383:6;9420:1;9414:4;9410:12;9400:22;;9467:1;9461:4;9457:12;9488:18;9478:81;;9544:4;9536:6;9532:17;9522:27;;9478:81;9606:2;9598:6;9595:14;9575:18;9572:38;9569:84;;9625:18;;:::i;:::-;9569:84;9390:269;9339:320;;;:::o;9665:180::-;9713:77;9710:1;9703:88;9810:4;9807:1;9800:15;9834:4;9831:1;9824:15;9851:194;9891:4;9911:20;9929:1;9911:20;:::i;:::-;9906:25;;9945:20;9963:1;9945:20;:::i;:::-;9940:25;;9989:1;9986;9982:9;9974:17;;10013:1;10007:4;10004:11;10001:37;;;10018:18;;:::i;:::-;10001:37;9851:194;;;;:::o;10051:182::-;10191:34;10187:1;10179:6;10175:14;10168:58;10051:182;:::o;10239:366::-;10381:3;10402:67;10466:2;10461:3;10402:67;:::i;:::-;10395:74;;10478:93;10567:3;10478:93;:::i;:::-;10596:2;10591:3;10587:12;10580:19;;10239:366;;;:::o;10611:419::-;10777:4;10815:2;10804:9;10800:18;10792:26;;10864:9;10858:4;10854:20;10850:1;10839:9;10835:17;10828:47;10892:131;11018:4;10892:131;:::i;:::-;10884:139;;10611:419;;;:::o;11036:191::-;11076:3;11095:20;11113:1;11095:20;:::i;:::-;11090:25;;11129:20;11147:1;11129:20;:::i;:::-;11124:25;;11172:1;11169;11165:9;11158:16;;11193:3;11190:1;11187:10;11184:36;;;11200:18;;:::i;:::-;11184:36;11036:191;;;;:::o;11233:143::-;11290:5;11321:6;11315:13;11306:22;;11337:33;11364:5;11337:33;:::i;:::-;11233:143;;;;:::o;11382:351::-;11452:6;11501:2;11489:9;11480:7;11476:23;11472:32;11469:119;;;11507:79;;:::i;:::-;11469:119;11627:1;11652:64;11708:7;11699:6;11688:9;11684:22;11652:64;:::i;:::-;11642:74;;11598:128;11382:351;;;;:::o;11739:164::-;11879:16;11875:1;11867:6;11863:14;11856:40;11739:164;:::o;11909:366::-;12051:3;12072:67;12136:2;12131:3;12072:67;:::i;:::-;12065:74;;12148:93;12237:3;12148:93;:::i;:::-;12266:2;12261:3;12257:12;12250:19;;11909:366;;;:::o;12281:419::-;12447:4;12485:2;12474:9;12470:18;12462:26;;12534:9;12528:4;12524:20;12520:1;12509:9;12505:17;12498:47;12562:131;12688:4;12562:131;:::i;:::-;12554:139;;12281:419;;;:::o;12706:332::-;12827:4;12865:2;12854:9;12850:18;12842:26;;12878:71;12946:1;12935:9;12931:17;12922:6;12878:71;:::i;:::-;12959:72;13027:2;13016:9;13012:18;13003:6;12959:72;:::i;:::-;12706:332;;;;;:::o;13044:137::-;13098:5;13129:6;13123:13;13114:22;;13145:30;13169:5;13145:30;:::i;:::-;13044:137;;;;:::o;13187:345::-;13254:6;13303:2;13291:9;13282:7;13278:23;13274:32;13271:119;;;13309:79;;:::i;:::-;13271:119;13429:1;13454:61;13507:7;13498:6;13487:9;13483:22;13454:61;:::i;:::-;13444:71;;13400:125;13187:345;;;;:::o;13538:410::-;13578:7;13601:20;13619:1;13601:20;:::i;:::-;13596:25;;13635:20;13653:1;13635:20;:::i;:::-;13630:25;;13690:1;13687;13683:9;13712:30;13730:11;13712:30;:::i;:::-;13701:41;;13891:1;13882:7;13878:15;13875:1;13872:22;13852:1;13845:9;13825:83;13802:139;;13921:18;;:::i;:::-;13802:139;13586:362;13538:410;;;;:::o;13954:180::-;14002:77;13999:1;13992:88;14099:4;14096:1;14089:15;14123:4;14120:1;14113:15;14140:185;14180:1;14197:20;14215:1;14197:20;:::i;:::-;14192:25;;14231:20;14249:1;14231:20;:::i;:::-;14226:25;;14270:1;14260:35;;14275:18;;:::i;:::-;14260:35;14317:1;14314;14310:9;14305:14;;14140:185;;;;:::o;14331:167::-;14471:19;14467:1;14459:6;14455:14;14448:43;14331:167;:::o;14504:366::-;14646:3;14667:67;14731:2;14726:3;14667:67;:::i;:::-;14660:74;;14743:93;14832:3;14743:93;:::i;:::-;14861:2;14856:3;14852:12;14845:19;;14504:366;;;:::o;14876:419::-;15042:4;15080:2;15069:9;15065:18;15057:26;;15129:9;15123:4;15119:20;15115:1;15104:9;15100:17;15093:47;15157:131;15283:4;15157:131;:::i;:::-;15149:139;;14876:419;;;:::o;15301:167::-;15441:19;15437:1;15429:6;15425:14;15418:43;15301:167;:::o;15474:366::-;15616:3;15637:67;15701:2;15696:3;15637:67;:::i;:::-;15630:74;;15713:93;15802:3;15713:93;:::i;:::-;15831:2;15826:3;15822:12;15815:19;;15474:366;;;:::o;15846:419::-;16012:4;16050:2;16039:9;16035:18;16027:26;;16099:9;16093:4;16089:20;16085:1;16074:9;16070:17;16063:47;16127:131;16253:4;16127:131;:::i;:::-;16119:139;;15846:419;;;:::o;16271:225::-;16411:34;16407:1;16399:6;16395:14;16388:58;16480:8;16475:2;16467:6;16463:15;16456:33;16271:225;:::o;16502:366::-;16644:3;16665:67;16729:2;16724:3;16665:67;:::i;:::-;16658:74;;16741:93;16830:3;16741:93;:::i;:::-;16859:2;16854:3;16850:12;16843:19;;16502:366;;;:::o;16874:419::-;17040:4;17078:2;17067:9;17063:18;17055:26;;17127:9;17121:4;17117:20;17113:1;17102:9;17098:17;17091:47;17155:131;17281:4;17155:131;:::i;:::-;17147:139;;16874:419;;;:::o;17299:180::-;17439:32;17435:1;17427:6;17423:14;17416:56;17299:180;:::o;17485:366::-;17627:3;17648:67;17712:2;17707:3;17648:67;:::i;:::-;17641:74;;17724:93;17813:3;17724:93;:::i;:::-;17842:2;17837:3;17833:12;17826:19;;17485:366;;;:::o;17857:419::-;18023:4;18061:2;18050:9;18046:18;18038:26;;18110:9;18104:4;18100:20;18096:1;18085:9;18081:17;18074:47;18138:131;18264:4;18138:131;:::i;:::-;18130:139;;17857:419;;;:::o;18282:177::-;18422:29;18418:1;18410:6;18406:14;18399:53;18282:177;:::o;18465:366::-;18607:3;18628:67;18692:2;18687:3;18628:67;:::i;:::-;18621:74;;18704:93;18793:3;18704:93;:::i;:::-;18822:2;18817:3;18813:12;18806:19;;18465:366;;;:::o;18837:419::-;19003:4;19041:2;19030:9;19026:18;19018:26;;19090:9;19084:4;19080:20;19076:1;19065:9;19061:17;19054:47;19118:131;19244:4;19118:131;:::i;:::-;19110:139;;18837:419;;;:::o;19262:180::-;19402:32;19398:1;19390:6;19386:14;19379:56;19262:180;:::o;19448:366::-;19590:3;19611:67;19675:2;19670:3;19611:67;:::i;:::-;19604:74;;19687:93;19776:3;19687:93;:::i;:::-;19805:2;19800:3;19796:12;19789:19;;19448:366;;;:::o;19820:419::-;19986:4;20024:2;20013:9;20009:18;20001:26;;20073:9;20067:4;20063:20;20059:1;20048:9;20044:17;20037:47;20101:131;20227:4;20101:131;:::i;:::-;20093:139;;19820:419;;;:::o;20245:178::-;20385:30;20381:1;20373:6;20369:14;20362:54;20245:178;:::o;20429:366::-;20571:3;20592:67;20656:2;20651:3;20592:67;:::i;:::-;20585:74;;20668:93;20757:3;20668:93;:::i;:::-;20786:2;20781:3;20777:12;20770:19;;20429:366;;;:::o;20801:419::-;20967:4;21005:2;20994:9;20990:18;20982:26;;21054:9;21048:4;21044:20;21040:1;21029:9;21025:17;21018:47;21082:131;21208:4;21082:131;:::i;:::-;21074:139;;20801:419;;;:::o;21226:182::-;21366:34;21362:1;21354:6;21350:14;21343:58;21226:182;:::o;21414:366::-;21556:3;21577:67;21641:2;21636:3;21577:67;:::i;:::-;21570:74;;21653:93;21742:3;21653:93;:::i;:::-;21771:2;21766:3;21762:12;21755:19;;21414:366;;;:::o;21786:419::-;21952:4;21990:2;21979:9;21975:18;21967:26;;22039:9;22033:4;22029:20;22025:1;22014:9;22010:17;22003:47;22067:131;22193:4;22067:131;:::i;:::-;22059:139;;21786:419;;;:::o;22211:172::-;22351:24;22347:1;22339:6;22335:14;22328:48;22211:172;:::o;22389:366::-;22531:3;22552:67;22616:2;22611:3;22552:67;:::i;:::-;22545:74;;22628:93;22717:3;22628:93;:::i;:::-;22746:2;22741:3;22737:12;22730:19;;22389:366;;;:::o;22761:419::-;22927:4;22965:2;22954:9;22950:18;22942:26;;23014:9;23008:4;23004:20;23000:1;22989:9;22985:17;22978:47;23042:131;23168:4;23042:131;:::i;:::-;23034:139;;22761:419;;;:::o;23186:171::-;23326:23;23322:1;23314:6;23310:14;23303:47;23186:171;:::o;23363:366::-;23505:3;23526:67;23590:2;23585:3;23526:67;:::i;:::-;23519:74;;23602:93;23691:3;23602:93;:::i;:::-;23720:2;23715:3;23711:12;23704:19;;23363:366;;;:::o;23735:419::-;23901:4;23939:2;23928:9;23924:18;23916:26;;23988:9;23982:4;23978:20;23974:1;23963:9;23959:17;23952:47;24016:131;24142:4;24016:131;:::i;:::-;24008:139;;23735:419;;;:::o;24160:175::-;24300:27;24296:1;24288:6;24284:14;24277:51;24160:175;:::o;24341:366::-;24483:3;24504:67;24568:2;24563:3;24504:67;:::i;:::-;24497:74;;24580:93;24669:3;24580:93;:::i;:::-;24698:2;24693:3;24689:12;24682:19;;24341:366;;;:::o;24713:419::-;24879:4;24917:2;24906:9;24902:18;24894:26;;24966:9;24960:4;24956:20;24952:1;24941:9;24937:17;24930:47;24994:131;25120:4;24994:131;:::i;:::-;24986:139;;24713:419;;;:::o;25138:180::-;25186:77;25183:1;25176:88;25283:4;25280:1;25273:15;25307:4;25304:1;25297:15;25324:180;25372:77;25369:1;25362:88;25469:4;25466:1;25459:15;25493:4;25490:1;25483:15;25510:143;25567:5;25598:6;25592:13;25583:22;;25614:33;25641:5;25614:33;:::i;:::-;25510:143;;;;:::o;25659:351::-;25729:6;25778:2;25766:9;25757:7;25753:23;25749:32;25746:119;;;25784:79;;:::i;:::-;25746:119;25904:1;25929:64;25985:7;25976:6;25965:9;25961:22;25929:64;:::i;:::-;25919:74;;25875:128;25659:351;;;;:::o;26016:85::-;26061:7;26090:5;26079:16;;26016:85;;;:::o;26107:158::-;26165:9;26198:61;26216:42;26225:32;26251:5;26225:32;:::i;:::-;26216:42;:::i;:::-;26198:61;:::i;:::-;26185:74;;26107:158;;;:::o;26271:147::-;26366:45;26405:5;26366:45;:::i;:::-;26361:3;26354:58;26271:147;;:::o;26424:114::-;26491:6;26525:5;26519:12;26509:22;;26424:114;;;:::o;26544:184::-;26643:11;26677:6;26672:3;26665:19;26717:4;26712:3;26708:14;26693:29;;26544:184;;;;:::o;26734:132::-;26801:4;26824:3;26816:11;;26854:4;26849:3;26845:14;26837:22;;26734:132;;;:::o;26872:108::-;26949:24;26967:5;26949:24;:::i;:::-;26944:3;26937:37;26872:108;;:::o;26986:179::-;27055:10;27076:46;27118:3;27110:6;27076:46;:::i;:::-;27154:4;27149:3;27145:14;27131:28;;26986:179;;;;:::o;27171:113::-;27241:4;27273;27268:3;27264:14;27256:22;;27171:113;;;:::o;27320:732::-;27439:3;27468:54;27516:5;27468:54;:::i;:::-;27538:86;27617:6;27612:3;27538:86;:::i;:::-;27531:93;;27648:56;27698:5;27648:56;:::i;:::-;27727:7;27758:1;27743:284;27768:6;27765:1;27762:13;27743:284;;;27844:6;27838:13;27871:63;27930:3;27915:13;27871:63;:::i;:::-;27864:70;;27957:60;28010:6;27957:60;:::i;:::-;27947:70;;27803:224;27790:1;27787;27783:9;27778:14;;27743:284;;;27747:14;28043:3;28036:10;;27444:608;;;27320:732;;;;:::o;28058:831::-;28321:4;28359:3;28348:9;28344:19;28336:27;;28373:71;28441:1;28430:9;28426:17;28417:6;28373:71;:::i;:::-;28454:80;28530:2;28519:9;28515:18;28506:6;28454:80;:::i;:::-;28581:9;28575:4;28571:20;28566:2;28555:9;28551:18;28544:48;28609:108;28712:4;28703:6;28609:108;:::i;:::-;28601:116;;28727:72;28795:2;28784:9;28780:18;28771:6;28727:72;:::i;:::-;28809:73;28877:3;28866:9;28862:19;28853:6;28809:73;:::i;:::-;28058:831;;;;;;;;:::o

Swarm Source

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