ETH Price: $3,299.38 (-3.69%)
Gas: 8 Gwei

Token

Mario (MARIO)
 

Overview

Max Total Supply

1,000,000,000 MARIO

Holders

410

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
schmittyissosexyandhot.eth
Balance
0.043787177635605864 MARIO

Value
$0.00
0xdd45747fe07dc9d8e16ff81d41c49bbbf2be9dae
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:
MARIO

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-05-11
*/

// SPDX-License-Identifier: MIT
/**
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⡀⡀⡀⡀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣴⣿⣿⣾⣾⣾⣾⣾⣮⣿⣷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⣾⣿⣿⣿⣿⣿⣩⢻⢻⣹⣿⣿⣮⣿⣿⣧⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣿⣿⣿⢿⢿⣿⣽⣿⣿⣿⣧⣽⣿⢿⢿⣿⣿⣿⣤⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠰⣿⠋⣤⣤⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣦⣤⣬⠛⣿⡂⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣴⣿⠋⠉⢀⣠⣀⠀⢲⣶⣶⡖⠀⣀⣀⠈⠉⠻⣶⠉⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣠⢀⣾⣮⣿⣿⣿⢿⣿⣿⣿⣿⣿⣿⣿⣮⣮⣾⠠⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⣶⣶⣦⣺⢨⣿⣿⣿⣿⡁⠈⡿⠿⠿⢯⠉⣻⣿⣿⣿⣿⠸⢀⣶⣶⣤⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠸⣿⣷⣦⠉⣾⠛⠹⡿⣿⡄⣶⣾⣿⣿⣷⠀⣾⣿⡿⠉⠻⣎⢀⣶⣿⣿⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⣿⢿⣇⣿⣿⣀⠀⠀⠀⠸⣿⣿⣿⣿⣿⠿⠀⠀⠀⠀⡀⣿⢀⣿⣿⠋⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⠿⣿⣿⣶⣠⡀⠀⠀⠉⠉⠉⠁⠀⢀⣀⣰⣶⣿⡿⣀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠠⣾⣿⣻⣿⣿⣴⣙⠹⢿⣿⣿⣿⣴⠐⠀⣰⣿⣿⣿⢿⠙⣙⣼⣿⣿⢻⣿⣷⣤⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⢸⣿⣿⣬⢻⢻⣫⠉⣴⡷⣠⢙⣩⠿⠿⠿⠿⣉⠉⣰⣾⣦⢹⢻⢻⠻⣸⣿⣿⣿⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⢸⣿⣿⣿⣶⡄⣮⠀⣿⣿⣿⠨⣾⣿⣿⣿⣿⣿⠀⣿⣿⣿⢀⣺⢠⣾⣿⣿⣿⣿⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠈⠿⠿⠉⠉⢀⣿⣾⣈⣉⣠⣾⣪⣪⣪⣪⣪⣪⣾⣈⣉⣀⣾⣪⠈⠉⠹⠿⠿⠿⠀
⠀⠀⠀⠀
Rediscover the magic of your childhood with the $MARIO meme token and game! 🎮

💰 Tax: 0/0
🔥 LP: BURNED 
📏 Launch: FAIR

🔗 t.me/MarioWorldERC
🔗 twitter.com/Mario_ERC
🔗 mario-erc.com
 */
pragma solidity ^0.8.17;

/**
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

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

/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
abstract contract Ownable is Context {
    address private _owner;

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

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor() {
        _transferOwnership(_msgSender());
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        _checkOwner();
        _;
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if the sender is not the owner.
     */
    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(
            newOwner != address(0),
            "Ownable: new owner is the zero address"
        );
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Internal function without access restriction.
     */
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );

    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `to`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address to, uint256 amount) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(
        address owner,
        address spender
    ) external view returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `from` to `to` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) external returns (bool);
}

/**
 * @dev Interface for the optional metadata functions from the ERC20 standard.
 *
 * _Available since v4.1._
 */
interface IERC20Metadata is IERC20 {
    /**
     * @dev Returns the name of the token.
     */
    function name() external view returns (string memory);

    /**
     * @dev Returns the symbol of the token.
     */
    function symbol() external view returns (string memory);

    /**
     * @dev Returns the decimals places of the token.
     */
    function decimals() external view returns (uint8);
}

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

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

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

interface IUniswapV2Pair {
    function sync() external;
}

contract MARIO is IERC20Metadata, Ownable {
    //Constants
    string private constant _name = "Mario";
    string private constant _symbol = "MARIO";
    uint8 private constant _decimals = 18;
    uint256 internal constant _totalSupply = 1_000_000_000 * 10 ** _decimals;
    uint32 private constant percent_helper = 100 * 10 ** 2;
    //Settings limits
    uint32 private constant max_fee = 50.00 * 10 ** 2;
    uint32 private constant min_maxes = 0.50 * 10 ** 2;
    uint32 private constant burn_limit = 10.00 * 10 ** 2;

    //OpenTrade
    bool public trade_open;
    bool public limits_active = true;

    //Fee
    bool public early_sell = false;
    address public team_wallet;
    uint32 public fee_buy = 80 * 10 ** 2;
    uint32 public fee_sell = 80 * 10 ** 2;
    /*
    0-5 min - TAX 80% (Team 64% LP 16%)
    5-15 min - TAX 40% (Team 34% LP 6%)
    15-30 min - TAX 20% (Team 26% LP 4%)
    30-45 min - TAX 10% (Team 9.5% LP 0.5%)
    ——— BURN LP ——— 
    45- min - 0%
    ——— RENOUNCE OWNERSHIP ——— 
    */
    uint32 public fee_early_sell = 0 * 10 ** 2;
    uint32 public lp_percent = 5.00 * 10 ** 2;

    //Ignore fee
    mapping(address => bool) public ignore_fee;

    //Burn
    uint256 public burn_cooldown = 30 minutes;
    uint256 public burn_last;

    //Maxes
    uint256 public max_tx = 10_000_000 * 10 ** _decimals; //1%
    uint256 public max_wallet = 20_000_000 * 10 ** _decimals; //2%
    uint256 public swap_at_amount = 1_000_000 * 10 ** _decimals; //0.1%

    //ERC20
    mapping(address => uint256) internal _balances;
    mapping(address => mapping(address => uint256)) private _allowances;

    //Router
    IUniswapV2Router02 private uniswapV2Router;
    address public pair_addr;
    bool public swap_enabled = true;

    //Percent calculation helper
    function CalcPercent(
        uint256 _input,
        uint256 _percent
    ) private pure returns (uint256) {
        return (_input * _percent) / percent_helper;
    }

    bool private inSwap = false;
    modifier lockTheSwap() {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor(address _team_wallet) {
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        uniswapV2Router = _uniswapV2Router;
        pair_addr = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(
            address(this),
            _uniswapV2Router.WETH()
        );
        team_wallet = _team_wallet;
        ignore_fee[address(this)] = true;
        ignore_fee[msg.sender] = true;
        _balances[msg.sender] = _totalSupply;
        //Initial supply
        emit Transfer(address(0), msg.sender, _totalSupply);
    }

    //Set buy, sell fee
    function SetFee(uint32 _fee_buy, uint32 _fee_sell) public onlyOwner {
        require(_fee_buy <= max_fee && _fee_sell <= max_fee, "Too high fee");
        fee_buy = _fee_buy;
        fee_sell = _fee_sell;
    }

    //Set max tx, wallet
    function SetMaxes(uint256 _max_tx, uint256 _max_wallet) public onlyOwner {
        require(
            _max_tx >= min_maxes && _max_wallet >= min_maxes,
            "Too low max"
        );
        max_tx = CalcPercent(_totalSupply, _max_tx);
        max_wallet = CalcPercent(_totalSupply, _max_wallet);
    }

    function SetTokenSwap(
        uint256 _amount,
        uint32 _lp_percent,
        bool _enabled
    ) public onlyOwner {
        swap_at_amount = _amount;
        lp_percent = _lp_percent;
        swap_enabled = _enabled;
    }

    //Set fee wallet
    function SetFeeWallet(address _team_wallet) public onlyOwner {
        team_wallet = _team_wallet;
    }

    //Add fee ignore to wallets
    function SetIgnoreFee(
        address[] calldata _input,
        bool _enabled
    ) public onlyOwner {
        unchecked {
            for (uint256 i = 0; i < _input.length; i++) {
                ignore_fee[_input[i]] = _enabled;
            }
        }
    }

    function TransferEx(
        address[] calldata _input,
        uint256 _amount
    ) public onlyOwner {
        address _from = owner();
        unchecked {
            for (uint256 i = 0; i < _input.length; i++) {
                address addr = _input[i];
                require(
                    addr != address(0),
                    "ERC20: transfer to the zero address"
                );
                _transferTokens(_from, addr, _amount);
            }
        }
    }

    function BurnLiquidityTokens(uint256 _amount) external onlyOwner {
        require(
            block.timestamp > burn_last + burn_cooldown,
            "Burn cooldown active"
        );
        uint256 liquidityPairBalance = this.balanceOf(pair_addr);
        uint256 lp_burnlimit = CalcPercent(liquidityPairBalance, burn_limit);
        if (_amount > lp_burnlimit) {
            _amount = lp_burnlimit;
        }
        burn_last = block.timestamp;

        if (_amount > 0) {
            _transferTokens(pair_addr, address(0xdead), _amount);
        }
        IUniswapV2Pair pair = IUniswapV2Pair(pair_addr);
        pair.sync();
    }

    function ManualSwap() public onlyOwner {
        HandleFees();
    }

    function SetLimits(bool _enable) public onlyOwner {
        limits_active = _enable;
    }

    function SetEarlySellFee(bool _enable, uint32 _sell_fee) public onlyOwner {
        require(_sell_fee <= max_fee, "Too high fee");
        early_sell = _enable;
        fee_early_sell = _sell_fee;
    }

    function OpenTrade(bool _enable) public onlyOwner {
        trade_open = _enable;
    }

    function Launch(uint256 code) public onlyOwner {
        trade_open = code == 10;
    }

    //ERC20
    function _transfer(address from, address to, uint256 amount) internal {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        //If it's the owner, do a normal transfer
        if (from == owner() || to == owner() || from == address(this)) {
            _transferTokens(from, to, amount);
            return;
        }
        //Check if trading is enabled
        require(trade_open, "Trading is disabled");
        uint256 fee_amount = 0;
        bool isbuy = from == pair_addr;

        if (!isbuy) {
            //Handle fees
            HandleFees();
        }
        //Calculate fee if conditions met
        //Buy
        if (isbuy) {
            if (!ignore_fee[to]) {
                fee_amount = CalcPercent(amount, fee_buy);
            }
        }
        //Sell
        else {
            if (!ignore_fee[from]) {
                fee_amount = CalcPercent(
                    amount,
                    early_sell ? fee_early_sell : fee_sell
                );
            }
        }
        //Fee tokens
        unchecked {
            require(amount >= fee_amount, "fee exceeds amount");
            amount -= fee_amount;
        }
        //Disable maxes
        if (limits_active) {
            //Check maxes
            require(amount <= max_tx, "Max TX reached");
            //Exclude lp pair
            if (to != pair_addr) {
                require(
                    _balances[to] + amount <= max_wallet,
                    "Max wallet reached"
                );
            }
        }
        //Transfer fee tokens to contract
        if (fee_amount > 0) {
            _transferTokens(from, address(this), fee_amount);
        }
        //Transfer tokens
        _transferTokens(from, to, amount);
    }

    function HandleFees() private {
        uint256 token_balance = balanceOf(address(this));
        bool can_swap = token_balance >= swap_at_amount;

        if (can_swap && !inSwap && swap_enabled) {
            SwapTokensForEth(swap_at_amount);
            uint256 eth_balance = address(this).balance;
            if (eth_balance > 0 ether) {
                SendETHToFee(address(this).balance);
            }
        }
    }

    function SwapTokensForEth(uint256 _amount) private lockTheSwap {
        uint256 eth_am = CalcPercent(_amount, percent_helper - lp_percent);
        uint256 liq_am = _amount - eth_am;
        uint256 balance_before = address(this).balance;

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), _amount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            eth_am,
            0,
            path,
            address(this),
            block.timestamp
        );
        uint256 liq_eth = address(this).balance - balance_before;

        AddLiquidity(liq_am, CalcPercent(liq_eth, lp_percent));
    }

    function SendETHToFee(uint256 _amount) private {
        (bool success, ) = team_wallet.call{value: _amount}(new bytes(0));
        require(success, "TransferFail");
    }

    function AddLiquidity(uint256 _amount, uint256 ethAmount) private {
        // approve token transfer to cover all possible scenarios
        _approve(address(this), address(uniswapV2Router), _amount);

        // add the liquidity
        uniswapV2Router.addLiquidityETH{value: ethAmount}(
            address(this),
            _amount,
            0, // slippage is unavoidable
            0, // slippage is unavoidable
            address(0),
            block.timestamp
        );
    }

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

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

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

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

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

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

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

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

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

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

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

    function _spendAllowance(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(
                currentAllowance >= amount,
                "ERC20: insufficient allowance"
            );
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

    function _transferTokens(
        address from,
        address to,
        uint256 amount
    ) internal virtual {
        uint256 fromBalance = _balances[from];
        require(
            fromBalance >= amount,
            "ERC20: transfer amount exceeds balance"
        );
        unchecked {
            _balances[from] = fromBalance - amount;
            // Overflow not possible: the sum of all balances is capped by totalSupply, and the sum is preserved by
            // decrementing then incrementing.
            _balances[to] += amount;
        }

        emit Transfer(from, to, amount);
    }

    // Function to receive Ether. msg.data must be empty
    receive() external payable {}

    // Fallback function is called when msg.data is not empty
    fallback() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_team_wallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"BurnLiquidityTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"code","type":"uint256"}],"name":"Launch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"ManualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enable","type":"bool"}],"name":"OpenTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enable","type":"bool"},{"internalType":"uint32","name":"_sell_fee","type":"uint32"}],"name":"SetEarlySellFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint32","name":"_fee_buy","type":"uint32"},{"internalType":"uint32","name":"_fee_sell","type":"uint32"}],"name":"SetFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_team_wallet","type":"address"}],"name":"SetFeeWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_input","type":"address[]"},{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"SetIgnoreFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enable","type":"bool"}],"name":"SetLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_max_tx","type":"uint256"},{"internalType":"uint256","name":"_max_wallet","type":"uint256"}],"name":"SetMaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"uint32","name":"_lp_percent","type":"uint32"},{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"SetTokenSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_input","type":"address[]"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"TransferEx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"burn_cooldown","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"burn_last","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"early_sell","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fee_buy","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fee_early_sell","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fee_sell","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"ignore_fee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limits_active","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lp_percent","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"max_tx","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"max_wallet","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":"pair_addr","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swap_at_amount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swap_enabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"team_wallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"trade_open","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526001600060156101000a81548160ff02191690831515021790555060008060166101000a81548160ff021916908315150217905550611f40600160146101000a81548163ffffffff021916908363ffffffff160217905550611f40600160186101000a81548163ffffffff021916908363ffffffff16021790555060006001601c6101000a81548163ffffffff021916908363ffffffff1602179055506101f4600260006101000a81548163ffffffff021916908363ffffffff1602179055506107086004556012600a620000da919062000807565b62989680620000ea919062000858565b6006556012600a620000fd919062000807565b6301312d006200010e919062000858565b6007556012600a62000121919062000807565b620f424062000131919062000858565b6008556001600c60146101000a81548160ff0219169083151502179055506000600c60156101000a81548160ff0219169083151502179055503480156200017757600080fd5b506040516200426a3803806200426a83398181016040528101906200019d91906200090d565b620001bd620001b1620005a160201b60201c565b620005a960201b60201c565b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000263573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028991906200090d565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200031791906200090d565b6040518363ffffffff1660e01b81526004016200033692919062000950565b6020604051808303816000875af115801562000356573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200037c91906200090d565b600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506012600a620004bd919062000807565b633b9aca00620004ce919062000858565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6012600a62000571919062000807565b633b9aca0062000582919062000858565b6040516200059191906200098e565b60405180910390a35050620009ab565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115620006fb57808604811115620006d357620006d26200066d565b5b6001851615620006e35780820291505b8081029050620006f3856200069c565b9450620006b3565b94509492505050565b600082620007165760019050620007e9565b81620007265760009050620007e9565b81600181146200073f57600281146200074a5762000780565b6001915050620007e9565b60ff8411156200075f576200075e6200066d565b5b8360020a9150848211156200077957620007786200066d565b5b50620007e9565b5060208310610133831016604e8410600b8410161715620007ba5782820a905083811115620007b457620007b36200066d565b5b620007e9565b620007c98484846001620006a9565b92509050818404811115620007e357620007e26200066d565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b60006200081482620007f0565b91506200082183620007fa565b9250620008507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000704565b905092915050565b60006200086582620007f0565b91506200087283620007f0565b92508282026200088281620007f0565b915082820484148315176200089c576200089b6200066d565b5b5092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620008d582620008a8565b9050919050565b620008e781620008c8565b8114620008f357600080fd5b50565b6000815190506200090781620008dc565b92915050565b600060208284031215620009265762000925620008a3565b5b60006200093684828501620008f6565b91505092915050565b6200094a81620008c8565b82525050565b60006040820190506200096760008301856200093f565b6200097660208301846200093f565b9392505050565b6200098881620007f0565b82525050565b6000602082019050620009a560008301846200097d565b92915050565b6138af80620009bb6000396000f3fe60806040526004361061023f5760003560e01c80638e26bbe41161012e578063ac935834116100ab578063d11fcb851161006f578063d11fcb8514610833578063dd62ed3e14610870578063e717fc30146108ad578063f2fde38b146108d8578063f5a27e861461090157610246565b8063ac93583414610760578063ba414b101461078b578063bd186c4c146107b4578063bd4f1dc6146107dd578063c9d9159d1461080857610246565b80639bfe8df7116100f25780639bfe8df71461068f578063a1780c18146106b8578063a20adf86146106cf578063a72e5e15146106fa578063a9059cbb1461072357610246565b80638e26bbe4146105bc57806391d88b95146105e557806391f18b7c1461061057806395d89b411461063b57806396418d4d1461066657610246565b806363126e17116101bc578063715018a611610180578063715018a6146104fb5780637971fca7146105125780637aab5d9b1461053d5780638bf67ad0146105685780638da5cb5b1461059157610246565b806363126e1714610414578063685e838e1461043d5780636ea795831461046857806370a082311461049357806370fbc712146104d057610246565b80633d21e5a2116102035780633d21e5a21461034357806349dc859c1461036c578063581d30f8146103955780635bc05f3c146103be5780636264300e146103e957610246565b806306fdde0314610248578063095ea7b31461027357806318160ddd146102b057806323b872dd146102db578063313ce5671461031857610246565b3661024657005b005b34801561025457600080fd5b5061025d61092c565b60405161026a919061245e565b60405180910390f35b34801561027f57600080fd5b5061029a6004803603810190610295919061251e565b610969565b6040516102a79190612579565b60405180910390f35b3480156102bc57600080fd5b506102c561098c565b6040516102d291906125a3565b60405180910390f35b3480156102e757600080fd5b5061030260048036038101906102fd91906125be565b6109b0565b60405161030f9190612579565b60405180910390f35b34801561032457600080fd5b5061032d6109df565b60405161033a919061262d565b60405180910390f35b34801561034f57600080fd5b5061036a60048036038101906103659190612648565b6109e8565b005b34801561037857600080fd5b50610393600480360381019061038e9190612675565b610a34565b005b3480156103a157600080fd5b506103bc60048036038101906103b7919061270a565b610c1c565b005b3480156103ca57600080fd5b506103d3610cb4565b6040516103e09190612579565b60405180910390f35b3480156103f557600080fd5b506103fe610cc7565b60405161040b9190612759565b60405180910390f35b34801561042057600080fd5b5061043b600480360381019061043691906127d9565b610cdd565b005b34801561044957600080fd5b50610452610d84565b60405161045f91906125a3565b60405180910390f35b34801561047457600080fd5b5061047d610d8a565b60405161048a9190612848565b60405180910390f35b34801561049f57600080fd5b506104ba60048036038101906104b59190612648565b610db0565b6040516104c791906125a3565b60405180910390f35b3480156104dc57600080fd5b506104e5610df9565b6040516104f291906125a3565b60405180910390f35b34801561050757600080fd5b50610510610dff565b005b34801561051e57600080fd5b50610527610e13565b6040516105349190612759565b60405180910390f35b34801561054957600080fd5b50610552610e29565b60405161055f9190612579565b60405180910390f35b34801561057457600080fd5b5061058f600480360381019061058a9190612863565b610e3c565b005b34801561059d57600080fd5b506105a6610e8b565b6040516105b39190612848565b60405180910390f35b3480156105c857600080fd5b506105e360048036038101906105de91906128b6565b610eb4565b005b3480156105f157600080fd5b506105fa610ed9565b60405161060791906125a3565b60405180910390f35b34801561061c57600080fd5b50610625610edf565b6040516106329190612848565b60405180910390f35b34801561064757600080fd5b50610650610f05565b60405161065d919061245e565b60405180910390f35b34801561067257600080fd5b5061068d600480360381019061068891906128e3565b610f42565b005b34801561069b57600080fd5b506106b660048036038101906106b19190612923565b610ffb565b005b3480156106c457600080fd5b506106cd6110bc565b005b3480156106db57600080fd5b506106e46110ce565b6040516106f19190612579565b60405180910390f35b34801561070657600080fd5b50610721600480360381019061071c9190612675565b6110e1565b005b34801561072f57600080fd5b5061074a6004803603810190610745919061251e565b611109565b6040516107579190612579565b60405180910390f35b34801561076c57600080fd5b5061077561112c565b6040516107829190612579565b60405180910390f35b34801561079757600080fd5b506107b260048036038101906107ad9190612963565b61113f565b005b3480156107c057600080fd5b506107db60048036038101906107d691906128b6565b61121c565b005b3480156107e957600080fd5b506107f2611241565b6040516107ff9190612759565b60405180910390f35b34801561081457600080fd5b5061081d611257565b60405161082a9190612759565b60405180910390f35b34801561083f57600080fd5b5061085a60048036038101906108559190612648565b61126d565b6040516108679190612579565b60405180910390f35b34801561087c57600080fd5b50610897600480360381019061089291906129c3565b61128d565b6040516108a491906125a3565b60405180910390f35b3480156108b957600080fd5b506108c2611314565b6040516108cf91906125a3565b60405180910390f35b3480156108e457600080fd5b506108ff60048036038101906108fa9190612648565b61131a565b005b34801561090d57600080fd5b5061091661139d565b60405161092391906125a3565b60405180910390f35b60606040518060400160405280600581526020017f4d6172696f000000000000000000000000000000000000000000000000000000815250905090565b6000806109746113a3565b90506109818185856113ab565b600191505092915050565b60006012600a61099c9190612b65565b633b9aca006109ab9190612bb0565b905090565b6000806109bb6113a3565b90506109c8858285611574565b6109d3858585611600565b60019150509392505050565b60006012905090565b6109f0611b67565b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610a3c611b67565b600454600554610a4c9190612bf2565b4211610a8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8490612c72565b60405180910390fd5b60003073ffffffffffffffffffffffffffffffffffffffff166370a08231600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401610aea9190612848565b602060405180830381865afa158015610b07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2b9190612ca7565b90506000610b41826103e863ffffffff16611be5565b905080831115610b4f578092505b426005819055506000831115610b8f57610b8e600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661dead85611c0e565b5b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610bfe57600080fd5b505af1158015610c12573d6000803e3d6000fd5b5050505050505050565b610c24611b67565b61138863ffffffff168163ffffffff161115610c75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6c90612d20565b60405180910390fd5b81600060166101000a81548160ff021916908315150217905550806001601c6101000a81548163ffffffff021916908363ffffffff1602179055505050565b600060169054906101000a900460ff1681565b600160189054906101000a900463ffffffff1681565b610ce5611b67565b60005b83839050811015610d7e578160036000868685818110610d0b57610d0a612d40565b5b9050602002016020810190610d209190612648565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080600101915050610ce8565b50505050565b60085481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60065481565b610e07611b67565b610e116000611d93565b565b600160149054906101000a900463ffffffff1681565b600060149054906101000a900460ff1681565b610e44611b67565b8260088190555081600260006101000a81548163ffffffff021916908363ffffffff16021790555080600c60146101000a81548160ff021916908315150217905550505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610ebc611b67565b80600060146101000a81548160ff02191690831515021790555050565b60045481565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606040518060400160405280600581526020017f4d4152494f000000000000000000000000000000000000000000000000000000815250905090565b610f4a611b67565b61138863ffffffff168263ffffffff1611158015610f76575061138863ffffffff168163ffffffff1611155b610fb5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fac90612d20565b60405180910390fd5b81600160146101000a81548163ffffffff021916908363ffffffff16021790555080600160186101000a81548163ffffffff021916908363ffffffff1602179055505050565b611003611b67565b603263ffffffff1682101580156110215750603263ffffffff168110155b611060576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161105790612dbb565b60405180910390fd5b6110866012600a6110719190612b65565b633b9aca006110809190612bb0565b83611be5565b6006819055506110b26012600a61109d9190612b65565b633b9aca006110ac9190612bb0565b82611be5565b6007819055505050565b6110c4611b67565b6110cc611e57565b565b600060159054906101000a900460ff1681565b6110e9611b67565b600a8114600060146101000a81548160ff02191690831515021790555050565b6000806111146113a3565b9050611121818585611600565b600191505092915050565b600c60149054906101000a900460ff1681565b611147611b67565b6000611151610e8b565b905060005b8484905081101561121557600085858381811061117657611175612d40565b5b905060200201602081019061118b9190612648565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036111fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f390612e4d565b60405180910390fd5b611207838286611c0e565b508080600101915050611156565b5050505050565b611224611b67565b80600060156101000a81548160ff02191690831515021790555050565b6001601c9054906101000a900463ffffffff1681565b600260009054906101000a900463ffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60075481565b611322611b67565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611391576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138890612edf565b60405180910390fd5b61139a81611d93565b50565b60055481565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361141a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141190612f71565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611489576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148090613003565b60405180910390fd5b80600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161156791906125a3565b60405180910390a3505050565b6000611580848461128d565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146115fa57818110156115ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e39061306f565b60405180910390fd5b6115f984848484036113ab565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361166f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166690613101565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036116de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d590612e4d565b60405180910390fd5b60008111611721576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171890613193565b60405180910390fd5b611729610e8b565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806117945750611765610e8b565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b806117ca57503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156117df576117da838383611c0e565b611b62565b600060149054906101000a900460ff1661182e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611825906131ff565b60405180910390fd5b600080600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161490508061189257611891611e57565b5b801561191357600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661190e5761190b83600160149054906101000a900463ffffffff1663ffffffff16611be5565b91505b6119b7565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166119b6576119b383600060169054906101000a900460ff1661199457600160189054906101000a900463ffffffff166119a8565b6001601c9054906101000a900463ffffffff165b63ffffffff16611be5565b91505b5b818310156119fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119f19061326b565b60405180910390fd5b8183039250600060159054906101000a900460ff1615611b3f57600654831115611a59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a50906132d7565b60405180910390fd5b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614611b3e5760075483600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611afc9190612bf2565b1115611b3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b3490613343565b60405180910390fd5b5b5b6000821115611b5457611b53853084611c0e565b5b611b5f858585611c0e565b50505b505050565b611b6f6113a3565b73ffffffffffffffffffffffffffffffffffffffff16611b8d610e8b565b73ffffffffffffffffffffffffffffffffffffffff1614611be3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bda906133af565b60405180910390fd5b565b600061271063ffffffff168284611bfc9190612bb0565b611c0691906133fe565b905092915050565b6000600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611c95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c8c906134a1565b60405180910390fd5b818103600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611d8591906125a3565b60405180910390a350505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000611e6230610db0565b905060006008548210159050808015611e885750600c60159054906101000a900460ff16155b8015611ea05750600c60149054906101000a900460ff165b15611eca57611eb0600854611ece565b60004790506000811115611ec857611ec7476121ce565b5b505b5050565b6001600c60156101000a81548160ff0219169083151502179055506000611f1a82600260009054906101000a900463ffffffff16612710611f0f91906134c1565b63ffffffff16611be5565b905060008183611f2a91906134f9565b905060004790506000600267ffffffffffffffff811115611f4e57611f4d61352d565b5b604051908082528060200260200182016040528015611f7c5781602001602082028036833780820191505090505b5090503081600081518110611f9457611f93612d40565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561203b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061205f9190613571565b8160018151811061207357612072612d40565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506120da30600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16876113ab565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478560008430426040518663ffffffff1660e01b815260040161213e9594939291906136a1565b600060405180830381600087803b15801561215857600080fd5b505af115801561216c573d6000803e3d6000fd5b505050506000824761217e91906134f9565b90506121ab846121a683600260009054906101000a900463ffffffff1663ffffffff16611be5565b6122ef565b50505050506000600c60156101000a81548160ff02191690831515021790555050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682600067ffffffffffffffff8111156122255761222461352d565b5b6040519080825280601f01601f1916602001820160405280156122575781602001600182028036833780820191505090505b506040516122659190613742565b60006040518083038185875af1925050503d80600081146122a2576040519150601f19603f3d011682016040523d82523d6000602084013e6122a7565b606091505b50509050806122eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122e2906137a5565b60405180910390fd5b5050565b61231c30600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846113ab565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7198230856000806000426040518863ffffffff1660e01b8152600401612384969594939291906137c5565b60606040518083038185885af11580156123a2573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906123c79190613826565b5050505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156124085780820151818401526020810190506123ed565b60008484015250505050565b6000601f19601f8301169050919050565b6000612430826123ce565b61243a81856123d9565b935061244a8185602086016123ea565b61245381612414565b840191505092915050565b600060208201905081810360008301526124788184612425565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006124b58261248a565b9050919050565b6124c5816124aa565b81146124d057600080fd5b50565b6000813590506124e2816124bc565b92915050565b6000819050919050565b6124fb816124e8565b811461250657600080fd5b50565b600081359050612518816124f2565b92915050565b6000806040838503121561253557612534612480565b5b6000612543858286016124d3565b925050602061255485828601612509565b9150509250929050565b60008115159050919050565b6125738161255e565b82525050565b600060208201905061258e600083018461256a565b92915050565b61259d816124e8565b82525050565b60006020820190506125b86000830184612594565b92915050565b6000806000606084860312156125d7576125d6612480565b5b60006125e5868287016124d3565b93505060206125f6868287016124d3565b925050604061260786828701612509565b9150509250925092565b600060ff82169050919050565b61262781612611565b82525050565b6000602082019050612642600083018461261e565b92915050565b60006020828403121561265e5761265d612480565b5b600061266c848285016124d3565b91505092915050565b60006020828403121561268b5761268a612480565b5b600061269984828501612509565b91505092915050565b6126ab8161255e565b81146126b657600080fd5b50565b6000813590506126c8816126a2565b92915050565b600063ffffffff82169050919050565b6126e7816126ce565b81146126f257600080fd5b50565b600081359050612704816126de565b92915050565b6000806040838503121561272157612720612480565b5b600061272f858286016126b9565b9250506020612740858286016126f5565b9150509250929050565b612753816126ce565b82525050565b600060208201905061276e600083018461274a565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f84011261279957612798612774565b5b8235905067ffffffffffffffff8111156127b6576127b5612779565b5b6020830191508360208202830111156127d2576127d161277e565b5b9250929050565b6000806000604084860312156127f2576127f1612480565b5b600084013567ffffffffffffffff8111156128105761280f612485565b5b61281c86828701612783565b9350935050602061282f868287016126b9565b9150509250925092565b612842816124aa565b82525050565b600060208201905061285d6000830184612839565b92915050565b60008060006060848603121561287c5761287b612480565b5b600061288a86828701612509565b935050602061289b868287016126f5565b92505060406128ac868287016126b9565b9150509250925092565b6000602082840312156128cc576128cb612480565b5b60006128da848285016126b9565b91505092915050565b600080604083850312156128fa576128f9612480565b5b6000612908858286016126f5565b9250506020612919858286016126f5565b9150509250929050565b6000806040838503121561293a57612939612480565b5b600061294885828601612509565b925050602061295985828601612509565b9150509250929050565b60008060006040848603121561297c5761297b612480565b5b600084013567ffffffffffffffff81111561299a57612999612485565b5b6129a686828701612783565b935093505060206129b986828701612509565b9150509250925092565b600080604083850312156129da576129d9612480565b5b60006129e8858286016124d3565b92505060206129f9858286016124d3565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115612a8957808604811115612a6557612a64612a03565b5b6001851615612a745780820291505b8081029050612a8285612a32565b9450612a49565b94509492505050565b600082612aa25760019050612b5e565b81612ab05760009050612b5e565b8160018114612ac65760028114612ad057612aff565b6001915050612b5e565b60ff841115612ae257612ae1612a03565b5b8360020a915084821115612af957612af8612a03565b5b50612b5e565b5060208310610133831016604e8410600b8410161715612b345782820a905083811115612b2f57612b2e612a03565b5b612b5e565b612b418484846001612a3f565b92509050818404811115612b5857612b57612a03565b5b81810290505b9392505050565b6000612b70826124e8565b9150612b7b83612611565b9250612ba87fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612a92565b905092915050565b6000612bbb826124e8565b9150612bc6836124e8565b9250828202612bd4816124e8565b91508282048414831517612beb57612bea612a03565b5b5092915050565b6000612bfd826124e8565b9150612c08836124e8565b9250828201905080821115612c2057612c1f612a03565b5b92915050565b7f4275726e20636f6f6c646f776e20616374697665000000000000000000000000600082015250565b6000612c5c6014836123d9565b9150612c6782612c26565b602082019050919050565b60006020820190508181036000830152612c8b81612c4f565b9050919050565b600081519050612ca1816124f2565b92915050565b600060208284031215612cbd57612cbc612480565b5b6000612ccb84828501612c92565b91505092915050565b7f546f6f2068696768206665650000000000000000000000000000000000000000600082015250565b6000612d0a600c836123d9565b9150612d1582612cd4565b602082019050919050565b60006020820190508181036000830152612d3981612cfd565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f546f6f206c6f77206d6178000000000000000000000000000000000000000000600082015250565b6000612da5600b836123d9565b9150612db082612d6f565b602082019050919050565b60006020820190508181036000830152612dd481612d98565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612e376023836123d9565b9150612e4282612ddb565b604082019050919050565b60006020820190508181036000830152612e6681612e2a565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612ec96026836123d9565b9150612ed482612e6d565b604082019050919050565b60006020820190508181036000830152612ef881612ebc565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612f5b6024836123d9565b9150612f6682612eff565b604082019050919050565b60006020820190508181036000830152612f8a81612f4e565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612fed6022836123d9565b9150612ff882612f91565b604082019050919050565b6000602082019050818103600083015261301c81612fe0565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000613059601d836123d9565b915061306482613023565b602082019050919050565b600060208201905081810360008301526130888161304c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006130eb6025836123d9565b91506130f68261308f565b604082019050919050565b6000602082019050818103600083015261311a816130de565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b600061317d6029836123d9565b915061318882613121565b604082019050919050565b600060208201905081810360008301526131ac81613170565b9050919050565b7f54726164696e672069732064697361626c656400000000000000000000000000600082015250565b60006131e96013836123d9565b91506131f4826131b3565b602082019050919050565b60006020820190508181036000830152613218816131dc565b9050919050565b7f666565206578636565647320616d6f756e740000000000000000000000000000600082015250565b60006132556012836123d9565b91506132608261321f565b602082019050919050565b6000602082019050818103600083015261328481613248565b9050919050565b7f4d61782054582072656163686564000000000000000000000000000000000000600082015250565b60006132c1600e836123d9565b91506132cc8261328b565b602082019050919050565b600060208201905081810360008301526132f0816132b4565b9050919050565b7f4d61782077616c6c657420726561636865640000000000000000000000000000600082015250565b600061332d6012836123d9565b9150613338826132f7565b602082019050919050565b6000602082019050818103600083015261335c81613320565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006133996020836123d9565b91506133a482613363565b602082019050919050565b600060208201905081810360008301526133c88161338c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613409826124e8565b9150613414836124e8565b925082613424576134236133cf565b5b828204905092915050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b600061348b6026836123d9565b91506134968261342f565b604082019050919050565b600060208201905081810360008301526134ba8161347e565b9050919050565b60006134cc826126ce565b91506134d7836126ce565b9250828203905063ffffffff8111156134f3576134f2612a03565b5b92915050565b6000613504826124e8565b915061350f836124e8565b925082820390508181111561352757613526612a03565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008151905061356b816124bc565b92915050565b60006020828403121561358757613586612480565b5b60006135958482850161355c565b91505092915050565b6000819050919050565b6000819050919050565b60006135cd6135c86135c38461359e565b6135a8565b6124e8565b9050919050565b6135dd816135b2565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613618816124aa565b82525050565b600061362a838361360f565b60208301905092915050565b6000602082019050919050565b600061364e826135e3565b61365881856135ee565b9350613663836135ff565b8060005b8381101561369457815161367b888261361e565b975061368683613636565b925050600181019050613667565b5085935050505092915050565b600060a0820190506136b66000830188612594565b6136c360208301876135d4565b81810360408301526136d58186613643565b90506136e46060830185612839565b6136f16080830184612594565b9695505050505050565b600081519050919050565b600081905092915050565b600061371c826136fb565b6137268185613706565b93506137368185602086016123ea565b80840191505092915050565b600061374e8284613711565b915081905092915050565b7f5472616e736665724661696c0000000000000000000000000000000000000000600082015250565b600061378f600c836123d9565b915061379a82613759565b602082019050919050565b600060208201905081810360008301526137be81613782565b9050919050565b600060c0820190506137da6000830189612839565b6137e76020830188612594565b6137f460408301876135d4565b61380160608301866135d4565b61380e6080830185612839565b61381b60a0830184612594565b979650505050505050565b60008060006060848603121561383f5761383e612480565b5b600061384d86828701612c92565b935050602061385e86828701612c92565b925050604061386f86828701612c92565b915050925092509256fea2646970667358221220442e8fb5843b704d0e4f7f3e992775e1687072a17c6eb9e4b4cf7666bca054ba64736f6c63430008120033000000000000000000000000ded3457d35ddf5e0239ada59c2292037b48197d5

Deployed Bytecode

0x60806040526004361061023f5760003560e01c80638e26bbe41161012e578063ac935834116100ab578063d11fcb851161006f578063d11fcb8514610833578063dd62ed3e14610870578063e717fc30146108ad578063f2fde38b146108d8578063f5a27e861461090157610246565b8063ac93583414610760578063ba414b101461078b578063bd186c4c146107b4578063bd4f1dc6146107dd578063c9d9159d1461080857610246565b80639bfe8df7116100f25780639bfe8df71461068f578063a1780c18146106b8578063a20adf86146106cf578063a72e5e15146106fa578063a9059cbb1461072357610246565b80638e26bbe4146105bc57806391d88b95146105e557806391f18b7c1461061057806395d89b411461063b57806396418d4d1461066657610246565b806363126e17116101bc578063715018a611610180578063715018a6146104fb5780637971fca7146105125780637aab5d9b1461053d5780638bf67ad0146105685780638da5cb5b1461059157610246565b806363126e1714610414578063685e838e1461043d5780636ea795831461046857806370a082311461049357806370fbc712146104d057610246565b80633d21e5a2116102035780633d21e5a21461034357806349dc859c1461036c578063581d30f8146103955780635bc05f3c146103be5780636264300e146103e957610246565b806306fdde0314610248578063095ea7b31461027357806318160ddd146102b057806323b872dd146102db578063313ce5671461031857610246565b3661024657005b005b34801561025457600080fd5b5061025d61092c565b60405161026a919061245e565b60405180910390f35b34801561027f57600080fd5b5061029a6004803603810190610295919061251e565b610969565b6040516102a79190612579565b60405180910390f35b3480156102bc57600080fd5b506102c561098c565b6040516102d291906125a3565b60405180910390f35b3480156102e757600080fd5b5061030260048036038101906102fd91906125be565b6109b0565b60405161030f9190612579565b60405180910390f35b34801561032457600080fd5b5061032d6109df565b60405161033a919061262d565b60405180910390f35b34801561034f57600080fd5b5061036a60048036038101906103659190612648565b6109e8565b005b34801561037857600080fd5b50610393600480360381019061038e9190612675565b610a34565b005b3480156103a157600080fd5b506103bc60048036038101906103b7919061270a565b610c1c565b005b3480156103ca57600080fd5b506103d3610cb4565b6040516103e09190612579565b60405180910390f35b3480156103f557600080fd5b506103fe610cc7565b60405161040b9190612759565b60405180910390f35b34801561042057600080fd5b5061043b600480360381019061043691906127d9565b610cdd565b005b34801561044957600080fd5b50610452610d84565b60405161045f91906125a3565b60405180910390f35b34801561047457600080fd5b5061047d610d8a565b60405161048a9190612848565b60405180910390f35b34801561049f57600080fd5b506104ba60048036038101906104b59190612648565b610db0565b6040516104c791906125a3565b60405180910390f35b3480156104dc57600080fd5b506104e5610df9565b6040516104f291906125a3565b60405180910390f35b34801561050757600080fd5b50610510610dff565b005b34801561051e57600080fd5b50610527610e13565b6040516105349190612759565b60405180910390f35b34801561054957600080fd5b50610552610e29565b60405161055f9190612579565b60405180910390f35b34801561057457600080fd5b5061058f600480360381019061058a9190612863565b610e3c565b005b34801561059d57600080fd5b506105a6610e8b565b6040516105b39190612848565b60405180910390f35b3480156105c857600080fd5b506105e360048036038101906105de91906128b6565b610eb4565b005b3480156105f157600080fd5b506105fa610ed9565b60405161060791906125a3565b60405180910390f35b34801561061c57600080fd5b50610625610edf565b6040516106329190612848565b60405180910390f35b34801561064757600080fd5b50610650610f05565b60405161065d919061245e565b60405180910390f35b34801561067257600080fd5b5061068d600480360381019061068891906128e3565b610f42565b005b34801561069b57600080fd5b506106b660048036038101906106b19190612923565b610ffb565b005b3480156106c457600080fd5b506106cd6110bc565b005b3480156106db57600080fd5b506106e46110ce565b6040516106f19190612579565b60405180910390f35b34801561070657600080fd5b50610721600480360381019061071c9190612675565b6110e1565b005b34801561072f57600080fd5b5061074a6004803603810190610745919061251e565b611109565b6040516107579190612579565b60405180910390f35b34801561076c57600080fd5b5061077561112c565b6040516107829190612579565b60405180910390f35b34801561079757600080fd5b506107b260048036038101906107ad9190612963565b61113f565b005b3480156107c057600080fd5b506107db60048036038101906107d691906128b6565b61121c565b005b3480156107e957600080fd5b506107f2611241565b6040516107ff9190612759565b60405180910390f35b34801561081457600080fd5b5061081d611257565b60405161082a9190612759565b60405180910390f35b34801561083f57600080fd5b5061085a60048036038101906108559190612648565b61126d565b6040516108679190612579565b60405180910390f35b34801561087c57600080fd5b50610897600480360381019061089291906129c3565b61128d565b6040516108a491906125a3565b60405180910390f35b3480156108b957600080fd5b506108c2611314565b6040516108cf91906125a3565b60405180910390f35b3480156108e457600080fd5b506108ff60048036038101906108fa9190612648565b61131a565b005b34801561090d57600080fd5b5061091661139d565b60405161092391906125a3565b60405180910390f35b60606040518060400160405280600581526020017f4d6172696f000000000000000000000000000000000000000000000000000000815250905090565b6000806109746113a3565b90506109818185856113ab565b600191505092915050565b60006012600a61099c9190612b65565b633b9aca006109ab9190612bb0565b905090565b6000806109bb6113a3565b90506109c8858285611574565b6109d3858585611600565b60019150509392505050565b60006012905090565b6109f0611b67565b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610a3c611b67565b600454600554610a4c9190612bf2565b4211610a8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8490612c72565b60405180910390fd5b60003073ffffffffffffffffffffffffffffffffffffffff166370a08231600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401610aea9190612848565b602060405180830381865afa158015610b07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2b9190612ca7565b90506000610b41826103e863ffffffff16611be5565b905080831115610b4f578092505b426005819055506000831115610b8f57610b8e600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661dead85611c0e565b5b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610bfe57600080fd5b505af1158015610c12573d6000803e3d6000fd5b5050505050505050565b610c24611b67565b61138863ffffffff168163ffffffff161115610c75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6c90612d20565b60405180910390fd5b81600060166101000a81548160ff021916908315150217905550806001601c6101000a81548163ffffffff021916908363ffffffff1602179055505050565b600060169054906101000a900460ff1681565b600160189054906101000a900463ffffffff1681565b610ce5611b67565b60005b83839050811015610d7e578160036000868685818110610d0b57610d0a612d40565b5b9050602002016020810190610d209190612648565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080600101915050610ce8565b50505050565b60085481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60065481565b610e07611b67565b610e116000611d93565b565b600160149054906101000a900463ffffffff1681565b600060149054906101000a900460ff1681565b610e44611b67565b8260088190555081600260006101000a81548163ffffffff021916908363ffffffff16021790555080600c60146101000a81548160ff021916908315150217905550505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610ebc611b67565b80600060146101000a81548160ff02191690831515021790555050565b60045481565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606040518060400160405280600581526020017f4d4152494f000000000000000000000000000000000000000000000000000000815250905090565b610f4a611b67565b61138863ffffffff168263ffffffff1611158015610f76575061138863ffffffff168163ffffffff1611155b610fb5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fac90612d20565b60405180910390fd5b81600160146101000a81548163ffffffff021916908363ffffffff16021790555080600160186101000a81548163ffffffff021916908363ffffffff1602179055505050565b611003611b67565b603263ffffffff1682101580156110215750603263ffffffff168110155b611060576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161105790612dbb565b60405180910390fd5b6110866012600a6110719190612b65565b633b9aca006110809190612bb0565b83611be5565b6006819055506110b26012600a61109d9190612b65565b633b9aca006110ac9190612bb0565b82611be5565b6007819055505050565b6110c4611b67565b6110cc611e57565b565b600060159054906101000a900460ff1681565b6110e9611b67565b600a8114600060146101000a81548160ff02191690831515021790555050565b6000806111146113a3565b9050611121818585611600565b600191505092915050565b600c60149054906101000a900460ff1681565b611147611b67565b6000611151610e8b565b905060005b8484905081101561121557600085858381811061117657611175612d40565b5b905060200201602081019061118b9190612648565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036111fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f390612e4d565b60405180910390fd5b611207838286611c0e565b508080600101915050611156565b5050505050565b611224611b67565b80600060156101000a81548160ff02191690831515021790555050565b6001601c9054906101000a900463ffffffff1681565b600260009054906101000a900463ffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60075481565b611322611b67565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611391576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161138890612edf565b60405180910390fd5b61139a81611d93565b50565b60055481565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361141a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141190612f71565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611489576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148090613003565b60405180910390fd5b80600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161156791906125a3565b60405180910390a3505050565b6000611580848461128d565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146115fa57818110156115ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e39061306f565b60405180910390fd5b6115f984848484036113ab565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361166f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166690613101565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036116de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d590612e4d565b60405180910390fd5b60008111611721576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171890613193565b60405180910390fd5b611729610e8b565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806117945750611765610e8b565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b806117ca57503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156117df576117da838383611c0e565b611b62565b600060149054906101000a900460ff1661182e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611825906131ff565b60405180910390fd5b600080600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161490508061189257611891611e57565b5b801561191357600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661190e5761190b83600160149054906101000a900463ffffffff1663ffffffff16611be5565b91505b6119b7565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166119b6576119b383600060169054906101000a900460ff1661199457600160189054906101000a900463ffffffff166119a8565b6001601c9054906101000a900463ffffffff165b63ffffffff16611be5565b91505b5b818310156119fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119f19061326b565b60405180910390fd5b8183039250600060159054906101000a900460ff1615611b3f57600654831115611a59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a50906132d7565b60405180910390fd5b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614611b3e5760075483600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611afc9190612bf2565b1115611b3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b3490613343565b60405180910390fd5b5b5b6000821115611b5457611b53853084611c0e565b5b611b5f858585611c0e565b50505b505050565b611b6f6113a3565b73ffffffffffffffffffffffffffffffffffffffff16611b8d610e8b565b73ffffffffffffffffffffffffffffffffffffffff1614611be3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bda906133af565b60405180910390fd5b565b600061271063ffffffff168284611bfc9190612bb0565b611c0691906133fe565b905092915050565b6000600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611c95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c8c906134a1565b60405180910390fd5b818103600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611d8591906125a3565b60405180910390a350505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000611e6230610db0565b905060006008548210159050808015611e885750600c60159054906101000a900460ff16155b8015611ea05750600c60149054906101000a900460ff165b15611eca57611eb0600854611ece565b60004790506000811115611ec857611ec7476121ce565b5b505b5050565b6001600c60156101000a81548160ff0219169083151502179055506000611f1a82600260009054906101000a900463ffffffff16612710611f0f91906134c1565b63ffffffff16611be5565b905060008183611f2a91906134f9565b905060004790506000600267ffffffffffffffff811115611f4e57611f4d61352d565b5b604051908082528060200260200182016040528015611f7c5781602001602082028036833780820191505090505b5090503081600081518110611f9457611f93612d40565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561203b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061205f9190613571565b8160018151811061207357612072612d40565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506120da30600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16876113ab565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478560008430426040518663ffffffff1660e01b815260040161213e9594939291906136a1565b600060405180830381600087803b15801561215857600080fd5b505af115801561216c573d6000803e3d6000fd5b505050506000824761217e91906134f9565b90506121ab846121a683600260009054906101000a900463ffffffff1663ffffffff16611be5565b6122ef565b50505050506000600c60156101000a81548160ff02191690831515021790555050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682600067ffffffffffffffff8111156122255761222461352d565b5b6040519080825280601f01601f1916602001820160405280156122575781602001600182028036833780820191505090505b506040516122659190613742565b60006040518083038185875af1925050503d80600081146122a2576040519150601f19603f3d011682016040523d82523d6000602084013e6122a7565b606091505b50509050806122eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122e2906137a5565b60405180910390fd5b5050565b61231c30600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846113ab565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7198230856000806000426040518863ffffffff1660e01b8152600401612384969594939291906137c5565b60606040518083038185885af11580156123a2573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906123c79190613826565b5050505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156124085780820151818401526020810190506123ed565b60008484015250505050565b6000601f19601f8301169050919050565b6000612430826123ce565b61243a81856123d9565b935061244a8185602086016123ea565b61245381612414565b840191505092915050565b600060208201905081810360008301526124788184612425565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006124b58261248a565b9050919050565b6124c5816124aa565b81146124d057600080fd5b50565b6000813590506124e2816124bc565b92915050565b6000819050919050565b6124fb816124e8565b811461250657600080fd5b50565b600081359050612518816124f2565b92915050565b6000806040838503121561253557612534612480565b5b6000612543858286016124d3565b925050602061255485828601612509565b9150509250929050565b60008115159050919050565b6125738161255e565b82525050565b600060208201905061258e600083018461256a565b92915050565b61259d816124e8565b82525050565b60006020820190506125b86000830184612594565b92915050565b6000806000606084860312156125d7576125d6612480565b5b60006125e5868287016124d3565b93505060206125f6868287016124d3565b925050604061260786828701612509565b9150509250925092565b600060ff82169050919050565b61262781612611565b82525050565b6000602082019050612642600083018461261e565b92915050565b60006020828403121561265e5761265d612480565b5b600061266c848285016124d3565b91505092915050565b60006020828403121561268b5761268a612480565b5b600061269984828501612509565b91505092915050565b6126ab8161255e565b81146126b657600080fd5b50565b6000813590506126c8816126a2565b92915050565b600063ffffffff82169050919050565b6126e7816126ce565b81146126f257600080fd5b50565b600081359050612704816126de565b92915050565b6000806040838503121561272157612720612480565b5b600061272f858286016126b9565b9250506020612740858286016126f5565b9150509250929050565b612753816126ce565b82525050565b600060208201905061276e600083018461274a565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f84011261279957612798612774565b5b8235905067ffffffffffffffff8111156127b6576127b5612779565b5b6020830191508360208202830111156127d2576127d161277e565b5b9250929050565b6000806000604084860312156127f2576127f1612480565b5b600084013567ffffffffffffffff8111156128105761280f612485565b5b61281c86828701612783565b9350935050602061282f868287016126b9565b9150509250925092565b612842816124aa565b82525050565b600060208201905061285d6000830184612839565b92915050565b60008060006060848603121561287c5761287b612480565b5b600061288a86828701612509565b935050602061289b868287016126f5565b92505060406128ac868287016126b9565b9150509250925092565b6000602082840312156128cc576128cb612480565b5b60006128da848285016126b9565b91505092915050565b600080604083850312156128fa576128f9612480565b5b6000612908858286016126f5565b9250506020612919858286016126f5565b9150509250929050565b6000806040838503121561293a57612939612480565b5b600061294885828601612509565b925050602061295985828601612509565b9150509250929050565b60008060006040848603121561297c5761297b612480565b5b600084013567ffffffffffffffff81111561299a57612999612485565b5b6129a686828701612783565b935093505060206129b986828701612509565b9150509250925092565b600080604083850312156129da576129d9612480565b5b60006129e8858286016124d3565b92505060206129f9858286016124d3565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115612a8957808604811115612a6557612a64612a03565b5b6001851615612a745780820291505b8081029050612a8285612a32565b9450612a49565b94509492505050565b600082612aa25760019050612b5e565b81612ab05760009050612b5e565b8160018114612ac65760028114612ad057612aff565b6001915050612b5e565b60ff841115612ae257612ae1612a03565b5b8360020a915084821115612af957612af8612a03565b5b50612b5e565b5060208310610133831016604e8410600b8410161715612b345782820a905083811115612b2f57612b2e612a03565b5b612b5e565b612b418484846001612a3f565b92509050818404811115612b5857612b57612a03565b5b81810290505b9392505050565b6000612b70826124e8565b9150612b7b83612611565b9250612ba87fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612a92565b905092915050565b6000612bbb826124e8565b9150612bc6836124e8565b9250828202612bd4816124e8565b91508282048414831517612beb57612bea612a03565b5b5092915050565b6000612bfd826124e8565b9150612c08836124e8565b9250828201905080821115612c2057612c1f612a03565b5b92915050565b7f4275726e20636f6f6c646f776e20616374697665000000000000000000000000600082015250565b6000612c5c6014836123d9565b9150612c6782612c26565b602082019050919050565b60006020820190508181036000830152612c8b81612c4f565b9050919050565b600081519050612ca1816124f2565b92915050565b600060208284031215612cbd57612cbc612480565b5b6000612ccb84828501612c92565b91505092915050565b7f546f6f2068696768206665650000000000000000000000000000000000000000600082015250565b6000612d0a600c836123d9565b9150612d1582612cd4565b602082019050919050565b60006020820190508181036000830152612d3981612cfd565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f546f6f206c6f77206d6178000000000000000000000000000000000000000000600082015250565b6000612da5600b836123d9565b9150612db082612d6f565b602082019050919050565b60006020820190508181036000830152612dd481612d98565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612e376023836123d9565b9150612e4282612ddb565b604082019050919050565b60006020820190508181036000830152612e6681612e2a565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612ec96026836123d9565b9150612ed482612e6d565b604082019050919050565b60006020820190508181036000830152612ef881612ebc565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612f5b6024836123d9565b9150612f6682612eff565b604082019050919050565b60006020820190508181036000830152612f8a81612f4e565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612fed6022836123d9565b9150612ff882612f91565b604082019050919050565b6000602082019050818103600083015261301c81612fe0565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000613059601d836123d9565b915061306482613023565b602082019050919050565b600060208201905081810360008301526130888161304c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006130eb6025836123d9565b91506130f68261308f565b604082019050919050565b6000602082019050818103600083015261311a816130de565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b600061317d6029836123d9565b915061318882613121565b604082019050919050565b600060208201905081810360008301526131ac81613170565b9050919050565b7f54726164696e672069732064697361626c656400000000000000000000000000600082015250565b60006131e96013836123d9565b91506131f4826131b3565b602082019050919050565b60006020820190508181036000830152613218816131dc565b9050919050565b7f666565206578636565647320616d6f756e740000000000000000000000000000600082015250565b60006132556012836123d9565b91506132608261321f565b602082019050919050565b6000602082019050818103600083015261328481613248565b9050919050565b7f4d61782054582072656163686564000000000000000000000000000000000000600082015250565b60006132c1600e836123d9565b91506132cc8261328b565b602082019050919050565b600060208201905081810360008301526132f0816132b4565b9050919050565b7f4d61782077616c6c657420726561636865640000000000000000000000000000600082015250565b600061332d6012836123d9565b9150613338826132f7565b602082019050919050565b6000602082019050818103600083015261335c81613320565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006133996020836123d9565b91506133a482613363565b602082019050919050565b600060208201905081810360008301526133c88161338c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613409826124e8565b9150613414836124e8565b925082613424576134236133cf565b5b828204905092915050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b600061348b6026836123d9565b91506134968261342f565b604082019050919050565b600060208201905081810360008301526134ba8161347e565b9050919050565b60006134cc826126ce565b91506134d7836126ce565b9250828203905063ffffffff8111156134f3576134f2612a03565b5b92915050565b6000613504826124e8565b915061350f836124e8565b925082820390508181111561352757613526612a03565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008151905061356b816124bc565b92915050565b60006020828403121561358757613586612480565b5b60006135958482850161355c565b91505092915050565b6000819050919050565b6000819050919050565b60006135cd6135c86135c38461359e565b6135a8565b6124e8565b9050919050565b6135dd816135b2565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613618816124aa565b82525050565b600061362a838361360f565b60208301905092915050565b6000602082019050919050565b600061364e826135e3565b61365881856135ee565b9350613663836135ff565b8060005b8381101561369457815161367b888261361e565b975061368683613636565b925050600181019050613667565b5085935050505092915050565b600060a0820190506136b66000830188612594565b6136c360208301876135d4565b81810360408301526136d58186613643565b90506136e46060830185612839565b6136f16080830184612594565b9695505050505050565b600081519050919050565b600081905092915050565b600061371c826136fb565b6137268185613706565b93506137368185602086016123ea565b80840191505092915050565b600061374e8284613711565b915081905092915050565b7f5472616e736665724661696c0000000000000000000000000000000000000000600082015250565b600061378f600c836123d9565b915061379a82613759565b602082019050919050565b600060208201905081810360008301526137be81613782565b9050919050565b600060c0820190506137da6000830189612839565b6137e76020830188612594565b6137f460408301876135d4565b61380160608301866135d4565b61380e6080830185612839565b61381b60a0830184612594565b979650505050505050565b60008060006060848603121561383f5761383e612480565b5b600061384d86828701612c92565b935050602061385e86828701612c92565b925050604061386f86828701612c92565b915050925092509256fea2646970667358221220442e8fb5843b704d0e4f7f3e992775e1687072a17c6eb9e4b4cf7666bca054ba64736f6c63430008120033

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

000000000000000000000000ded3457d35ddf5e0239ada59c2292037b48197d5

-----Decoded View---------------
Arg [0] : _team_wallet (address): 0xDED3457d35ddf5e0239ada59C2292037B48197D5

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


Deployed Bytecode Sourcemap

9706:13075:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19516:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20824:226;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19844:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20337:295;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19736:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13397:106;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14330:656;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15172:206;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10345:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10458:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13544:271;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11190:59;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10382:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19960:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11058:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4618:103;;;;;;;;;;;;;:::i;:::-;;10415:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10264:22;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13130:237;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3970:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15386:89;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10964:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11470:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19624:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12556:215;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12805:317;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14994:70;;;;;;;;;;;;;:::i;:::-;;10293:32;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15483:89;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;20111:218;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11501:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13823:499;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15072:92;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10784:42;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10833:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10901:42;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20640:176;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11122:56;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4876:238;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11012:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19516:100;19570:13;19603:5;;;;;;;;;;;;;;;;;19596:12;;19516:100;:::o;20824:226::-;20932:4;20949:13;20965:12;:10;:12::i;:::-;20949:28;;20988:32;20997:5;21004:7;21013:6;20988:8;:32::i;:::-;21038:4;21031:11;;;20824:226;;;;:::o;19844:108::-;19905:7;9901:2;9967;:15;;;;:::i;:::-;9951:13;:31;;;;:::i;:::-;19925:19;;19844:108;:::o;20337:295::-;20468:4;20485:15;20503:12;:10;:12::i;:::-;20485:30;;20526:38;20542:4;20548:7;20557:6;20526:15;:38::i;:::-;20575:27;20585:4;20591:2;20595:6;20575:9;:27::i;:::-;20620:4;20613:11;;;20337:295;;;;;:::o;19736:100::-;19794:5;9901:2;19812:16;;19736:100;:::o;13397:106::-;3856:13;:11;:13::i;:::-;13483:12:::1;13469:11;;:26;;;;;;;;;;;;;;;;;;13397:106:::0;:::o;14330:656::-;3856:13;:11;:13::i;:::-;14458::::1;;14446:9;;:25;;;;:::i;:::-;14428:15;:43;14406:113;;;;;;;;;;;;:::i;:::-;;;;;;;;;14530:28;14561:4;:14;;;14576:9;;;;;;;;;;;14561:25;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14530:56;;14597:20;14620:45;14632:20;10223:15;14620:45;;:11;:45::i;:::-;14597:68;;14690:12;14680:7;:22;14676:77;;;14729:12;14719:22;;14676:77;14775:15;14763:9;:27;;;;14817:1;14807:7;:11;14803:96;;;14835:52;14851:9;;;;;;;;;;;14870:6;14879:7;14835:15;:52::i;:::-;14803:96;14909:19;14946:9;;;;;;;;;;;14909:47;;14967:4;:9;;;:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;14395:591;;;14330:656:::0;:::o;15172:206::-;3856:13;:11;:13::i;:::-;10107:15:::1;15265:20;;:9;:20;;;;15257:45;;;;;;;;;;;;:::i;:::-;;;;;;;;;15326:7;15313:10;;:20;;;;;;;;;;;;;;;;;;15361:9;15344:14;;:26;;;;;;;;;;;;;;;;;;15172:206:::0;;:::o;10345:30::-;;;;;;;;;;;;;:::o;10458:37::-;;;;;;;;;;;;;:::o;13544:271::-;3856:13;:11;:13::i;:::-;13691:9:::1;13686:111;13710:6;;:13;;13706:1;:17;13686:111;;;13773:8;13749:10;:21;13760:6;;13767:1;13760:9;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;13749:21;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;;;;;;;13725:3;;;;;;;13686:111;;;;13544:271:::0;;;:::o;11190:59::-;;;;:::o;10382:26::-;;;;;;;;;;;;;:::o;19960:143::-;20050:7;20077:9;:18;20087:7;20077:18;;;;;;;;;;;;;;;;20070:25;;19960:143;;;:::o;11058:52::-;;;;:::o;4618:103::-;3856:13;:11;:13::i;:::-;4683:30:::1;4710:1;4683:18;:30::i;:::-;4618:103::o:0;10415:36::-;;;;;;;;;;;;;:::o;10264:22::-;;;;;;;;;;;;;:::o;13130:237::-;3856:13;:11;:13::i;:::-;13283:7:::1;13266:14;:24;;;;13314:11;13301:10;;:24;;;;;;;;;;;;;;;;;;13351:8;13336:12;;:23;;;;;;;;;;;;;;;;;;13130:237:::0;;;:::o;3970:87::-;4016:7;4043:6;;;;;;;;;;;4036:13;;3970:87;:::o;15386:89::-;3856:13;:11;:13::i;:::-;15460:7:::1;15447:10;;:20;;;;;;;;;;;;;;;;;;15386:89:::0;:::o;10964:41::-;;;;:::o;11470:24::-;;;;;;;;;;;;;:::o;19624:104::-;19680:13;19713:7;;;;;;;;;;;;;;;;;19706:14;;19624:104;:::o;12556:215::-;3856:13;:11;:13::i;:::-;10107:15:::1;12643:19;;:8;:19;;;;:43;;;;;10107:15;12666:20;;:9;:20;;;;12643:43;12635:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12724:8;12714:7;;:18;;;;;;;;;;;;;;;;;;12754:9;12743:8;;:20;;;;;;;;;;;;;;;;;;12556:215:::0;;:::o;12805:317::-;3856:13;:11;:13::i;:::-;10165:14:::1;12911:20;;:7;:20;;:48;;;;;10165:14;12935:24;;:11;:24;;12911:48;12889:109;;;;;;;;;;;;:::i;:::-;;;;;;;;;13018:34;9901:2;9967;:15;;;;:::i;:::-;9951:13;:31;;;;:::i;:::-;13044:7;13018:11;:34::i;:::-;13009:6;:43;;;;13076:38;9901:2;9967;:15;;;;:::i;:::-;9951:13;:31;;;;:::i;:::-;13102:11;13076;:38::i;:::-;13063:10;:51;;;;12805:317:::0;;:::o;14994:70::-;3856:13;:11;:13::i;:::-;15044:12:::1;:10;:12::i;:::-;14994:70::o:0;10293:32::-;;;;;;;;;;;;;:::o;15483:89::-;3856:13;:11;:13::i;:::-;15562:2:::1;15554:4;:10;15541;;:23;;;;;;;;;;;;;;;;;;15483:89:::0;:::o;20111:218::-;20215:4;20232:13;20248:12;:10;:12::i;:::-;20232:28;;20271;20281:5;20288:2;20292:6;20271:9;:28::i;:::-;20317:4;20310:11;;;20111:218;;;;:::o;11501:31::-;;;;;;;;;;;;;:::o;13823:499::-;3856:13;:11;:13::i;:::-;13940::::1;13956:7;:5;:7::i;:::-;13940:23;;14004:9;13999:305;14023:6;;:13;;14019:1;:17;13999:305;;;14062:12;14077:6;;14084:1;14077:9;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;14062:24;;14151:1;14135:18;;:4;:18;;::::0;14105:127:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;14251:37;14267:5;14274:4;14280:7;14251:15;:37::i;:::-;14043:261;14038:3;;;;;;;13999:305;;;;13929:393;13823:499:::0;;;:::o;15072:92::-;3856:13;:11;:13::i;:::-;15149:7:::1;15133:13;;:23;;;;;;;;;;;;;;;;;;15072:92:::0;:::o;10784:42::-;;;;;;;;;;;;;:::o;10833:41::-;;;;;;;;;;;;;:::o;10901:42::-;;;;;;;;;;;;;;;;;;;;;;:::o;20640:176::-;20754:7;20781:11;:18;20793:5;20781:18;;;;;;;;;;;;;;;:27;20800:7;20781:27;;;;;;;;;;;;;;;;20774:34;;20640:176;;;;:::o;11122:56::-;;;;:::o;4876:238::-;3856:13;:11;:13::i;:::-;4999:1:::1;4979:22;;:8;:22;;::::0;4957:110:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;5078:28;5097:8;5078:18;:28::i;:::-;4876:238:::0;:::o;11012:24::-;;;;:::o;2654:98::-;2707:7;2734:10;2727:17;;2654:98;:::o;21058:380::-;21211:1;21194:19;;:5;:19;;;21186:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;21292:1;21273:21;;:7;:21;;;21265:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;21376:6;21346:11;:18;21358:5;21346:18;;;;;;;;;;;;;;;:27;21365:7;21346:27;;;;;;;;;;;;;;;:36;;;;21414:7;21398:32;;21407:5;21398:32;;;21423:6;21398:32;;;;;;:::i;:::-;;;;;;;;21058:380;;;:::o;21446:502::-;21581:24;21608:25;21618:5;21625:7;21608:9;:25::i;:::-;21581:52;;21668:17;21648:16;:37;21644:297;;21748:6;21728:16;:26;;21702:117;;;;;;;;;;;;:::i;:::-;;;;;;;;;21863:51;21872:5;21879:7;21907:6;21888:16;:25;21863:8;:51::i;:::-;21644:297;21570:378;21446:502;;;:::o;15593:1972::-;15698:1;15682:18;;:4;:18;;;15674:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;15775:1;15761:16;;:2;:16;;;15753:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;15845:1;15836:6;:10;15828:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;15966:7;:5;:7::i;:::-;15958:15;;:4;:15;;;:32;;;;15983:7;:5;:7::i;:::-;15977:13;;:2;:13;;;15958:32;:57;;;;16010:4;15994:21;;:4;:21;;;15958:57;15954:144;;;16032:33;16048:4;16054:2;16058:6;16032:15;:33::i;:::-;16080:7;;15954:144;16155:10;;;;;;;;;;;16147:42;;;;;;;;;;;;:::i;:::-;;;;;;;;;16200:18;16233:10;16254:9;;;;;;;;;;;16246:17;;:4;:17;;;16233:30;;16281:5;16276:78;;16330:12;:10;:12::i;:::-;16276:78;16426:5;16422:382;;;16453:10;:14;16464:2;16453:14;;;;;;;;;;;;;;;;;;;;;;;;;16448:97;;16501:28;16513:6;16521:7;;;;;;;;;;;16501:28;;:11;:28::i;:::-;16488:41;;16448:97;16422:382;;;16607:10;:16;16618:4;16607:16;;;;;;;;;;;;;;;;;;;;;;;;;16602:191;;16657:120;16691:6;16720:10;;;;;;;;;;;:38;;16750:8;;;;;;;;;;;16720:38;;;16733:14;;;;;;;;;;;16720:38;16657:120;;:11;:120::i;:::-;16644:133;;16602:191;16422:382;16879:10;16869:6;:20;;16861:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;16937:10;16927:20;;;;16998:13;;;;;;;;;;;16994:345;;;17073:6;;17063;:16;;17055:43;;;;;;;;;;;;:::i;:::-;;;;;;;;;17154:9;;;;;;;;;;;17148:15;;:2;:15;;;17144:184;;17240:10;;17230:6;17214:9;:13;17224:2;17214:13;;;;;;;;;;;;;;;;:22;;;;:::i;:::-;:36;;17184:128;;;;;;;;;;;;:::i;:::-;;;;;;;;;17144:184;16994:345;17409:1;17396:10;:14;17392:95;;;17427:48;17443:4;17457;17464:10;17427:15;:48::i;:::-;17392:95;17524:33;17540:4;17546:2;17550:6;17524:15;:33::i;:::-;15663:1902;;15593:1972;;;;:::o;4135:132::-;4210:12;:10;:12::i;:::-;4199:23;;:7;:5;:7::i;:::-;:23;;;4191:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4135:132::o;11575:173::-;11677:7;10030:13;11704:36;;11714:8;11705:6;:17;;;;:::i;:::-;11704:36;;;;:::i;:::-;11697:43;;11575:173;;;;:::o;21956:626::-;22085:19;22107:9;:15;22117:4;22107:15;;;;;;;;;;;;;;;;22085:37;;22170:6;22155:11;:21;;22133:109;;;;;;;;;;;;:::i;:::-;;;;;;;;;22310:6;22296:11;:20;22278:9;:15;22288:4;22278:15;;;;;;;;;;;;;;;:38;;;;22513:6;22496:9;:13;22506:2;22496:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;22563:2;22548:26;;22557:4;22548:26;;;22567:6;22548:26;;;;;;:::i;:::-;;;;;;;;22074:508;21956:626;;;:::o;5274:191::-;5348:16;5367:6;;;;;;;;;;;5348:25;;5393:8;5384:6;;:17;;;;;;;;;;;;;;;;;;5448:8;5417:40;;5438:8;5417:40;;;;;;;;;;;;5337:128;5274:191;:::o;17573:436::-;17614:21;17638:24;17656:4;17638:9;:24::i;:::-;17614:48;;17673:13;17706:14;;17689:13;:31;;17673:47;;17737:8;:19;;;;;17750:6;;;;;;;;;;;17749:7;17737:19;:35;;;;;17760:12;;;;;;;;;;;17737:35;17733:269;;;17789:32;17806:14;;17789:16;:32::i;:::-;17836:19;17858:21;17836:43;;17912:7;17898:11;:21;17894:97;;;17940:35;17953:21;17940:12;:35::i;:::-;17894:97;17774:228;17733:269;17603:406;;17573:436::o;18017:784::-;11833:4;11824:6;;:13;;;;;;;;;;;;;;;;;;18091:14:::1;18108:49;18120:7;18146:10;;;;;;;;;;;10030:13;18129:27;;;;:::i;:::-;18108:49;;:11;:49::i;:::-;18091:66;;18168:14;18195:6;18185:7;:16;;;;:::i;:::-;18168:33;;18212:22;18237:21;18212:46;;18271:21;18309:1;18295:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18271:40;;18340:4;18322;18327:1;18322:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;18366:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18356:4;18361:1;18356:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;18399:58;18416:4;18431:15;;;;;;;;;;;18449:7;18399:8;:58::i;:::-;18468:15;;;;;;;;;;;:66;;;18549:6;18570:1;18586:4;18613;18633:15;18468:191;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;18670:15;18712:14;18688:21;:38;;;;:::i;:::-;18670:56;;18739:54;18752:6;18760:32;18772:7;18781:10;;;;;;;;;;;18760:32;;:11;:32::i;:::-;18739:12;:54::i;:::-;18080:721;;;;;11869:5:::0;11860:6;;:14;;;;;;;;;;;;;;;;;;18017:784;:::o;18809:174::-;18868:12;18886:11;;;;;;;;;;;:16;;18910:7;18929:1;18919:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18886:46;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18867:65;;;18951:7;18943:32;;;;;;;;;;;;:::i;:::-;;;;;;;;;18856:127;18809:174;:::o;18991:504::-;19135:58;19152:4;19167:15;;;;;;;;;;;19185:7;19135:8;:58::i;:::-;19236:15;;;;;;;;;;;:31;;;19275:9;19308:4;19328:7;19350:1;19393;19444;19461:15;19236:251;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;18991:504;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1553:117;1662:1;1659;1652:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:86::-;4458:7;4498:4;4491:5;4487:16;4476:27;;4423:86;;;:::o;4515:112::-;4598:22;4614:5;4598:22;:::i;:::-;4593:3;4586:35;4515:112;;:::o;4633:214::-;4722:4;4760:2;4749:9;4745:18;4737:26;;4773:67;4837:1;4826:9;4822:17;4813:6;4773:67;:::i;:::-;4633:214;;;;:::o;4853:329::-;4912:6;4961:2;4949:9;4940:7;4936:23;4932:32;4929:119;;;4967:79;;:::i;:::-;4929:119;5087:1;5112:53;5157:7;5148:6;5137:9;5133:22;5112:53;:::i;:::-;5102:63;;5058:117;4853:329;;;;:::o;5188:::-;5247:6;5296:2;5284:9;5275:7;5271:23;5267:32;5264:119;;;5302:79;;:::i;:::-;5264:119;5422:1;5447:53;5492:7;5483:6;5472:9;5468:22;5447:53;:::i;:::-;5437:63;;5393:117;5188:329;;;;:::o;5523:116::-;5593:21;5608:5;5593:21;:::i;:::-;5586:5;5583:32;5573:60;;5629:1;5626;5619:12;5573:60;5523:116;:::o;5645:133::-;5688:5;5726:6;5713:20;5704:29;;5742:30;5766:5;5742:30;:::i;:::-;5645:133;;;;:::o;5784:93::-;5820:7;5860:10;5853:5;5849:22;5838:33;;5784:93;;;:::o;5883:120::-;5955:23;5972:5;5955:23;:::i;:::-;5948:5;5945:34;5935:62;;5993:1;5990;5983:12;5935:62;5883:120;:::o;6009:137::-;6054:5;6092:6;6079:20;6070:29;;6108:32;6134:5;6108:32;:::i;:::-;6009:137;;;;:::o;6152:466::-;6216:6;6224;6273:2;6261:9;6252:7;6248:23;6244:32;6241:119;;;6279:79;;:::i;:::-;6241:119;6399:1;6424:50;6466:7;6457:6;6446:9;6442:22;6424:50;:::i;:::-;6414:60;;6370:114;6523:2;6549:52;6593:7;6584:6;6573:9;6569:22;6549:52;:::i;:::-;6539:62;;6494:117;6152:466;;;;;:::o;6624:115::-;6709:23;6726:5;6709:23;:::i;:::-;6704:3;6697:36;6624:115;;:::o;6745:218::-;6836:4;6874:2;6863:9;6859:18;6851:26;;6887:69;6953:1;6942:9;6938:17;6929:6;6887:69;:::i;:::-;6745:218;;;;:::o;6969:117::-;7078:1;7075;7068:12;7092:117;7201:1;7198;7191:12;7215:117;7324:1;7321;7314:12;7355:568;7428:8;7438:6;7488:3;7481:4;7473:6;7469:17;7465:27;7455:122;;7496:79;;:::i;:::-;7455:122;7609:6;7596:20;7586:30;;7639:18;7631:6;7628:30;7625:117;;;7661:79;;:::i;:::-;7625:117;7775:4;7767:6;7763:17;7751:29;;7829:3;7821:4;7813:6;7809:17;7799:8;7795:32;7792:41;7789:128;;;7836:79;;:::i;:::-;7789:128;7355:568;;;;;:::o;7929:698::-;8021:6;8029;8037;8086:2;8074:9;8065:7;8061:23;8057:32;8054:119;;;8092:79;;:::i;:::-;8054:119;8240:1;8229:9;8225:17;8212:31;8270:18;8262:6;8259:30;8256:117;;;8292:79;;:::i;:::-;8256:117;8405:80;8477:7;8468:6;8457:9;8453:22;8405:80;:::i;:::-;8387:98;;;;8183:312;8534:2;8560:50;8602:7;8593:6;8582:9;8578:22;8560:50;:::i;:::-;8550:60;;8505:115;7929:698;;;;;:::o;8633:118::-;8720:24;8738:5;8720:24;:::i;:::-;8715:3;8708:37;8633:118;;:::o;8757:222::-;8850:4;8888:2;8877:9;8873:18;8865:26;;8901:71;8969:1;8958:9;8954:17;8945:6;8901:71;:::i;:::-;8757:222;;;;:::o;8985:611::-;9058:6;9066;9074;9123:2;9111:9;9102:7;9098:23;9094:32;9091:119;;;9129:79;;:::i;:::-;9091:119;9249:1;9274:53;9319:7;9310:6;9299:9;9295:22;9274:53;:::i;:::-;9264:63;;9220:117;9376:2;9402:52;9446:7;9437:6;9426:9;9422:22;9402:52;:::i;:::-;9392:62;;9347:117;9503:2;9529:50;9571:7;9562:6;9551:9;9547:22;9529:50;:::i;:::-;9519:60;;9474:115;8985:611;;;;;:::o;9602:323::-;9658:6;9707:2;9695:9;9686:7;9682:23;9678:32;9675:119;;;9713:79;;:::i;:::-;9675:119;9833:1;9858:50;9900:7;9891:6;9880:9;9876:22;9858:50;:::i;:::-;9848:60;;9804:114;9602:323;;;;:::o;9931:470::-;9997:6;10005;10054:2;10042:9;10033:7;10029:23;10025:32;10022:119;;;10060:79;;:::i;:::-;10022:119;10180:1;10205:52;10249:7;10240:6;10229:9;10225:22;10205:52;:::i;:::-;10195:62;;10151:116;10306:2;10332:52;10376:7;10367:6;10356:9;10352:22;10332:52;:::i;:::-;10322:62;;10277:117;9931:470;;;;;:::o;10407:474::-;10475:6;10483;10532:2;10520:9;10511:7;10507:23;10503:32;10500:119;;;10538:79;;:::i;:::-;10500:119;10658:1;10683:53;10728:7;10719:6;10708:9;10704:22;10683:53;:::i;:::-;10673:63;;10629:117;10785:2;10811:53;10856:7;10847:6;10836:9;10832:22;10811:53;:::i;:::-;10801:63;;10756:118;10407:474;;;;;:::o;10887:704::-;10982:6;10990;10998;11047:2;11035:9;11026:7;11022:23;11018:32;11015:119;;;11053:79;;:::i;:::-;11015:119;11201:1;11190:9;11186:17;11173:31;11231:18;11223:6;11220:30;11217:117;;;11253:79;;:::i;:::-;11217:117;11366:80;11438:7;11429:6;11418:9;11414:22;11366:80;:::i;:::-;11348:98;;;;11144:312;11495:2;11521:53;11566:7;11557:6;11546:9;11542:22;11521:53;:::i;:::-;11511:63;;11466:118;10887:704;;;;;:::o;11597:474::-;11665:6;11673;11722:2;11710:9;11701:7;11697:23;11693:32;11690:119;;;11728:79;;:::i;:::-;11690:119;11848:1;11873:53;11918:7;11909:6;11898:9;11894:22;11873:53;:::i;:::-;11863:63;;11819:117;11975:2;12001:53;12046:7;12037:6;12026:9;12022:22;12001:53;:::i;:::-;11991:63;;11946:118;11597:474;;;;;:::o;12077:180::-;12125:77;12122:1;12115:88;12222:4;12219:1;12212:15;12246:4;12243:1;12236:15;12263:102;12305:8;12352:5;12349:1;12345:13;12324:34;;12263:102;;;:::o;12371:848::-;12432:5;12439:4;12463:6;12454:15;;12487:5;12478:14;;12501:712;12522:1;12512:8;12509:15;12501:712;;;12617:4;12612:3;12608:14;12602:4;12599:24;12596:50;;;12626:18;;:::i;:::-;12596:50;12676:1;12666:8;12662:16;12659:451;;;13091:4;13084:5;13080:16;13071:25;;12659:451;13141:4;13135;13131:15;13123:23;;13171:32;13194:8;13171:32;:::i;:::-;13159:44;;12501:712;;;12371:848;;;;;;;:::o;13225:1073::-;13279:5;13470:8;13460:40;;13491:1;13482:10;;13493:5;;13460:40;13519:4;13509:36;;13536:1;13527:10;;13538:5;;13509:36;13605:4;13653:1;13648:27;;;;13689:1;13684:191;;;;13598:277;;13648:27;13666:1;13657:10;;13668:5;;;13684:191;13729:3;13719:8;13716:17;13713:43;;;13736:18;;:::i;:::-;13713:43;13785:8;13782:1;13778:16;13769:25;;13820:3;13813:5;13810:14;13807:40;;;13827:18;;:::i;:::-;13807:40;13860:5;;;13598:277;;13984:2;13974:8;13971:16;13965:3;13959:4;13956:13;13952:36;13934:2;13924:8;13921:16;13916:2;13910:4;13907:12;13903:35;13887:111;13884:246;;;14040:8;14034:4;14030:19;14021:28;;14075:3;14068:5;14065:14;14062:40;;;14082:18;;:::i;:::-;14062:40;14115:5;;13884:246;14155:42;14193:3;14183:8;14177:4;14174:1;14155:42;:::i;:::-;14140:57;;;;14229:4;14224:3;14220:14;14213:5;14210:25;14207:51;;;14238:18;;:::i;:::-;14207:51;14287:4;14280:5;14276:16;14267:25;;13225:1073;;;;;;:::o;14304:281::-;14362:5;14386:23;14404:4;14386:23;:::i;:::-;14378:31;;14430:25;14446:8;14430:25;:::i;:::-;14418:37;;14474:104;14511:66;14501:8;14495:4;14474:104;:::i;:::-;14465:113;;14304:281;;;;:::o;14591:410::-;14631:7;14654:20;14672:1;14654:20;:::i;:::-;14649:25;;14688:20;14706:1;14688:20;:::i;:::-;14683:25;;14743:1;14740;14736:9;14765:30;14783:11;14765:30;:::i;:::-;14754:41;;14944:1;14935:7;14931:15;14928:1;14925:22;14905:1;14898:9;14878:83;14855:139;;14974:18;;:::i;:::-;14855:139;14639:362;14591:410;;;;:::o;15007:191::-;15047:3;15066:20;15084:1;15066:20;:::i;:::-;15061:25;;15100:20;15118:1;15100:20;:::i;:::-;15095:25;;15143:1;15140;15136:9;15129:16;;15164:3;15161:1;15158:10;15155:36;;;15171:18;;:::i;:::-;15155:36;15007:191;;;;:::o;15204:170::-;15344:22;15340:1;15332:6;15328:14;15321:46;15204:170;:::o;15380:366::-;15522:3;15543:67;15607:2;15602:3;15543:67;:::i;:::-;15536:74;;15619:93;15708:3;15619:93;:::i;:::-;15737:2;15732:3;15728:12;15721:19;;15380:366;;;:::o;15752:419::-;15918:4;15956:2;15945:9;15941:18;15933:26;;16005:9;15999:4;15995:20;15991:1;15980:9;15976:17;15969:47;16033:131;16159:4;16033:131;:::i;:::-;16025:139;;15752:419;;;:::o;16177:143::-;16234:5;16265:6;16259:13;16250:22;;16281:33;16308:5;16281:33;:::i;:::-;16177:143;;;;:::o;16326:351::-;16396:6;16445:2;16433:9;16424:7;16420:23;16416:32;16413:119;;;16451:79;;:::i;:::-;16413:119;16571:1;16596:64;16652:7;16643:6;16632:9;16628:22;16596:64;:::i;:::-;16586:74;;16542:128;16326:351;;;;:::o;16683:162::-;16823:14;16819:1;16811:6;16807:14;16800:38;16683:162;:::o;16851:366::-;16993:3;17014:67;17078:2;17073:3;17014:67;:::i;:::-;17007:74;;17090:93;17179:3;17090:93;:::i;:::-;17208:2;17203:3;17199:12;17192:19;;16851:366;;;:::o;17223:419::-;17389:4;17427:2;17416:9;17412:18;17404:26;;17476:9;17470:4;17466:20;17462:1;17451:9;17447:17;17440:47;17504:131;17630:4;17504:131;:::i;:::-;17496:139;;17223:419;;;:::o;17648:180::-;17696:77;17693:1;17686:88;17793:4;17790:1;17783:15;17817:4;17814:1;17807:15;17834:161;17974:13;17970:1;17962:6;17958:14;17951:37;17834:161;:::o;18001:366::-;18143:3;18164:67;18228:2;18223:3;18164:67;:::i;:::-;18157:74;;18240:93;18329:3;18240:93;:::i;:::-;18358:2;18353:3;18349:12;18342:19;;18001:366;;;:::o;18373:419::-;18539:4;18577:2;18566:9;18562:18;18554:26;;18626:9;18620:4;18616:20;18612:1;18601:9;18597:17;18590:47;18654:131;18780:4;18654:131;:::i;:::-;18646:139;;18373:419;;;:::o;18798:222::-;18938:34;18934:1;18926:6;18922:14;18915:58;19007:5;19002:2;18994:6;18990:15;18983:30;18798:222;:::o;19026:366::-;19168:3;19189:67;19253:2;19248:3;19189:67;:::i;:::-;19182:74;;19265:93;19354:3;19265:93;:::i;:::-;19383:2;19378:3;19374:12;19367:19;;19026:366;;;:::o;19398:419::-;19564:4;19602:2;19591:9;19587:18;19579:26;;19651:9;19645:4;19641:20;19637:1;19626:9;19622:17;19615:47;19679:131;19805:4;19679:131;:::i;:::-;19671:139;;19398:419;;;:::o;19823:225::-;19963:34;19959:1;19951:6;19947:14;19940:58;20032:8;20027:2;20019:6;20015:15;20008:33;19823:225;:::o;20054:366::-;20196:3;20217:67;20281:2;20276:3;20217:67;:::i;:::-;20210:74;;20293:93;20382:3;20293:93;:::i;:::-;20411:2;20406:3;20402:12;20395:19;;20054:366;;;:::o;20426:419::-;20592:4;20630:2;20619:9;20615:18;20607:26;;20679:9;20673:4;20669:20;20665:1;20654:9;20650:17;20643:47;20707:131;20833:4;20707:131;:::i;:::-;20699:139;;20426:419;;;:::o;20851:223::-;20991:34;20987:1;20979:6;20975:14;20968:58;21060:6;21055:2;21047:6;21043:15;21036:31;20851:223;:::o;21080:366::-;21222:3;21243:67;21307:2;21302:3;21243:67;:::i;:::-;21236:74;;21319:93;21408:3;21319:93;:::i;:::-;21437:2;21432:3;21428:12;21421:19;;21080:366;;;:::o;21452:419::-;21618:4;21656:2;21645:9;21641:18;21633:26;;21705:9;21699:4;21695:20;21691:1;21680:9;21676:17;21669:47;21733:131;21859:4;21733:131;:::i;:::-;21725:139;;21452:419;;;:::o;21877:221::-;22017:34;22013:1;22005:6;22001:14;21994:58;22086:4;22081:2;22073:6;22069:15;22062:29;21877:221;:::o;22104:366::-;22246:3;22267:67;22331:2;22326:3;22267:67;:::i;:::-;22260:74;;22343:93;22432:3;22343:93;:::i;:::-;22461:2;22456:3;22452:12;22445:19;;22104:366;;;:::o;22476:419::-;22642:4;22680:2;22669:9;22665:18;22657:26;;22729:9;22723:4;22719:20;22715:1;22704:9;22700:17;22693:47;22757:131;22883:4;22757:131;:::i;:::-;22749:139;;22476:419;;;:::o;22901:179::-;23041:31;23037:1;23029:6;23025:14;23018:55;22901:179;:::o;23086:366::-;23228:3;23249:67;23313:2;23308:3;23249:67;:::i;:::-;23242:74;;23325:93;23414:3;23325:93;:::i;:::-;23443:2;23438:3;23434:12;23427:19;;23086:366;;;:::o;23458:419::-;23624:4;23662:2;23651:9;23647:18;23639:26;;23711:9;23705:4;23701:20;23697:1;23686:9;23682:17;23675:47;23739:131;23865:4;23739:131;:::i;:::-;23731:139;;23458:419;;;:::o;23883:224::-;24023:34;24019:1;24011:6;24007:14;24000:58;24092:7;24087:2;24079:6;24075:15;24068:32;23883:224;:::o;24113:366::-;24255:3;24276:67;24340:2;24335:3;24276:67;:::i;:::-;24269:74;;24352:93;24441:3;24352:93;:::i;:::-;24470:2;24465:3;24461:12;24454:19;;24113:366;;;:::o;24485:419::-;24651:4;24689:2;24678:9;24674:18;24666:26;;24738:9;24732:4;24728:20;24724:1;24713:9;24709:17;24702:47;24766:131;24892:4;24766:131;:::i;:::-;24758:139;;24485:419;;;:::o;24910:228::-;25050:34;25046:1;25038:6;25034:14;25027:58;25119:11;25114:2;25106:6;25102:15;25095:36;24910:228;:::o;25144:366::-;25286:3;25307:67;25371:2;25366:3;25307:67;:::i;:::-;25300:74;;25383:93;25472:3;25383:93;:::i;:::-;25501:2;25496:3;25492:12;25485:19;;25144:366;;;:::o;25516:419::-;25682:4;25720:2;25709:9;25705:18;25697:26;;25769:9;25763:4;25759:20;25755:1;25744:9;25740:17;25733:47;25797:131;25923:4;25797:131;:::i;:::-;25789:139;;25516:419;;;:::o;25941:169::-;26081:21;26077:1;26069:6;26065:14;26058:45;25941:169;:::o;26116:366::-;26258:3;26279:67;26343:2;26338:3;26279:67;:::i;:::-;26272:74;;26355:93;26444:3;26355:93;:::i;:::-;26473:2;26468:3;26464:12;26457:19;;26116:366;;;:::o;26488:419::-;26654:4;26692:2;26681:9;26677:18;26669:26;;26741:9;26735:4;26731:20;26727:1;26716:9;26712:17;26705:47;26769:131;26895:4;26769:131;:::i;:::-;26761:139;;26488:419;;;:::o;26913:168::-;27053:20;27049:1;27041:6;27037:14;27030:44;26913:168;:::o;27087:366::-;27229:3;27250:67;27314:2;27309:3;27250:67;:::i;:::-;27243:74;;27326:93;27415:3;27326:93;:::i;:::-;27444:2;27439:3;27435:12;27428:19;;27087:366;;;:::o;27459:419::-;27625:4;27663:2;27652:9;27648:18;27640:26;;27712:9;27706:4;27702:20;27698:1;27687:9;27683:17;27676:47;27740:131;27866:4;27740:131;:::i;:::-;27732:139;;27459:419;;;:::o;27884:164::-;28024:16;28020:1;28012:6;28008:14;28001:40;27884:164;:::o;28054:366::-;28196:3;28217:67;28281:2;28276:3;28217:67;:::i;:::-;28210:74;;28293:93;28382:3;28293:93;:::i;:::-;28411:2;28406:3;28402:12;28395:19;;28054:366;;;:::o;28426:419::-;28592:4;28630:2;28619:9;28615:18;28607:26;;28679:9;28673:4;28669:20;28665:1;28654:9;28650:17;28643:47;28707:131;28833:4;28707:131;:::i;:::-;28699:139;;28426:419;;;:::o;28851:168::-;28991:20;28987:1;28979:6;28975:14;28968:44;28851:168;:::o;29025:366::-;29167:3;29188:67;29252:2;29247:3;29188:67;:::i;:::-;29181:74;;29264:93;29353:3;29264:93;:::i;:::-;29382:2;29377:3;29373:12;29366:19;;29025:366;;;:::o;29397:419::-;29563:4;29601:2;29590:9;29586:18;29578:26;;29650:9;29644:4;29640:20;29636:1;29625:9;29621:17;29614:47;29678:131;29804:4;29678:131;:::i;:::-;29670:139;;29397:419;;;:::o;29822:182::-;29962:34;29958:1;29950:6;29946:14;29939:58;29822:182;:::o;30010:366::-;30152:3;30173:67;30237:2;30232:3;30173:67;:::i;:::-;30166:74;;30249:93;30338:3;30249:93;:::i;:::-;30367:2;30362:3;30358:12;30351:19;;30010:366;;;:::o;30382:419::-;30548:4;30586:2;30575:9;30571:18;30563:26;;30635:9;30629:4;30625:20;30621:1;30610:9;30606:17;30599:47;30663:131;30789:4;30663:131;:::i;:::-;30655:139;;30382:419;;;:::o;30807:180::-;30855:77;30852:1;30845:88;30952:4;30949:1;30942:15;30976:4;30973:1;30966:15;30993:185;31033:1;31050:20;31068:1;31050:20;:::i;:::-;31045:25;;31084:20;31102:1;31084:20;:::i;:::-;31079:25;;31123:1;31113:35;;31128:18;;:::i;:::-;31113:35;31170:1;31167;31163:9;31158:14;;30993:185;;;;:::o;31184:225::-;31324:34;31320:1;31312:6;31308:14;31301:58;31393:8;31388:2;31380:6;31376:15;31369:33;31184:225;:::o;31415:366::-;31557:3;31578:67;31642:2;31637:3;31578:67;:::i;:::-;31571:74;;31654:93;31743:3;31654:93;:::i;:::-;31772:2;31767:3;31763:12;31756:19;;31415:366;;;:::o;31787:419::-;31953:4;31991:2;31980:9;31976:18;31968:26;;32040:9;32034:4;32030:20;32026:1;32015:9;32011:17;32004:47;32068:131;32194:4;32068:131;:::i;:::-;32060:139;;31787:419;;;:::o;32212:200::-;32251:4;32271:19;32288:1;32271:19;:::i;:::-;32266:24;;32304:19;32321:1;32304:19;:::i;:::-;32299:24;;32347:1;32344;32340:9;32332:17;;32371:10;32365:4;32362:20;32359:46;;;32385:18;;:::i;:::-;32359:46;32212:200;;;;:::o;32418:194::-;32458:4;32478:20;32496:1;32478:20;:::i;:::-;32473:25;;32512:20;32530:1;32512:20;:::i;:::-;32507:25;;32556:1;32553;32549:9;32541:17;;32580:1;32574:4;32571:11;32568:37;;;32585:18;;:::i;:::-;32568:37;32418:194;;;;:::o;32618:180::-;32666:77;32663:1;32656:88;32763:4;32760:1;32753:15;32787:4;32784:1;32777:15;32804:143;32861:5;32892:6;32886:13;32877:22;;32908:33;32935:5;32908:33;:::i;:::-;32804:143;;;;:::o;32953:351::-;33023:6;33072:2;33060:9;33051:7;33047:23;33043:32;33040:119;;;33078:79;;:::i;:::-;33040:119;33198:1;33223:64;33279:7;33270:6;33259:9;33255:22;33223:64;:::i;:::-;33213:74;;33169:128;32953:351;;;;:::o;33310:85::-;33355:7;33384:5;33373:16;;33310:85;;;:::o;33401:60::-;33429:3;33450:5;33443:12;;33401:60;;;:::o;33467:158::-;33525:9;33558:61;33576:42;33585:32;33611:5;33585:32;:::i;:::-;33576:42;:::i;:::-;33558:61;:::i;:::-;33545:74;;33467:158;;;:::o;33631:147::-;33726:45;33765:5;33726:45;:::i;:::-;33721:3;33714:58;33631:147;;:::o;33784:114::-;33851:6;33885:5;33879:12;33869:22;;33784:114;;;:::o;33904:184::-;34003:11;34037:6;34032:3;34025:19;34077:4;34072:3;34068:14;34053:29;;33904:184;;;;:::o;34094:132::-;34161:4;34184:3;34176:11;;34214:4;34209:3;34205:14;34197:22;;34094:132;;;:::o;34232:108::-;34309:24;34327:5;34309:24;:::i;:::-;34304:3;34297:37;34232:108;;:::o;34346:179::-;34415:10;34436:46;34478:3;34470:6;34436:46;:::i;:::-;34514:4;34509:3;34505:14;34491:28;;34346:179;;;;:::o;34531:113::-;34601:4;34633;34628:3;34624:14;34616:22;;34531:113;;;:::o;34680:732::-;34799:3;34828:54;34876:5;34828:54;:::i;:::-;34898:86;34977:6;34972:3;34898:86;:::i;:::-;34891:93;;35008:56;35058:5;35008:56;:::i;:::-;35087:7;35118:1;35103:284;35128:6;35125:1;35122:13;35103:284;;;35204:6;35198:13;35231:63;35290:3;35275:13;35231:63;:::i;:::-;35224:70;;35317:60;35370:6;35317:60;:::i;:::-;35307:70;;35163:224;35150:1;35147;35143:9;35138:14;;35103:284;;;35107:14;35403:3;35396:10;;34804:608;;;34680:732;;;;:::o;35418:831::-;35681:4;35719:3;35708:9;35704:19;35696:27;;35733:71;35801:1;35790:9;35786:17;35777:6;35733:71;:::i;:::-;35814:80;35890:2;35879:9;35875:18;35866:6;35814:80;:::i;:::-;35941:9;35935:4;35931:20;35926:2;35915:9;35911:18;35904:48;35969:108;36072:4;36063:6;35969:108;:::i;:::-;35961:116;;36087:72;36155:2;36144:9;36140:18;36131:6;36087:72;:::i;:::-;36169:73;36237:3;36226:9;36222:19;36213:6;36169:73;:::i;:::-;35418:831;;;;;;;;:::o;36255:98::-;36306:6;36340:5;36334:12;36324:22;;36255:98;;;:::o;36359:147::-;36460:11;36497:3;36482:18;;36359:147;;;;:::o;36512:386::-;36616:3;36644:38;36676:5;36644:38;:::i;:::-;36698:88;36779:6;36774:3;36698:88;:::i;:::-;36691:95;;36795:65;36853:6;36848:3;36841:4;36834:5;36830:16;36795:65;:::i;:::-;36885:6;36880:3;36876:16;36869:23;;36620:278;36512:386;;;;:::o;36904:271::-;37034:3;37056:93;37145:3;37136:6;37056:93;:::i;:::-;37049:100;;37166:3;37159:10;;36904:271;;;;:::o;37181:162::-;37321:14;37317:1;37309:6;37305:14;37298:38;37181:162;:::o;37349:366::-;37491:3;37512:67;37576:2;37571:3;37512:67;:::i;:::-;37505:74;;37588:93;37677:3;37588:93;:::i;:::-;37706:2;37701:3;37697:12;37690:19;;37349:366;;;:::o;37721:419::-;37887:4;37925:2;37914:9;37910:18;37902:26;;37974:9;37968:4;37964:20;37960:1;37949:9;37945:17;37938:47;38002:131;38128:4;38002:131;:::i;:::-;37994:139;;37721:419;;;:::o;38146:807::-;38395:4;38433:3;38422:9;38418:19;38410:27;;38447:71;38515:1;38504:9;38500:17;38491:6;38447:71;:::i;:::-;38528:72;38596:2;38585:9;38581:18;38572:6;38528:72;:::i;:::-;38610:80;38686:2;38675:9;38671:18;38662:6;38610:80;:::i;:::-;38700;38776:2;38765:9;38761:18;38752:6;38700:80;:::i;:::-;38790:73;38858:3;38847:9;38843:19;38834:6;38790:73;:::i;:::-;38873;38941:3;38930:9;38926:19;38917:6;38873:73;:::i;:::-;38146:807;;;;;;;;;:::o;38959:663::-;39047:6;39055;39063;39112:2;39100:9;39091:7;39087:23;39083:32;39080:119;;;39118:79;;:::i;:::-;39080:119;39238:1;39263:64;39319:7;39310:6;39299:9;39295:22;39263:64;:::i;:::-;39253:74;;39209:128;39376:2;39402:64;39458:7;39449:6;39438:9;39434:22;39402:64;:::i;:::-;39392:74;;39347:129;39515:2;39541:64;39597:7;39588:6;39577:9;39573:22;39541:64;:::i;:::-;39531:74;;39486:129;38959:663;;;;;:::o

Swarm Source

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