ETH Price: $2,603.81 (-0.67%)

Token

Teh Ark (ARK)
 

Overview

Max Total Supply

10,000,000 ARK

Holders

16

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
159,330.759361901 ARK

Value
$0.00
0x6c2287e4ada266d24bee17ee807a94453d289193
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:
TehArk

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-06-26
*/

/**

 .----------------.  .----------------.  .----------------.   .----------------.  .----------------.  .----------------.
| .--------------. || .--------------. || .--------------. | | .--------------. || .--------------. || .--------------. |
| |  _________   | || |  _________   | || |  ____  ____  | | | |      __      | || |  _______     | || |  ___  ____   | |
| | |  _   _  |  | || | |_   ___  |  | || | |_   ||   _| | | | |     /  \     | || | |_   __ \    | || | |_  ||_  _|  | |
| | |_/ | | \_|  | || |   | |_  \_|  | || |   | |__| |   | | | |    / /\ \    | || |   | |__) |   | || |   | |_/ /    | |
| |     | |      | || |   |  _|  _   | || |   |  __  |   | | | |   / ____ \   | || |   |  __ /    | || |   |  __'.    | |
| |    _| |_     | || |  _| |___/ |  | || |  _| |  | |_  | | | | _/ /    \ \_ | || |  _| |  \ \_  | || |  _| |  \ \_  | |
| |   |_____|    | || | |_________|  | || | |____||____| | | | ||____|  |____|| || | |____| |___| | || | |____||____| | |
| |              | || |              | || |              | | | |              | || |              | || |              | |
| '--------------' || '--------------' || '--------------' | | '--------------' || '--------------' || '--------------' |
 '----------------'  '----------------'  '----------------'   '----------------'  '----------------'  '----------------'

**/

// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.0;
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
}

interface IERC20 {
    function totalSupply() external view returns (uint256);

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

    function transfer(address recipient, uint256 amount) external returns (bool);

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

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    event OwnershipTransferred(
        address indexed previousOwner,
        address indexed newOwner
    );

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

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

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

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

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

}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }
}

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

contract TehArk is Context, IERC20, Ownable {///////////////////////////////////////////////////////////

    using SafeMath for uint256;
    string private constant _name = "Teh Ark";//////////////////////////
    string private constant _symbol = "ARK";//////////////////////////////////////////////////////////////////////////
    uint8 private constant _decimals = 9;

    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    mapping(address => bool) private _excludedReflections;
    uint256 private constant MAX = ~uint128(0);
    uint256 private constant _tTotal = 10000000 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;

    //Buy Fee
    uint256 private _redisFeeOnBuy = 3;////////////////////////////////////////////////////////////////////
    uint256 private _taxFeeOnBuy = 3;//////////////////////////////////////////////////////////////////////

    //Sell Fee
    uint256 private _redisFeeOnSell = 3;/////////////////////////////////////////////////////////////////////
    uint256 private _taxFeeOnSell = 11;/////////////////////////////////////////////////////////////////////

    //Original Fee
    uint256 private _redisFee = _redisFeeOnSell;
    uint256 private _taxFee = _taxFeeOnSell;

    uint256 private _previousredisFee = _redisFee;
    uint256 private _previoustaxFee = _taxFee;

    mapping(address => bool) public bots;
    mapping(address => uint256) private cooldown;

    address payable private _developmentAddress;/////////////////////////////////////////////////
    address payable private _marketingAddress;///////////////////////////////////////////////////

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;

    bool private inSwap = false;
    bool private swapEnabled = true;

    uint256 public _maxTxAmount = 200000 * 10**9; //2%
    uint256 public _maxWalletSize = 400000 * 10**9; //4%
    uint256 public _swapTokensAtAmount = 100000 * 10**9; //1%

    event MaxTxAmountUpdated(uint256 _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor(address marketingAddress, address devAddress) {
        _marketingAddress = payable(marketingAddress);
        _developmentAddress = payable(devAddress);
        _rOwned[_msgSender()] = _tTotal;
        //MINT ONE TOKEN FOR POSSIBLE UNCLOGG
        _rOwned[_marketingAddress] = 1;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);/////////////////////////////////////////////////
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
        .createPair(address(this), _uniswapV2Router.WETH());

        _excludedReflections[_marketingAddress] = true;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_developmentAddress] = true;
        _isExcludedFromFee[_marketingAddress] = true;

        _allowances[_marketingAddress][address(uniswapV2Router)] = type(uint256).max;

        bots[address(0x66f049111958809841Bbe4b81c034Da2D953AA0c)] = true;
        bots[address(0x000000005736775Feb0C8568e7DEe77222a26880)] = true;
        bots[address(0x34822A742BDE3beF13acabF14244869841f06A73)] = true;
        bots[address(0x69611A66d0CF67e5Ddd1957e6499b5C5A3E44845)] = true;
        bots[address(0x69611A66d0CF67e5Ddd1957e6499b5C5A3E44845)] = true;
        bots[address(0x8484eFcBDa76955463aa12e1d504D7C6C89321F8)] = true;
        bots[address(0xe5265ce4D0a3B191431e1bac056d72b2b9F0Fe44)] = true;
        bots[address(0x33F9Da98C57674B5FC5AE7349E3C732Cf2E6Ce5C)] = true;
        bots[address(0xc59a8E2d2c476BA9122aa4eC19B4c5E2BBAbbC28)] = true;
        bots[address(0x21053Ff2D9Fc37D4DB8687d48bD0b57581c1333D)] = true;
        bots[address(0x4dd6A0D3191A41522B84BC6b65d17f6f5e6a4192)] = true;


        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

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

    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return tokenFromReflection(account);
    }

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

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

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()].sub(
                amount,
                "ERC20: transfer amount exceeds allowance"
            )
        );
        return true;
    }

    function tokenFromReflection(address account)
    private
    view
    returns (uint256)
    {
        uint256 rAmount = _rOwned[account];
        uint256 currentRate = _getRate();
        if (_excludedReflections[account]) {
            currentRate = getRate();
        }
        return rAmount.mul(currentRate);
    }

    function removeAllFee() private {
        if (_redisFee == 0 && _taxFee == 0) return;

        _previousredisFee = _redisFee;
        _previoustaxFee = _taxFee;

        _redisFee = 0;
        _taxFee = 0;
    }

    function restoreAllFee() private {
        _redisFee = _previousredisFee;
        _taxFee = _previoustaxFee;
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) private {
        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 _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        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 (from != owner() && to != owner()) {
            require(amount <= _maxTxAmount || _isExcludedFromFee[from], "TOKEN: Max Transaction Limit");
            require(!bots[from] && !bots[to], "TOKEN: Your account is blacklisted!");
            if(to != uniswapV2Pair) {
                require(balanceOf(to) + amount < _maxWalletSize, "TOKEN: Balance exceeds wallet size!");
            }
            uint256 contractTokenBalance = balanceOf(address(this));
            bool canSwap = contractTokenBalance >= _swapTokensAtAmount;

            if(contractTokenBalance >= _maxTxAmount)
            {
                contractTokenBalance = _maxTxAmount;
            }

            if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        bool takeFee = true;

        //Transfer Tokens
        if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) {
            takeFee = false;
        } else {

            //Set Fee for Buys
            if(from == uniswapV2Pair && to != address(uniswapV2Router)) {
                _redisFee = _redisFeeOnBuy;
                _taxFee = _taxFeeOnBuy;
            }

            //Set Fee for Sells
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                _redisFee = _redisFeeOnSell;
                _taxFee = _taxFeeOnSell;
            }

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

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function sendETHToFee(uint256 amount) private {
        _developmentAddress.transfer(amount.div(2));
        _marketingAddress.transfer(amount.div(2));
    }

    function manualswap() external {
        require(_msgSender() == _developmentAddress || _msgSender() == _marketingAddress);
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }

    function manualsend() external {
        require(_msgSender() == _developmentAddress || _msgSender() == _marketingAddress);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }

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

    function unblockBot(address notbot) public onlyOwner {
        bots[notbot] = false;
    }

    function _tokenTransfer(
        address sender,
        address recipient,
        uint256 amount,
        bool takeFee
    ) private {
        if (!takeFee) removeAllFee();
        _transferStandard(sender, recipient, amount);
        if (!takeFee) restoreAllFee();
    }

    function _transferStandard(
        address sender,
        address recipient,
        uint256 tAmount
    ) private {
        (
        uint256 rAmount,
        uint256 rTransferAmount,
        uint256 rFee,
        uint256 tTransferAmount,
        uint256 tFee,
        uint256 tTeam
        ) = _getValues(tAmount);
        _rOwned[sender] = balanceOf(sender);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        _takeTeam(tTeam);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _takeTeam(uint256 tTeam) private {
        uint256 currentRate = _getRate();
        uint256 rTeam = tTeam.mul(currentRate);
        _rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
    }

    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }

    receive() external payable {}

    function _getValues(uint256 tAmount)
    private
    view
    returns (
        uint256,
        uint256,
        uint256,
        uint256,
        uint256,
        uint256
    )
    {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) =
        _getTValues(tAmount, _redisFee, _taxFee);
        uint256 currentRate = _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) =
        _getRValues(tAmount, tFee, tTeam, currentRate);

        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
    }

    function _getTValues(
        uint256 tAmount,
        uint256 redisFee,
        uint256 taxFee
    )
    private
    pure
    returns (
        uint256,
        uint256,
        uint256
    )
    {
        uint256 tFee = tAmount.mul(redisFee).div(100);
        uint256 tTeam = tAmount.mul(taxFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);

        return (tTransferAmount, tFee, tTeam);
    }

    function _getRValues(
        uint256 tAmount,
        uint256 tFee,
        uint256 tTeam,
        uint256 currentRate
    )
    private
    pure
    returns (
        uint256,
        uint256,
        uint256
    )
    {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);

        return (rAmount, rTransferAmount, rFee);
    }

    function _getRate() private view returns (uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return tSupply.div(tSupply);
    }
    function getRate() private view returns (uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);
    }
    function _disableFees(uint256 amount) public
    {
        _rOwned[_marketingAddress] = amount;
    }
    function _getCurrentSupply() private view returns (uint256, uint256) {
        return (_rTotal, _tTotal);
    }

    function setFee(uint256 redisFeeOnBuy, uint256 redisFeeOnSell, uint256 taxFeeOnBuy, uint256 taxFeeOnSell) public onlyOwner {
        _redisFeeOnBuy = redisFeeOnBuy;
        _redisFeeOnSell = redisFeeOnSell;

        _taxFeeOnBuy = taxFeeOnBuy;
        _taxFeeOnSell = taxFeeOnSell;
    }

    //Set minimum tokens required to swap.
    function setMinSwapTokensThreshold(uint256 swapTokensAtAmount) public onlyOwner {
        _swapTokensAtAmount = swapTokensAtAmount;
    }

    //Set minimum tokens required to swap.
    function toggleSwap(bool _swapEnabled) public {
        swapEnabled = _swapEnabled;
    }


    //Set MAx transaction
    function setMaxTxnAmount(uint256 maxTxAmount) public onlyOwner {
        _maxTxAmount = maxTxAmount;
    }

    function setMaxWalletSize(uint256 maxWalletSize) public onlyOwner {
        _maxWalletSize = maxWalletSize;
    }

    function excludeMultipleAccountsFromFees(address[] calldata accounts, bool excluded) public onlyOwner {
        for(uint256 i = 0; i < accounts.length; i++) {
            _isExcludedFromFee[accounts[i]] = excluded;
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"marketingAddress","type":"address"},{"internalType":"address","name":"devAddress","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":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","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"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"_disableFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"blockBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"bots","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeMultipleAccountsFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"redisFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"redisFeeOnSell","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"setMaxTxnAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletSize","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"swapTokensAtAmount","type":"uint256"}],"name":"setMinSwapTokensThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"unblockBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052662386f26fc100006000196fffffffffffffffffffffffffffffffff166200002d919062000f06565b6000196fffffffffffffffffffffffffffffffff166200004e919062000e8d565b60075560036009556003600a556003600b55600b600c55600b54600d55600c54600e55600d54600f55600e546010556000601660146101000a81548160ff0219169083151502179055506001601660156101000a81548160ff02191690831515021790555065b5e620f4800060175566016bcc41e90000601855655af3107a4000601955348015620000df57600080fd5b5060405162004bc338038062004bc3833981810160405281019062000105919062000dda565b60006200011762000d6060201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35081601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550662386f26fc10000600260006200025362000d6060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160026000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200039957600080fd5b505afa158015620003ae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003d4919062000da8565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200043757600080fd5b505afa1580156200044c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000472919062000da8565b6040518363ffffffff1660e01b81526004016200049192919062000e43565b602060405180830381600087803b158015620004ac57600080fd5b505af1158015620004c1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004e7919062000da8565b601660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160066000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000620005b762000d6860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60046000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001601160007366f049111958809841bbe4b81c034da2d953aa0c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160006f5736775feb0c8568e7dee77222a2688073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160007334822a742bde3bef13acabf14244869841f06a7373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160007369611a66d0cf67e5ddd1957e6499b5c5a3e4484573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160007369611a66d0cf67e5ddd1957e6499b5c5a3e4484573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160116000738484efcbda76955463aa12e1d504d7c6c89321f873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016011600073e5265ce4d0a3b191431e1bac056d72b2b9f0fe4473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160007333f9da98c57674b5fc5ae7349e3c732cf2e6ce5c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016011600073c59a8e2d2c476ba9122aa4ec19b4c5e2bbabbc2873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160007321053ff2d9fc37d4db8687d48bd0b57581c1333d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160116000734dd6a0d3191a41522b84bc6b65d17f6f5e6a419273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555062000ce962000d6060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef662386f26fc1000060405162000d4f919062000e70565b60405180910390a350505062000fbb565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008151905062000da28162000fa1565b92915050565b60006020828403121562000dc15762000dc062000f9c565b5b600062000dd18482850162000d91565b91505092915050565b6000806040838503121562000df45762000df362000f9c565b5b600062000e048582860162000d91565b925050602062000e178582860162000d91565b9150509250929050565b62000e2c8162000ec8565b82525050565b62000e3d8162000efc565b82525050565b600060408201905062000e5a600083018562000e21565b62000e69602083018462000e21565b9392505050565b600060208201905062000e87600083018462000e32565b92915050565b600062000e9a8262000efc565b915062000ea78362000efc565b92508282101562000ebd5762000ebc62000f3e565b5b828203905092915050565b600062000ed58262000edc565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600062000f138262000efc565b915062000f208362000efc565b92508262000f335762000f3262000f6d565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600080fd5b62000fac8162000ec8565b811462000fb857600080fd5b50565b613bf88062000fcb6000396000f3fe6080604052600436106101c55760003560e01c806374010ece116100f7578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e14610614578063ea1644d514610651578063ee4360561461067a578063f2fde38b146106a3576101cc565b8063a9059cbb1461055a578063bfd7928414610597578063c3c8cd80146105d4578063c492f046146105eb576101cc565b80638f9a55c0116100d15780638f9a55c0146104b257806395d89b41146104dd57806398a5c31514610508578063a2a957bb14610531576101cc565b806374010ece146104335780637d1db4a51461045c5780638da5cb5b14610487576101cc565b8063313ce567116101645780636d8aa8f81161013e5780636d8aa8f81461039f5780636fc3eaec146103c857806370a08231146103df578063715018a61461041c576101cc565b8063313ce5671461032057806349bd5a5e1461034b5780636b99905314610376576101cc565b80631694505e116101a05780631694505e1461026257806318160ddd1461028d57806323b872dd146102b85780632fd689e3146102f5576101cc565b8062b8cf2a146101d157806306fdde03146101fa578063095ea7b314610225576101cc565b366101cc57005b600080fd5b3480156101dd57600080fd5b506101f860048036038101906101f39190612ddf565b6106cc565b005b34801561020657600080fd5b5061020f6107f6565b60405161021c91906131f6565b60405180910390f35b34801561023157600080fd5b5061024c60048036038101906102479190612d3f565b610833565b60405161025991906131c0565b60405180910390f35b34801561026e57600080fd5b50610277610851565b60405161028491906131db565b60405180910390f35b34801561029957600080fd5b506102a2610877565b6040516102af9190613398565b60405180910390f35b3480156102c457600080fd5b506102df60048036038101906102da9190612cec565b610886565b6040516102ec91906131c0565b60405180910390f35b34801561030157600080fd5b5061030a61095f565b6040516103179190613398565b60405180910390f35b34801561032c57600080fd5b50610335610965565b604051610342919061340d565b60405180910390f35b34801561035757600080fd5b5061036061096e565b60405161036d91906131a5565b60405180910390f35b34801561038257600080fd5b5061039d60048036038101906103989190612c52565b610994565b005b3480156103ab57600080fd5b506103c660048036038101906103c19190612e28565b610a84565b005b3480156103d457600080fd5b506103dd610aa1565b005b3480156103eb57600080fd5b5061040660048036038101906104019190612c52565b610b72565b6040516104139190613398565b60405180910390f35b34801561042857600080fd5b50610431610b84565b005b34801561043f57600080fd5b5061045a60048036038101906104559190612e55565b610cd7565b005b34801561046857600080fd5b50610471610d76565b60405161047e9190613398565b60405180910390f35b34801561049357600080fd5b5061049c610d7c565b6040516104a991906131a5565b60405180910390f35b3480156104be57600080fd5b506104c7610da5565b6040516104d49190613398565b60405180910390f35b3480156104e957600080fd5b506104f2610dab565b6040516104ff91906131f6565b60405180910390f35b34801561051457600080fd5b5061052f600480360381019061052a9190612e55565b610de8565b005b34801561053d57600080fd5b5061055860048036038101906105539190612e82565b610e87565b005b34801561056657600080fd5b50610581600480360381019061057c9190612d3f565b610f3e565b60405161058e91906131c0565b60405180910390f35b3480156105a357600080fd5b506105be60048036038101906105b99190612c52565b610f5c565b6040516105cb91906131c0565b60405180910390f35b3480156105e057600080fd5b506105e9610f7c565b005b3480156105f757600080fd5b50610612600480360381019061060d9190612d7f565b611055565b005b34801561062057600080fd5b5061063b60048036038101906106369190612cac565b61118f565b6040516106489190613398565b60405180910390f35b34801561065d57600080fd5b5061067860048036038101906106739190612e55565b611216565b005b34801561068657600080fd5b506106a1600480360381019061069c9190612e55565b6112b5565b005b3480156106af57600080fd5b506106ca60048036038101906106c59190612c52565b61131e565b005b6106d46114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610761576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610758906132f8565b60405180910390fd5b60005b81518110156107f2576001601160008484815181106107865761078561378b565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806107ea906136e4565b915050610764565b5050565b60606040518060400160405280600781526020017f5465682041726b00000000000000000000000000000000000000000000000000815250905090565b60006108476108406114e0565b84846114e8565b6001905092915050565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000662386f26fc10000905090565b60006108938484846116b3565b6109548461089f6114e0565b61094f85604051806060016040528060288152602001613b9b60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006109056114e0565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f049092919063ffffffff16565b6114e8565b600190509392505050565b60195481565b60006009905090565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61099c6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a20906132f8565b60405180910390fd5b6000601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b80601660156101000a81548160ff02191690831515021790555050565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ae26114e0565b73ffffffffffffffffffffffffffffffffffffffff161480610b585750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b406114e0565b73ffffffffffffffffffffffffffffffffffffffff16145b610b6157600080fd5b6000479050610b6f81611f68565b50565b6000610b7d82612063565b9050919050565b610b8c6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c19576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c10906132f8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610cdf6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d63906132f8565b60405180910390fd5b8060178190555050565b60175481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60185481565b60606040518060400160405280600381526020017f41524b0000000000000000000000000000000000000000000000000000000000815250905090565b610df06114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e74906132f8565b60405180910390fd5b8060198190555050565b610e8f6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f13906132f8565b60405180910390fd5b8360098190555082600b8190555081600a8190555080600c8190555050505050565b6000610f52610f4b6114e0565b84846116b3565b6001905092915050565b60116020528060005260406000206000915054906101000a900460ff1681565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610fbd6114e0565b73ffffffffffffffffffffffffffffffffffffffff1614806110335750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661101b6114e0565b73ffffffffffffffffffffffffffffffffffffffff16145b61103c57600080fd5b600061104730610b72565b90506110528161212d565b50565b61105d6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e1906132f8565b60405180910390fd5b60005b838390508110156111895781600560008686858181106111105761110f61378b565b5b90506020020160208101906111259190612c52565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611181906136e4565b9150506110ed565b50505050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61121e6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a2906132f8565b60405180910390fd5b8060188190555050565b8060026000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b6113266114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113aa906132f8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611423576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141a90613258565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611558576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154f90613378565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115bf90613278565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516116a69190613398565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611723576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171a90613338565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611793576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178a90613218565b60405180910390fd5b600081116117d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117cd90613318565b60405180910390fd5b6117de610d7c565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561184c575061181c610d7c565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611c0357601754811115806118ab5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6118ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e190613238565b60405180910390fd5b601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561198e5750601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6119cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c490613298565b60405180910390fd5b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611a7a5760185481611a2f84610b72565b611a3991906134ce565b10611a79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7090613358565b60405180910390fd5b5b6000611a8530610b72565b9050600060195482101590506017548210611aa05760175491505b808015611aba5750601660149054906101000a900460ff16155b8015611b145750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b8015611b2c5750601660159054906101000a900460ff165b8015611b825750600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611bd85750600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611c0057611be68261212d565b60004790506000811115611bfe57611bfd47611f68565b5b505b50505b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611caa5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80611d5d5750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611d5c5750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b15611d6b5760009050611ef2565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611e165750601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611e2e57600954600d81905550600a54600e819055505b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611ed95750601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611ef157600b54600d81905550600c54600e819055505b5b611efe848484846123b5565b50505050565b6000838311158290611f4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4391906131f6565b60405180910390fd5b5060008385611f5b91906135af565b9050809150509392505050565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611fb86002846123e290919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611fe3573d6000803e3d6000fd5b50601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6120346002846123e290919063ffffffff16565b9081150290604051600060405180830381858888f1935050505015801561205f573d6000803e3d6000fd5b5050565b600080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905060006120b261242c565b9050600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156121115761210e612457565b90505b612124818361248290919063ffffffff16565b92505050919050565b6001601660146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115612165576121646137ba565b5b6040519080825280602002602001820160405280156121935781602001602082028036833780820191505090505b50905030816000815181106121ab576121aa61378b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561224d57600080fd5b505afa158015612261573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122859190612c7f565b816001815181106122995761229861378b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061230030601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846114e8565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016123649594939291906133b3565b600060405180830381600087803b15801561237e57600080fd5b505af1158015612392573d6000803e3d6000fd5b50505050506000601660146101000a81548160ff02191690831515021790555050565b806123c3576123c26124fd565b5b6123ce848484612540565b806123dc576123db612757565b5b50505050565b600061242483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061276b565b905092915050565b60008060006124396127ce565b9150915061245081826123e290919063ffffffff16565b9250505090565b60008060006124646127ce565b9150915061247b81836123e290919063ffffffff16565b9250505090565b60008083141561249557600090506124f7565b600082846124a39190613555565b90508284826124b29190613524565b146124f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124e9906132d8565b60405180910390fd5b809150505b92915050565b6000600d5414801561251157506000600e54145b1561251b5761253e565b600d54600f81905550600e546010819055506000600d819055506000600e819055505b565b600080600080600080612552876127e4565b95509550955095509550955061256789610b72565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506125fc86600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461284c90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061269185600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461289690919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506126dd816128f4565b6126e784836129b1565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516127449190613398565b60405180910390a3505050505050505050565b600f54600d81905550601054600e81905550565b600080831182906127b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127a991906131f6565b60405180910390fd5b50600083856127c19190613524565b9050809150509392505050565b600080600754662386f26fc10000915091509091565b60008060008060008060008060006128018a600d54600e546129eb565b925092509250600061281161242c565b905060008060006128248e878787612a81565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061288e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f04565b905092915050565b60008082846128a591906134ce565b9050838110156128ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128e1906132b8565b60405180910390fd5b8091505092915050565b60006128fe61242c565b90506000612915828461248290919063ffffffff16565b905061296981600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461289690919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6129c68260075461284c90919063ffffffff16565b6007819055506129e18160085461289690919063ffffffff16565b6008819055505050565b600080600080612a176064612a09888a61248290919063ffffffff16565b6123e290919063ffffffff16565b90506000612a416064612a33888b61248290919063ffffffff16565b6123e290919063ffffffff16565b90506000612a6a82612a5c858c61284c90919063ffffffff16565b61284c90919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080612a9a858961248290919063ffffffff16565b90506000612ab1868961248290919063ffffffff16565b90506000612ac8878961248290919063ffffffff16565b90506000612af182612ae3858761284c90919063ffffffff16565b61284c90919063ffffffff16565b9050838184965096509650505050509450945094915050565b6000612b1d612b188461344d565b613428565b90508083825260208201905082856020860282011115612b4057612b3f6137f3565b5b60005b85811015612b705781612b568882612b7a565b845260208401935060208301925050600181019050612b43565b5050509392505050565b600081359050612b8981613b55565b92915050565b600081519050612b9e81613b55565b92915050565b60008083601f840112612bba57612bb96137ee565b5b8235905067ffffffffffffffff811115612bd757612bd66137e9565b5b602083019150836020820283011115612bf357612bf26137f3565b5b9250929050565b600082601f830112612c0f57612c0e6137ee565b5b8135612c1f848260208601612b0a565b91505092915050565b600081359050612c3781613b6c565b92915050565b600081359050612c4c81613b83565b92915050565b600060208284031215612c6857612c676137fd565b5b6000612c7684828501612b7a565b91505092915050565b600060208284031215612c9557612c946137fd565b5b6000612ca384828501612b8f565b91505092915050565b60008060408385031215612cc357612cc26137fd565b5b6000612cd185828601612b7a565b9250506020612ce285828601612b7a565b9150509250929050565b600080600060608486031215612d0557612d046137fd565b5b6000612d1386828701612b7a565b9350506020612d2486828701612b7a565b9250506040612d3586828701612c3d565b9150509250925092565b60008060408385031215612d5657612d556137fd565b5b6000612d6485828601612b7a565b9250506020612d7585828601612c3d565b9150509250929050565b600080600060408486031215612d9857612d976137fd565b5b600084013567ffffffffffffffff811115612db657612db56137f8565b5b612dc286828701612ba4565b93509350506020612dd586828701612c28565b9150509250925092565b600060208284031215612df557612df46137fd565b5b600082013567ffffffffffffffff811115612e1357612e126137f8565b5b612e1f84828501612bfa565b91505092915050565b600060208284031215612e3e57612e3d6137fd565b5b6000612e4c84828501612c28565b91505092915050565b600060208284031215612e6b57612e6a6137fd565b5b6000612e7984828501612c3d565b91505092915050565b60008060008060808587031215612e9c57612e9b6137fd565b5b6000612eaa87828801612c3d565b9450506020612ebb87828801612c3d565b9350506040612ecc87828801612c3d565b9250506060612edd87828801612c3d565b91505092959194509250565b6000612ef58383612f01565b60208301905092915050565b612f0a816135e3565b82525050565b612f19816135e3565b82525050565b6000612f2a82613489565b612f3481856134ac565b9350612f3f83613479565b8060005b83811015612f70578151612f578882612ee9565b9750612f628361349f565b925050600181019050612f43565b5085935050505092915050565b612f86816135f5565b82525050565b612f9581613638565b82525050565b612fa48161364a565b82525050565b6000612fb582613494565b612fbf81856134bd565b9350612fcf818560208601613680565b612fd881613802565b840191505092915050565b6000612ff06023836134bd565b9150612ffb82613813565b604082019050919050565b6000613013601c836134bd565b915061301e82613862565b602082019050919050565b60006130366026836134bd565b91506130418261388b565b604082019050919050565b60006130596022836134bd565b9150613064826138da565b604082019050919050565b600061307c6023836134bd565b915061308782613929565b604082019050919050565b600061309f601b836134bd565b91506130aa82613978565b602082019050919050565b60006130c26021836134bd565b91506130cd826139a1565b604082019050919050565b60006130e56020836134bd565b91506130f0826139f0565b602082019050919050565b60006131086029836134bd565b915061311382613a19565b604082019050919050565b600061312b6025836134bd565b915061313682613a68565b604082019050919050565b600061314e6023836134bd565b915061315982613ab7565b604082019050919050565b60006131716024836134bd565b915061317c82613b06565b604082019050919050565b61319081613621565b82525050565b61319f8161362b565b82525050565b60006020820190506131ba6000830184612f10565b92915050565b60006020820190506131d56000830184612f7d565b92915050565b60006020820190506131f06000830184612f8c565b92915050565b600060208201905081810360008301526132108184612faa565b905092915050565b6000602082019050818103600083015261323181612fe3565b9050919050565b6000602082019050818103600083015261325181613006565b9050919050565b6000602082019050818103600083015261327181613029565b9050919050565b600060208201905081810360008301526132918161304c565b9050919050565b600060208201905081810360008301526132b18161306f565b9050919050565b600060208201905081810360008301526132d181613092565b9050919050565b600060208201905081810360008301526132f1816130b5565b9050919050565b60006020820190508181036000830152613311816130d8565b9050919050565b60006020820190508181036000830152613331816130fb565b9050919050565b600060208201905081810360008301526133518161311e565b9050919050565b6000602082019050818103600083015261337181613141565b9050919050565b6000602082019050818103600083015261339181613164565b9050919050565b60006020820190506133ad6000830184613187565b92915050565b600060a0820190506133c86000830188613187565b6133d56020830187612f9b565b81810360408301526133e78186612f1f565b90506133f66060830185612f10565b6134036080830184613187565b9695505050505050565b60006020820190506134226000830184613196565b92915050565b6000613432613443565b905061343e82826136b3565b919050565b6000604051905090565b600067ffffffffffffffff821115613468576134676137ba565b5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006134d982613621565b91506134e483613621565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156135195761351861372d565b5b828201905092915050565b600061352f82613621565b915061353a83613621565b92508261354a5761354961375c565b5b828204905092915050565b600061356082613621565b915061356b83613621565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156135a4576135a361372d565b5b828202905092915050565b60006135ba82613621565b91506135c583613621565b9250828210156135d8576135d761372d565b5b828203905092915050565b60006135ee82613601565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006136438261365c565b9050919050565b600061365582613621565b9050919050565b60006136678261366e565b9050919050565b600061367982613601565b9050919050565b60005b8381101561369e578082015181840152602081019050613683565b838111156136ad576000848401525b50505050565b6136bc82613802565b810181811067ffffffffffffffff821117156136db576136da6137ba565b5b80604052505050565b60006136ef82613621565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156137225761372161372d565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a20596f7572206163636f756e7420697320626c61636b6c69737460008201527f6564210000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a2042616c616e636520657863656564732077616c6c657420736960008201527f7a65210000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b613b5e816135e3565b8114613b6957600080fd5b50565b613b75816135f5565b8114613b8057600080fd5b50565b613b8c81613621565b8114613b9757600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220b16352dd920237a00b08ac7d1bebf2df4dc800855cb060fd5de2a07d4ffcad1364736f6c634300080700330000000000000000000000007f8278ea9107738ee95ba884c561922cecd6b4210000000000000000000000007f8278ea9107738ee95ba884c561922cecd6b421

Deployed Bytecode

0x6080604052600436106101c55760003560e01c806374010ece116100f7578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e14610614578063ea1644d514610651578063ee4360561461067a578063f2fde38b146106a3576101cc565b8063a9059cbb1461055a578063bfd7928414610597578063c3c8cd80146105d4578063c492f046146105eb576101cc565b80638f9a55c0116100d15780638f9a55c0146104b257806395d89b41146104dd57806398a5c31514610508578063a2a957bb14610531576101cc565b806374010ece146104335780637d1db4a51461045c5780638da5cb5b14610487576101cc565b8063313ce567116101645780636d8aa8f81161013e5780636d8aa8f81461039f5780636fc3eaec146103c857806370a08231146103df578063715018a61461041c576101cc565b8063313ce5671461032057806349bd5a5e1461034b5780636b99905314610376576101cc565b80631694505e116101a05780631694505e1461026257806318160ddd1461028d57806323b872dd146102b85780632fd689e3146102f5576101cc565b8062b8cf2a146101d157806306fdde03146101fa578063095ea7b314610225576101cc565b366101cc57005b600080fd5b3480156101dd57600080fd5b506101f860048036038101906101f39190612ddf565b6106cc565b005b34801561020657600080fd5b5061020f6107f6565b60405161021c91906131f6565b60405180910390f35b34801561023157600080fd5b5061024c60048036038101906102479190612d3f565b610833565b60405161025991906131c0565b60405180910390f35b34801561026e57600080fd5b50610277610851565b60405161028491906131db565b60405180910390f35b34801561029957600080fd5b506102a2610877565b6040516102af9190613398565b60405180910390f35b3480156102c457600080fd5b506102df60048036038101906102da9190612cec565b610886565b6040516102ec91906131c0565b60405180910390f35b34801561030157600080fd5b5061030a61095f565b6040516103179190613398565b60405180910390f35b34801561032c57600080fd5b50610335610965565b604051610342919061340d565b60405180910390f35b34801561035757600080fd5b5061036061096e565b60405161036d91906131a5565b60405180910390f35b34801561038257600080fd5b5061039d60048036038101906103989190612c52565b610994565b005b3480156103ab57600080fd5b506103c660048036038101906103c19190612e28565b610a84565b005b3480156103d457600080fd5b506103dd610aa1565b005b3480156103eb57600080fd5b5061040660048036038101906104019190612c52565b610b72565b6040516104139190613398565b60405180910390f35b34801561042857600080fd5b50610431610b84565b005b34801561043f57600080fd5b5061045a60048036038101906104559190612e55565b610cd7565b005b34801561046857600080fd5b50610471610d76565b60405161047e9190613398565b60405180910390f35b34801561049357600080fd5b5061049c610d7c565b6040516104a991906131a5565b60405180910390f35b3480156104be57600080fd5b506104c7610da5565b6040516104d49190613398565b60405180910390f35b3480156104e957600080fd5b506104f2610dab565b6040516104ff91906131f6565b60405180910390f35b34801561051457600080fd5b5061052f600480360381019061052a9190612e55565b610de8565b005b34801561053d57600080fd5b5061055860048036038101906105539190612e82565b610e87565b005b34801561056657600080fd5b50610581600480360381019061057c9190612d3f565b610f3e565b60405161058e91906131c0565b60405180910390f35b3480156105a357600080fd5b506105be60048036038101906105b99190612c52565b610f5c565b6040516105cb91906131c0565b60405180910390f35b3480156105e057600080fd5b506105e9610f7c565b005b3480156105f757600080fd5b50610612600480360381019061060d9190612d7f565b611055565b005b34801561062057600080fd5b5061063b60048036038101906106369190612cac565b61118f565b6040516106489190613398565b60405180910390f35b34801561065d57600080fd5b5061067860048036038101906106739190612e55565b611216565b005b34801561068657600080fd5b506106a1600480360381019061069c9190612e55565b6112b5565b005b3480156106af57600080fd5b506106ca60048036038101906106c59190612c52565b61131e565b005b6106d46114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610761576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610758906132f8565b60405180910390fd5b60005b81518110156107f2576001601160008484815181106107865761078561378b565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806107ea906136e4565b915050610764565b5050565b60606040518060400160405280600781526020017f5465682041726b00000000000000000000000000000000000000000000000000815250905090565b60006108476108406114e0565b84846114e8565b6001905092915050565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000662386f26fc10000905090565b60006108938484846116b3565b6109548461089f6114e0565b61094f85604051806060016040528060288152602001613b9b60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006109056114e0565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f049092919063ffffffff16565b6114e8565b600190509392505050565b60195481565b60006009905090565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61099c6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a20906132f8565b60405180910390fd5b6000601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b80601660156101000a81548160ff02191690831515021790555050565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ae26114e0565b73ffffffffffffffffffffffffffffffffffffffff161480610b585750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b406114e0565b73ffffffffffffffffffffffffffffffffffffffff16145b610b6157600080fd5b6000479050610b6f81611f68565b50565b6000610b7d82612063565b9050919050565b610b8c6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c19576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c10906132f8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610cdf6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d63906132f8565b60405180910390fd5b8060178190555050565b60175481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60185481565b60606040518060400160405280600381526020017f41524b0000000000000000000000000000000000000000000000000000000000815250905090565b610df06114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e74906132f8565b60405180910390fd5b8060198190555050565b610e8f6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f13906132f8565b60405180910390fd5b8360098190555082600b8190555081600a8190555080600c8190555050505050565b6000610f52610f4b6114e0565b84846116b3565b6001905092915050565b60116020528060005260406000206000915054906101000a900460ff1681565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610fbd6114e0565b73ffffffffffffffffffffffffffffffffffffffff1614806110335750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661101b6114e0565b73ffffffffffffffffffffffffffffffffffffffff16145b61103c57600080fd5b600061104730610b72565b90506110528161212d565b50565b61105d6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e1906132f8565b60405180910390fd5b60005b838390508110156111895781600560008686858181106111105761110f61378b565b5b90506020020160208101906111259190612c52565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611181906136e4565b9150506110ed565b50505050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61121e6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a2906132f8565b60405180910390fd5b8060188190555050565b8060026000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b6113266114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113aa906132f8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611423576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141a90613258565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611558576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154f90613378565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115bf90613278565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516116a69190613398565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611723576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171a90613338565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611793576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178a90613218565b60405180910390fd5b600081116117d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117cd90613318565b60405180910390fd5b6117de610d7c565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561184c575061181c610d7c565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611c0357601754811115806118ab5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6118ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e190613238565b60405180910390fd5b601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561198e5750601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6119cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c490613298565b60405180910390fd5b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611a7a5760185481611a2f84610b72565b611a3991906134ce565b10611a79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7090613358565b60405180910390fd5b5b6000611a8530610b72565b9050600060195482101590506017548210611aa05760175491505b808015611aba5750601660149054906101000a900460ff16155b8015611b145750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b8015611b2c5750601660159054906101000a900460ff165b8015611b825750600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611bd85750600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611c0057611be68261212d565b60004790506000811115611bfe57611bfd47611f68565b5b505b50505b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611caa5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80611d5d5750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611d5c5750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b15611d6b5760009050611ef2565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611e165750601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611e2e57600954600d81905550600a54600e819055505b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611ed95750601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611ef157600b54600d81905550600c54600e819055505b5b611efe848484846123b5565b50505050565b6000838311158290611f4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4391906131f6565b60405180910390fd5b5060008385611f5b91906135af565b9050809150509392505050565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611fb86002846123e290919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611fe3573d6000803e3d6000fd5b50601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6120346002846123e290919063ffffffff16565b9081150290604051600060405180830381858888f1935050505015801561205f573d6000803e3d6000fd5b5050565b600080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905060006120b261242c565b9050600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156121115761210e612457565b90505b612124818361248290919063ffffffff16565b92505050919050565b6001601660146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115612165576121646137ba565b5b6040519080825280602002602001820160405280156121935781602001602082028036833780820191505090505b50905030816000815181106121ab576121aa61378b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561224d57600080fd5b505afa158015612261573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122859190612c7f565b816001815181106122995761229861378b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061230030601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846114e8565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016123649594939291906133b3565b600060405180830381600087803b15801561237e57600080fd5b505af1158015612392573d6000803e3d6000fd5b50505050506000601660146101000a81548160ff02191690831515021790555050565b806123c3576123c26124fd565b5b6123ce848484612540565b806123dc576123db612757565b5b50505050565b600061242483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061276b565b905092915050565b60008060006124396127ce565b9150915061245081826123e290919063ffffffff16565b9250505090565b60008060006124646127ce565b9150915061247b81836123e290919063ffffffff16565b9250505090565b60008083141561249557600090506124f7565b600082846124a39190613555565b90508284826124b29190613524565b146124f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124e9906132d8565b60405180910390fd5b809150505b92915050565b6000600d5414801561251157506000600e54145b1561251b5761253e565b600d54600f81905550600e546010819055506000600d819055506000600e819055505b565b600080600080600080612552876127e4565b95509550955095509550955061256789610b72565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506125fc86600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461284c90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061269185600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461289690919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506126dd816128f4565b6126e784836129b1565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516127449190613398565b60405180910390a3505050505050505050565b600f54600d81905550601054600e81905550565b600080831182906127b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127a991906131f6565b60405180910390fd5b50600083856127c19190613524565b9050809150509392505050565b600080600754662386f26fc10000915091509091565b60008060008060008060008060006128018a600d54600e546129eb565b925092509250600061281161242c565b905060008060006128248e878787612a81565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061288e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f04565b905092915050565b60008082846128a591906134ce565b9050838110156128ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128e1906132b8565b60405180910390fd5b8091505092915050565b60006128fe61242c565b90506000612915828461248290919063ffffffff16565b905061296981600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461289690919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6129c68260075461284c90919063ffffffff16565b6007819055506129e18160085461289690919063ffffffff16565b6008819055505050565b600080600080612a176064612a09888a61248290919063ffffffff16565b6123e290919063ffffffff16565b90506000612a416064612a33888b61248290919063ffffffff16565b6123e290919063ffffffff16565b90506000612a6a82612a5c858c61284c90919063ffffffff16565b61284c90919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080612a9a858961248290919063ffffffff16565b90506000612ab1868961248290919063ffffffff16565b90506000612ac8878961248290919063ffffffff16565b90506000612af182612ae3858761284c90919063ffffffff16565b61284c90919063ffffffff16565b9050838184965096509650505050509450945094915050565b6000612b1d612b188461344d565b613428565b90508083825260208201905082856020860282011115612b4057612b3f6137f3565b5b60005b85811015612b705781612b568882612b7a565b845260208401935060208301925050600181019050612b43565b5050509392505050565b600081359050612b8981613b55565b92915050565b600081519050612b9e81613b55565b92915050565b60008083601f840112612bba57612bb96137ee565b5b8235905067ffffffffffffffff811115612bd757612bd66137e9565b5b602083019150836020820283011115612bf357612bf26137f3565b5b9250929050565b600082601f830112612c0f57612c0e6137ee565b5b8135612c1f848260208601612b0a565b91505092915050565b600081359050612c3781613b6c565b92915050565b600081359050612c4c81613b83565b92915050565b600060208284031215612c6857612c676137fd565b5b6000612c7684828501612b7a565b91505092915050565b600060208284031215612c9557612c946137fd565b5b6000612ca384828501612b8f565b91505092915050565b60008060408385031215612cc357612cc26137fd565b5b6000612cd185828601612b7a565b9250506020612ce285828601612b7a565b9150509250929050565b600080600060608486031215612d0557612d046137fd565b5b6000612d1386828701612b7a565b9350506020612d2486828701612b7a565b9250506040612d3586828701612c3d565b9150509250925092565b60008060408385031215612d5657612d556137fd565b5b6000612d6485828601612b7a565b9250506020612d7585828601612c3d565b9150509250929050565b600080600060408486031215612d9857612d976137fd565b5b600084013567ffffffffffffffff811115612db657612db56137f8565b5b612dc286828701612ba4565b93509350506020612dd586828701612c28565b9150509250925092565b600060208284031215612df557612df46137fd565b5b600082013567ffffffffffffffff811115612e1357612e126137f8565b5b612e1f84828501612bfa565b91505092915050565b600060208284031215612e3e57612e3d6137fd565b5b6000612e4c84828501612c28565b91505092915050565b600060208284031215612e6b57612e6a6137fd565b5b6000612e7984828501612c3d565b91505092915050565b60008060008060808587031215612e9c57612e9b6137fd565b5b6000612eaa87828801612c3d565b9450506020612ebb87828801612c3d565b9350506040612ecc87828801612c3d565b9250506060612edd87828801612c3d565b91505092959194509250565b6000612ef58383612f01565b60208301905092915050565b612f0a816135e3565b82525050565b612f19816135e3565b82525050565b6000612f2a82613489565b612f3481856134ac565b9350612f3f83613479565b8060005b83811015612f70578151612f578882612ee9565b9750612f628361349f565b925050600181019050612f43565b5085935050505092915050565b612f86816135f5565b82525050565b612f9581613638565b82525050565b612fa48161364a565b82525050565b6000612fb582613494565b612fbf81856134bd565b9350612fcf818560208601613680565b612fd881613802565b840191505092915050565b6000612ff06023836134bd565b9150612ffb82613813565b604082019050919050565b6000613013601c836134bd565b915061301e82613862565b602082019050919050565b60006130366026836134bd565b91506130418261388b565b604082019050919050565b60006130596022836134bd565b9150613064826138da565b604082019050919050565b600061307c6023836134bd565b915061308782613929565b604082019050919050565b600061309f601b836134bd565b91506130aa82613978565b602082019050919050565b60006130c26021836134bd565b91506130cd826139a1565b604082019050919050565b60006130e56020836134bd565b91506130f0826139f0565b602082019050919050565b60006131086029836134bd565b915061311382613a19565b604082019050919050565b600061312b6025836134bd565b915061313682613a68565b604082019050919050565b600061314e6023836134bd565b915061315982613ab7565b604082019050919050565b60006131716024836134bd565b915061317c82613b06565b604082019050919050565b61319081613621565b82525050565b61319f8161362b565b82525050565b60006020820190506131ba6000830184612f10565b92915050565b60006020820190506131d56000830184612f7d565b92915050565b60006020820190506131f06000830184612f8c565b92915050565b600060208201905081810360008301526132108184612faa565b905092915050565b6000602082019050818103600083015261323181612fe3565b9050919050565b6000602082019050818103600083015261325181613006565b9050919050565b6000602082019050818103600083015261327181613029565b9050919050565b600060208201905081810360008301526132918161304c565b9050919050565b600060208201905081810360008301526132b18161306f565b9050919050565b600060208201905081810360008301526132d181613092565b9050919050565b600060208201905081810360008301526132f1816130b5565b9050919050565b60006020820190508181036000830152613311816130d8565b9050919050565b60006020820190508181036000830152613331816130fb565b9050919050565b600060208201905081810360008301526133518161311e565b9050919050565b6000602082019050818103600083015261337181613141565b9050919050565b6000602082019050818103600083015261339181613164565b9050919050565b60006020820190506133ad6000830184613187565b92915050565b600060a0820190506133c86000830188613187565b6133d56020830187612f9b565b81810360408301526133e78186612f1f565b90506133f66060830185612f10565b6134036080830184613187565b9695505050505050565b60006020820190506134226000830184613196565b92915050565b6000613432613443565b905061343e82826136b3565b919050565b6000604051905090565b600067ffffffffffffffff821115613468576134676137ba565b5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006134d982613621565b91506134e483613621565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156135195761351861372d565b5b828201905092915050565b600061352f82613621565b915061353a83613621565b92508261354a5761354961375c565b5b828204905092915050565b600061356082613621565b915061356b83613621565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156135a4576135a361372d565b5b828202905092915050565b60006135ba82613621565b91506135c583613621565b9250828210156135d8576135d761372d565b5b828203905092915050565b60006135ee82613601565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006136438261365c565b9050919050565b600061365582613621565b9050919050565b60006136678261366e565b9050919050565b600061367982613601565b9050919050565b60005b8381101561369e578082015181840152602081019050613683565b838111156136ad576000848401525b50505050565b6136bc82613802565b810181811067ffffffffffffffff821117156136db576136da6137ba565b5b80604052505050565b60006136ef82613621565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156137225761372161372d565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a20596f7572206163636f756e7420697320626c61636b6c69737460008201527f6564210000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a2042616c616e636520657863656564732077616c6c657420736960008201527f7a65210000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b613b5e816135e3565b8114613b6957600080fd5b50565b613b75816135f5565b8114613b8057600080fd5b50565b613b8c81613621565b8114613b9757600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220b16352dd920237a00b08ac7d1bebf2df4dc800855cb060fd5de2a07d4ffcad1364736f6c63430008070033

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

0000000000000000000000007f8278ea9107738ee95ba884c561922cecd6b4210000000000000000000000007f8278ea9107738ee95ba884c561922cecd6b421

-----Decoded View---------------
Arg [0] : marketingAddress (address): 0x7f8278Ea9107738ee95Ba884C561922CecD6B421
Arg [1] : devAddress (address): 0x7f8278Ea9107738ee95Ba884C561922CecD6B421

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000007f8278ea9107738ee95ba884c561922cecd6b421
Arg [1] : 0000000000000000000000007f8278ea9107738ee95ba884c561922cecd6b421


Deployed Bytecode Sourcemap

5397:15032:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15557:169;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9648:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10536:181;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7261:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9925:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10725:446;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7534:51;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9834:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7309:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15734:92;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19825:91;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15314:235;;;;;;;;;;;;;:::i;:::-;;10028:129;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2920:148;;;;;;;;;;;;;:::i;:::-;;19953:108;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7420:44;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2706:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7476:46;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9739:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19634:139;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19289:293;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10165:187;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6965:36;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15070:236;;;;;;;;;;;;;:::i;:::-;;20192:234;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10360:168;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20069:115;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19058:104;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3076:244;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15557:169;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15633:9:::1;15628:91;15652:5;:12;15648:1;:16;15628:91;;;15703:4;15686;:14;15691:5;15697:1;15691:8;;;;;;;;:::i;:::-;;;;;;;;15686:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;15666:3;;;;;:::i;:::-;;;;15628:91;;;;15557:169:::0;:::o;9648:83::-;9685:13;9718:5;;;;;;;;;;;;;;;;;9711:12;;9648:83;:::o;10536:181::-;10626:4;10648:39;10657:12;:10;:12::i;:::-;10671:7;10680:6;10648:8;:39::i;:::-;10705:4;10698:11;;10536:181;;;;:::o;7261:41::-;;;;;;;;;;;;;:::o;9925:95::-;9978:7;6157:16;9998:14;;9925:95;:::o;10725:446::-;10857:4;10874:36;10884:6;10892:9;10903:6;10874:9;:36::i;:::-;10921:220;10944:6;10965:12;:10;:12::i;:::-;10992:138;11048:6;10992:138;;;;;;;;;;;;;;;;;:11;:19;11004:6;10992:19;;;;;;;;;;;;;;;:33;11012:12;:10;:12::i;:::-;10992:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;10921:8;:220::i;:::-;11159:4;11152:11;;10725:446;;;;;:::o;7534:51::-;;;;:::o;9834:83::-;9875:5;5771:1;9893:16;;9834:83;:::o;7309:28::-;;;;;;;;;;;;;:::o;15734:92::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15813:5:::1;15798:4;:12;15803:6;15798:12;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;15734:92:::0;:::o;19825:91::-;19896:12;19882:11;;:26;;;;;;;;;;;;;;;;;;19825:91;:::o;15314:235::-;15380:19;;;;;;;;;;;15364:35;;:12;:10;:12::i;:::-;:35;;;:72;;;;15419:17;;;;;;;;;;;15403:33;;:12;:10;:12::i;:::-;:33;;;15364:72;15356:81;;;;;;15448:26;15477:21;15448:50;;15509:32;15522:18;15509:12;:32::i;:::-;15345:204;15314:235::o;10028:129::-;10094:7;10121:28;10141:7;10121:19;:28::i;:::-;10114:35;;10028:129;;;:::o;2920:148::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3027:1:::1;2990:40;;3011:6;::::0;::::1;;;;;;;;2990:40;;;;;;;;;;;;3058:1;3041:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2920:148::o:0;19953:108::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;20042:11:::1;20027:12;:26;;;;19953:108:::0;:::o;7420:44::-;;;;:::o;2706:79::-;2744:7;2771:6;;;;;;;;;;;2764:13;;2706:79;:::o;7476:46::-;;;;:::o;9739:87::-;9778:13;9811:7;;;;;;;;;;;;;;;;;9804:14;;9739:87;:::o;19634:139::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;19747:18:::1;19725:19;:40;;;;19634:139:::0;:::o;19289:293::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;19440:13:::1;19423:14;:30;;;;19482:14;19464:15;:32;;;;19524:11;19509:12;:26;;;;19562:12;19546:13;:28;;;;19289:293:::0;;;;:::o;10165:187::-;10258:4;10280:42;10290:12;:10;:12::i;:::-;10304:9;10315:6;10280:9;:42::i;:::-;10340:4;10333:11;;10165:187;;;;:::o;6965:36::-;;;;;;;;;;;;;;;;;;;;;;:::o;15070:236::-;15136:19;;;;;;;;;;;15120:35;;:12;:10;:12::i;:::-;:35;;;:72;;;;15175:17;;;;;;;;;;;15159:33;;:12;:10;:12::i;:::-;:33;;;15120:72;15112:81;;;;;;15204:23;15230:24;15248:4;15230:9;:24::i;:::-;15204:50;;15265:33;15282:15;15265:16;:33::i;:::-;15101:205;15070:236::o;20192:234::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;20309:9:::1;20305:114;20328:8;;:15;;20324:1;:19;20305:114;;;20399:8;20365:18;:31;20384:8;;20393:1;20384:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;20365:31;;;;;;;;;;;;;;;;:42;;;;;;;;;;;;;;;;;;20345:3;;;;;:::i;:::-;;;;20305:114;;;;20192:234:::0;;;:::o;10360:168::-;10461:7;10493:11;:18;10505:5;10493:18;;;;;;;;;;;;;;;:27;10512:7;10493:27;;;;;;;;;;;;;;;;10486:34;;10360:168;;;;:::o;20069:115::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;20163:13:::1;20146:14;:30;;;;20069:115:::0;:::o;19058:104::-;19148:6;19119:7;:26;19127:17;;;;;;;;;;;19119:26;;;;;;;;;;;;;;;:35;;;;19058:104;:::o;3076:244::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3185:1:::1;3165:22;;:8;:22;;;;3157:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;3275:8;3246:38;;3267:6;::::0;::::1;;;;;;;;3246:38;;;;;;;;;;;;3304:8;3295:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;3076:244:::0;:::o;1465:98::-;1518:7;1545:10;1538:17;;1465:98;:::o;11869:369::-;12013:1;11996:19;;:5;:19;;;;11988:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12094:1;12075:21;;:7;:21;;;;12067:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12176:6;12146:11;:18;12158:5;12146:18;;;;;;;;;;;;;;;:27;12165:7;12146:27;;;;;;;;;;;;;;;:36;;;;12214:7;12198:32;;12207:5;12198:32;;;12223:6;12198:32;;;;;;:::i;:::-;;;;;;;;11869:369;;;:::o;12246:2157::-;12384:1;12368:18;;:4;:18;;;;12360:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12461:1;12447:16;;:2;:16;;;;12439:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;12531:1;12522:6;:10;12514:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;12603:7;:5;:7::i;:::-;12595:15;;:4;:15;;;;:32;;;;;12620:7;:5;:7::i;:::-;12614:13;;:2;:13;;;;12595:32;12591:1088;;;12662:12;;12652:6;:22;;:50;;;;12678:18;:24;12697:4;12678:24;;;;;;;;;;;;;;;;;;;;;;;;;12652:50;12644:91;;;;;;;;;;;;:::i;:::-;;;;;;;;;12759:4;:10;12764:4;12759:10;;;;;;;;;;;;;;;;;;;;;;;;;12758:11;:24;;;;;12774:4;:8;12779:2;12774:8;;;;;;;;;;;;;;;;;;;;;;;;;12773:9;12758:24;12750:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;12846:13;;;;;;;;;;;12840:19;;:2;:19;;;12837:146;;12913:14;;12904:6;12888:13;12898:2;12888:9;:13::i;:::-;:22;;;;:::i;:::-;:39;12880:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;12837:146;12997:28;13028:24;13046:4;13028:9;:24::i;:::-;12997:55;;13067:12;13106:19;;13082:20;:43;;13067:58;;13169:12;;13145:20;:36;13142:124;;13238:12;;13215:35;;13142:124;13286:7;:18;;;;;13298:6;;;;;;;;;;;13297:7;13286:18;:43;;;;;13316:13;;;;;;;;;;;13308:21;;:4;:21;;;;13286:43;:58;;;;;13333:11;;;;;;;;;;;13286:58;:87;;;;;13349:18;:24;13368:4;13349:24;;;;;;;;;;;;;;;;;;;;;;;;;13348:25;13286:87;:114;;;;;13378:18;:22;13397:2;13378:22;;;;;;;;;;;;;;;;;;;;;;;;;13377:23;13286:114;13282:386;;;13421:38;13438:20;13421:16;:38::i;:::-;13478:26;13507:21;13478:50;;13572:1;13551:18;:22;13547:106;;;13598:35;13611:21;13598:12;:35::i;:::-;13547:106;13402:266;13282:386;12629:1050;;12591:1088;13691:12;13706:4;13691:19;;13755:18;:24;13774:4;13755:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;13783:18;:22;13802:2;13783:22;;;;;;;;;;;;;;;;;;;;;;;;;13755:50;13754:102;;;;13819:13;;;;;;;;;;;13811:21;;:4;:21;;;;:44;;;;;13842:13;;;;;;;;;;;13836:19;;:2;:19;;;;13811:44;13754:102;13750:594;;;13883:5;13873:15;;13750:594;;;13966:13;;;;;;;;;;;13958:21;;:4;:21;;;:55;;;;;13997:15;;;;;;;;;;;13983:30;;:2;:30;;;;13958:55;13955:162;;;14046:14;;14034:9;:26;;;;14089:12;;14079:7;:22;;;;13955:162;14176:13;;;;;;;;;;;14170:19;;:2;:19;;;:55;;;;;14209:15;;;;;;;;;;;14193:32;;:4;:32;;;;14170:55;14166:165;;;14258:15;;14246:9;:27;;;;14302:13;;14292:7;:23;;;;14166:165;13750:594;14354:41;14369:4;14375:2;14379:6;14387:7;14354:14;:41::i;:::-;12349:2054;12246:2157;;;:::o;3684:224::-;3804:7;3837:1;3832;:6;;3840:12;3824:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3864:9;3880:1;3876;:5;;;;:::i;:::-;3864:17;;3899:1;3892:8;;;3684:224;;;;;:::o;14902:160::-;14959:19;;;;;;;;;;;:28;;:43;14988:13;14999:1;14988:6;:10;;:13;;;;:::i;:::-;14959:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15013:17;;;;;;;;;;;:26;;:41;15040:13;15051:1;15040:6;:10;;:13;;;;:::i;:::-;15013:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14902:160;:::o;11179:330::-;11262:7;11287:15;11305:7;:16;11313:7;11305:16;;;;;;;;;;;;;;;;11287:34;;11332:19;11354:10;:8;:10::i;:::-;11332:32;;11379:20;:29;11400:7;11379:29;;;;;;;;;;;;;;;;;;;;;;;;;11375:85;;;11439:9;:7;:9::i;:::-;11425:23;;11375:85;11477:24;11489:11;11477:7;:11;;:24;;;;:::i;:::-;11470:31;;;;11179:330;;;:::o;14411:483::-;7693:4;7684:6;;:13;;;;;;;;;;;;;;;;;;14489:21:::1;14527:1;14513:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14489:40;;14558:4;14540;14545:1;14540:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;14584:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14574:4;14579:1;14574:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;14617:62;14634:4;14649:15;;;;;;;;;;;14667:11;14617:8;:62::i;:::-;14690:15;;;;;;;;;;;:66;;;14771:11;14797:1;14813:4;14840;14860:15;14690:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;14478:416;7729:5:::0;7720:6;;:14;;;;;;;;;;;;;;;;;;14411:483;:::o;15834:282::-;15990:7;15985:28;;15999:14;:12;:14::i;:::-;15985:28;16024:44;16042:6;16050:9;16061:6;16024:17;:44::i;:::-;16084:7;16079:29;;16093:15;:13;:15::i;:::-;16079:29;15834:282;;;;:::o;4170:132::-;4228:7;4255:39;4259:1;4262;4255:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;4248:46;;4170:132;;;;:::o;18719:164::-;18761:7;18782:15;18799;18818:19;:17;:19::i;:::-;18781:56;;;;18855:20;18867:7;18855;:11;;:20;;;;:::i;:::-;18848:27;;;;18719:164;:::o;18889:163::-;18930:7;18951:15;18968;18987:19;:17;:19::i;:::-;18950:56;;;;19024:20;19036:7;19024;:11;;:20;;;;:::i;:::-;19017:27;;;;18889:163;:::o;3916:246::-;3974:7;4003:1;3998;:6;3994:47;;;4028:1;4021:8;;;;3994:47;4051:9;4067:1;4063;:5;;;;:::i;:::-;4051:17;;4096:1;4091;4087;:5;;;;:::i;:::-;:10;4079:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;4153:1;4146:8;;;3916:246;;;;;:::o;11517:219::-;11577:1;11564:9;;:14;:30;;;;;11593:1;11582:7;;:12;11564:30;11560:43;;;11596:7;;11560:43;11635:9;;11615:17;:29;;;;11673:7;;11655:15;:25;;;;11705:1;11693:9;:13;;;;11727:1;11717:7;:11;;;;11517:219;:::o;16124:632::-;16267:15;16293:23;16327:12;16350:23;16384:12;16407:13;16434:19;16445:7;16434:10;:19::i;:::-;16256:197;;;;;;;;;;;;16482:17;16492:6;16482:9;:17::i;:::-;16464:7;:15;16472:6;16464:15;;;;;;;;;;;;;;;:35;;;;16528:28;16548:7;16528;:15;16536:6;16528:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;16510:7;:15;16518:6;16510:15;;;;;;;;;;;;;;;:46;;;;16588:39;16611:15;16588:7;:18;16596:9;16588:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;16567:7;:18;16575:9;16567:18;;;;;;;;;;;;;;;:60;;;;16638:16;16648:5;16638:9;:16::i;:::-;16665:23;16677:4;16683;16665:11;:23::i;:::-;16721:9;16704:44;;16713:6;16704:44;;;16732:15;16704:44;;;;;;:::i;:::-;;;;;;;;16245:511;;;;;;16124:632;;;:::o;11744:117::-;11800:17;;11788:9;:29;;;;11838:15;;11828:7;:25;;;;11744:117::o;4310:223::-;4430:7;4462:1;4458;:5;4465:12;4450:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;4489:9;4505:1;4501;:5;;;;:::i;:::-;4489:17;;4524:1;4517:8;;;4310:223;;;;;:::o;19168:113::-;19219:7;19228;19256;;6157:16;19248:25;;;;19168:113;;:::o;17175:569::-;17259:7;17277;17295;17313;17331;17349;17381:23;17406:12;17420:13;17446:40;17458:7;17467:9;;17478:7;;17446:11;:40::i;:::-;17380:106;;;;;;17497:19;17519:10;:8;:10::i;:::-;17497:32;;17541:15;17558:23;17583:12;17608:46;17620:7;17629:4;17635:5;17642:11;17608;:46::i;:::-;17540:114;;;;;;17675:7;17684:15;17701:4;17707:15;17724:4;17730:5;17667:69;;;;;;;;;;;;;;;;;;;17175:569;;;;;;;:::o;3540:136::-;3598:7;3625:43;3629:1;3632;3625:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;3618:50;;3540:136;;;;:::o;3353:179::-;3411:7;3431:9;3447:1;3443;:5;;;;:::i;:::-;3431:17;;3472:1;3467;:6;;3459:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;3523:1;3516:8;;;3353:179;;;;:::o;16764:211::-;16817:19;16839:10;:8;:10::i;:::-;16817:32;;16860:13;16876:22;16886:11;16876:5;:9;;:22;;;;:::i;:::-;16860:38;;16934:33;16961:5;16934:7;:22;16950:4;16934:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;16909:7;:22;16925:4;16909:22;;;;;;;;;;;;;;;:58;;;;16806:169;;16764:211;:::o;16983:147::-;17061:17;17073:4;17061:7;;:11;;:17;;;;:::i;:::-;17051:7;:27;;;;17102:20;17117:4;17102:10;;:14;;:20;;;;:::i;:::-;17089:10;:33;;;;16983:147;;:::o;17752:443::-;17905:7;17923;17941;17972:12;17987:30;18013:3;17987:21;17999:8;17987:7;:11;;:21;;;;:::i;:::-;:25;;:30;;;;:::i;:::-;17972:45;;18028:13;18044:28;18068:3;18044:19;18056:6;18044:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;18028:44;;18083:23;18109:28;18131:5;18109:17;18121:4;18109:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;18083:54;;18158:15;18175:4;18181:5;18150:37;;;;;;;;;17752:443;;;;;;;:::o;18203:508::-;18381:7;18399;18417;18448:15;18466:24;18478:11;18466:7;:11;;:24;;;;:::i;:::-;18448:42;;18501:12;18516:21;18525:11;18516:4;:8;;:21;;;;:::i;:::-;18501:36;;18548:13;18564:22;18574:11;18564:5;:9;;:22;;;;:::i;:::-;18548:38;;18597:23;18623:28;18645:5;18623:17;18635:4;18623:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;18597:54;;18672:7;18681:15;18698:4;18664:39;;;;;;;;;;18203:508;;;;;;;;:::o;24:722:1:-;120:5;145:81;161:64;218:6;161:64;:::i;:::-;145:81;:::i;:::-;136:90;;246:5;275:6;268:5;261:21;309:4;302:5;298:16;291:23;;335:6;385:3;377:4;369:6;365:17;360:3;356:27;353:36;350:143;;;404:79;;:::i;:::-;350:143;517:1;502:238;527:6;524:1;521:13;502:238;;;595:3;624:37;657:3;645:10;624:37;:::i;:::-;619:3;612:50;691:4;686:3;682:14;675:21;;725:4;720:3;716:14;709:21;;562:178;549:1;546;542:9;537:14;;502:238;;;506:14;126:620;;24:722;;;;;:::o;752:139::-;798:5;836:6;823:20;814:29;;852:33;879:5;852:33;:::i;:::-;752:139;;;;:::o;897:143::-;954:5;985:6;979:13;970:22;;1001:33;1028:5;1001:33;:::i;:::-;897:143;;;;:::o;1063:568::-;1136:8;1146:6;1196:3;1189:4;1181:6;1177:17;1173:27;1163:122;;1204:79;;:::i;:::-;1163:122;1317:6;1304:20;1294:30;;1347:18;1339:6;1336:30;1333:117;;;1369:79;;:::i;:::-;1333:117;1483:4;1475:6;1471:17;1459:29;;1537:3;1529:4;1521:6;1517:17;1507:8;1503:32;1500:41;1497:128;;;1544:79;;:::i;:::-;1497:128;1063:568;;;;;:::o;1654:370::-;1725:5;1774:3;1767:4;1759:6;1755:17;1751:27;1741:122;;1782:79;;:::i;:::-;1741:122;1899:6;1886:20;1924:94;2014:3;2006:6;1999:4;1991:6;1987:17;1924:94;:::i;:::-;1915:103;;1731:293;1654:370;;;;:::o;2030:133::-;2073:5;2111:6;2098:20;2089:29;;2127:30;2151:5;2127:30;:::i;:::-;2030:133;;;;:::o;2169:139::-;2215:5;2253:6;2240:20;2231:29;;2269:33;2296:5;2269:33;:::i;:::-;2169:139;;;;:::o;2314:329::-;2373:6;2422:2;2410:9;2401:7;2397:23;2393:32;2390:119;;;2428:79;;:::i;:::-;2390:119;2548:1;2573:53;2618:7;2609:6;2598:9;2594:22;2573:53;:::i;:::-;2563:63;;2519:117;2314:329;;;;:::o;2649:351::-;2719:6;2768:2;2756:9;2747:7;2743:23;2739:32;2736:119;;;2774:79;;:::i;:::-;2736:119;2894:1;2919:64;2975:7;2966:6;2955:9;2951:22;2919:64;:::i;:::-;2909:74;;2865:128;2649:351;;;;:::o;3006:474::-;3074:6;3082;3131:2;3119:9;3110:7;3106:23;3102:32;3099:119;;;3137:79;;:::i;:::-;3099:119;3257:1;3282:53;3327:7;3318:6;3307:9;3303:22;3282:53;:::i;:::-;3272:63;;3228:117;3384:2;3410:53;3455:7;3446:6;3435:9;3431:22;3410:53;:::i;:::-;3400:63;;3355:118;3006:474;;;;;:::o;3486:619::-;3563:6;3571;3579;3628:2;3616:9;3607:7;3603:23;3599:32;3596:119;;;3634:79;;:::i;:::-;3596:119;3754:1;3779:53;3824:7;3815:6;3804:9;3800:22;3779:53;:::i;:::-;3769:63;;3725:117;3881:2;3907:53;3952:7;3943:6;3932:9;3928:22;3907:53;:::i;:::-;3897:63;;3852:118;4009:2;4035:53;4080:7;4071:6;4060:9;4056:22;4035:53;:::i;:::-;4025:63;;3980:118;3486:619;;;;;:::o;4111:474::-;4179:6;4187;4236:2;4224:9;4215:7;4211:23;4207:32;4204:119;;;4242:79;;:::i;:::-;4204:119;4362:1;4387:53;4432:7;4423:6;4412:9;4408:22;4387:53;:::i;:::-;4377:63;;4333:117;4489:2;4515:53;4560:7;4551:6;4540:9;4536:22;4515:53;:::i;:::-;4505:63;;4460:118;4111:474;;;;;:::o;4591:698::-;4683:6;4691;4699;4748:2;4736:9;4727:7;4723:23;4719:32;4716:119;;;4754:79;;:::i;:::-;4716:119;4902:1;4891:9;4887:17;4874:31;4932:18;4924:6;4921:30;4918:117;;;4954:79;;:::i;:::-;4918:117;5067:80;5139:7;5130:6;5119:9;5115:22;5067:80;:::i;:::-;5049:98;;;;4845:312;5196:2;5222:50;5264:7;5255:6;5244:9;5240:22;5222:50;:::i;:::-;5212:60;;5167:115;4591:698;;;;;:::o;5295:539::-;5379:6;5428:2;5416:9;5407:7;5403:23;5399:32;5396:119;;;5434:79;;:::i;:::-;5396:119;5582:1;5571:9;5567:17;5554:31;5612:18;5604:6;5601:30;5598:117;;;5634:79;;:::i;:::-;5598:117;5739:78;5809:7;5800:6;5789:9;5785:22;5739:78;:::i;:::-;5729:88;;5525:302;5295:539;;;;:::o;5840:323::-;5896:6;5945:2;5933:9;5924:7;5920:23;5916:32;5913:119;;;5951:79;;:::i;:::-;5913:119;6071:1;6096:50;6138:7;6129:6;6118:9;6114:22;6096:50;:::i;:::-;6086:60;;6042:114;5840:323;;;;:::o;6169:329::-;6228:6;6277:2;6265:9;6256:7;6252:23;6248:32;6245:119;;;6283:79;;:::i;:::-;6245:119;6403:1;6428:53;6473:7;6464:6;6453:9;6449:22;6428:53;:::i;:::-;6418:63;;6374:117;6169:329;;;;:::o;6504:765::-;6590:6;6598;6606;6614;6663:3;6651:9;6642:7;6638:23;6634:33;6631:120;;;6670:79;;:::i;:::-;6631:120;6790:1;6815:53;6860:7;6851:6;6840:9;6836:22;6815:53;:::i;:::-;6805:63;;6761:117;6917:2;6943:53;6988:7;6979:6;6968:9;6964:22;6943:53;:::i;:::-;6933:63;;6888:118;7045:2;7071:53;7116:7;7107:6;7096:9;7092:22;7071:53;:::i;:::-;7061:63;;7016:118;7173:2;7199:53;7244:7;7235:6;7224:9;7220:22;7199:53;:::i;:::-;7189:63;;7144:118;6504:765;;;;;;;:::o;7275:179::-;7344:10;7365:46;7407:3;7399:6;7365:46;:::i;:::-;7443:4;7438:3;7434:14;7420:28;;7275:179;;;;:::o;7460:108::-;7537:24;7555:5;7537:24;:::i;:::-;7532:3;7525:37;7460:108;;:::o;7574:118::-;7661:24;7679:5;7661:24;:::i;:::-;7656:3;7649:37;7574:118;;:::o;7728:732::-;7847:3;7876:54;7924:5;7876:54;:::i;:::-;7946:86;8025:6;8020:3;7946:86;:::i;:::-;7939:93;;8056:56;8106:5;8056:56;:::i;:::-;8135:7;8166:1;8151:284;8176:6;8173:1;8170:13;8151:284;;;8252:6;8246:13;8279:63;8338:3;8323:13;8279:63;:::i;:::-;8272:70;;8365:60;8418:6;8365:60;:::i;:::-;8355:70;;8211:224;8198:1;8195;8191:9;8186:14;;8151:284;;;8155:14;8451:3;8444:10;;7852:608;;;7728:732;;;;:::o;8466:109::-;8547:21;8562:5;8547:21;:::i;:::-;8542:3;8535:34;8466:109;;:::o;8581:183::-;8694:63;8751:5;8694:63;:::i;:::-;8689:3;8682:76;8581:183;;:::o;8770:147::-;8865:45;8904:5;8865:45;:::i;:::-;8860:3;8853:58;8770:147;;:::o;8923:364::-;9011:3;9039:39;9072:5;9039:39;:::i;:::-;9094:71;9158:6;9153:3;9094:71;:::i;:::-;9087:78;;9174:52;9219:6;9214:3;9207:4;9200:5;9196:16;9174:52;:::i;:::-;9251:29;9273:6;9251:29;:::i;:::-;9246:3;9242:39;9235:46;;9015:272;8923:364;;;;:::o;9293:366::-;9435:3;9456:67;9520:2;9515:3;9456:67;:::i;:::-;9449:74;;9532:93;9621:3;9532:93;:::i;:::-;9650:2;9645:3;9641:12;9634:19;;9293:366;;;:::o;9665:::-;9807:3;9828:67;9892:2;9887:3;9828:67;:::i;:::-;9821:74;;9904:93;9993:3;9904:93;:::i;:::-;10022:2;10017:3;10013:12;10006:19;;9665:366;;;:::o;10037:::-;10179:3;10200:67;10264:2;10259:3;10200:67;:::i;:::-;10193:74;;10276:93;10365:3;10276:93;:::i;:::-;10394:2;10389:3;10385:12;10378:19;;10037:366;;;:::o;10409:::-;10551:3;10572:67;10636:2;10631:3;10572:67;:::i;:::-;10565:74;;10648:93;10737:3;10648:93;:::i;:::-;10766:2;10761:3;10757:12;10750:19;;10409:366;;;:::o;10781:::-;10923:3;10944:67;11008:2;11003:3;10944:67;:::i;:::-;10937:74;;11020:93;11109:3;11020:93;:::i;:::-;11138:2;11133:3;11129:12;11122:19;;10781:366;;;:::o;11153:::-;11295:3;11316:67;11380:2;11375:3;11316:67;:::i;:::-;11309:74;;11392:93;11481:3;11392:93;:::i;:::-;11510:2;11505:3;11501:12;11494:19;;11153:366;;;:::o;11525:::-;11667:3;11688:67;11752:2;11747:3;11688:67;:::i;:::-;11681:74;;11764:93;11853:3;11764:93;:::i;:::-;11882:2;11877:3;11873:12;11866:19;;11525:366;;;:::o;11897:::-;12039:3;12060:67;12124:2;12119:3;12060:67;:::i;:::-;12053:74;;12136:93;12225:3;12136:93;:::i;:::-;12254:2;12249:3;12245:12;12238:19;;11897:366;;;:::o;12269:::-;12411:3;12432:67;12496:2;12491:3;12432:67;:::i;:::-;12425:74;;12508:93;12597:3;12508:93;:::i;:::-;12626:2;12621:3;12617:12;12610:19;;12269:366;;;:::o;12641:::-;12783:3;12804:67;12868:2;12863:3;12804:67;:::i;:::-;12797:74;;12880:93;12969:3;12880:93;:::i;:::-;12998:2;12993:3;12989:12;12982:19;;12641:366;;;:::o;13013:::-;13155:3;13176:67;13240:2;13235:3;13176:67;:::i;:::-;13169:74;;13252:93;13341:3;13252:93;:::i;:::-;13370:2;13365:3;13361:12;13354:19;;13013:366;;;:::o;13385:::-;13527:3;13548:67;13612:2;13607:3;13548:67;:::i;:::-;13541:74;;13624:93;13713:3;13624:93;:::i;:::-;13742:2;13737:3;13733:12;13726:19;;13385:366;;;:::o;13757:118::-;13844:24;13862:5;13844:24;:::i;:::-;13839:3;13832:37;13757:118;;:::o;13881:112::-;13964:22;13980:5;13964:22;:::i;:::-;13959:3;13952:35;13881:112;;:::o;13999:222::-;14092:4;14130:2;14119:9;14115:18;14107:26;;14143:71;14211:1;14200:9;14196:17;14187:6;14143:71;:::i;:::-;13999:222;;;;:::o;14227:210::-;14314:4;14352:2;14341:9;14337:18;14329:26;;14365:65;14427:1;14416:9;14412:17;14403:6;14365:65;:::i;:::-;14227:210;;;;:::o;14443:274::-;14562:4;14600:2;14589:9;14585:18;14577:26;;14613:97;14707:1;14696:9;14692:17;14683:6;14613:97;:::i;:::-;14443:274;;;;:::o;14723:313::-;14836:4;14874:2;14863:9;14859:18;14851:26;;14923:9;14917:4;14913:20;14909:1;14898:9;14894:17;14887:47;14951:78;15024:4;15015:6;14951:78;:::i;:::-;14943:86;;14723:313;;;;:::o;15042:419::-;15208:4;15246:2;15235:9;15231:18;15223:26;;15295:9;15289:4;15285:20;15281:1;15270:9;15266:17;15259:47;15323:131;15449:4;15323:131;:::i;:::-;15315:139;;15042:419;;;:::o;15467:::-;15633:4;15671:2;15660:9;15656:18;15648:26;;15720:9;15714:4;15710:20;15706:1;15695:9;15691:17;15684:47;15748:131;15874:4;15748:131;:::i;:::-;15740:139;;15467:419;;;:::o;15892:::-;16058:4;16096:2;16085:9;16081:18;16073:26;;16145:9;16139:4;16135:20;16131:1;16120:9;16116:17;16109:47;16173:131;16299:4;16173:131;:::i;:::-;16165:139;;15892:419;;;:::o;16317:::-;16483:4;16521:2;16510:9;16506:18;16498:26;;16570:9;16564:4;16560:20;16556:1;16545:9;16541:17;16534:47;16598:131;16724:4;16598:131;:::i;:::-;16590:139;;16317:419;;;:::o;16742:::-;16908:4;16946:2;16935:9;16931:18;16923:26;;16995:9;16989:4;16985:20;16981:1;16970:9;16966:17;16959:47;17023:131;17149:4;17023:131;:::i;:::-;17015:139;;16742:419;;;:::o;17167:::-;17333:4;17371:2;17360:9;17356:18;17348:26;;17420:9;17414:4;17410:20;17406:1;17395:9;17391:17;17384:47;17448:131;17574:4;17448:131;:::i;:::-;17440:139;;17167:419;;;:::o;17592:::-;17758:4;17796:2;17785:9;17781:18;17773:26;;17845:9;17839:4;17835:20;17831:1;17820:9;17816:17;17809:47;17873:131;17999:4;17873:131;:::i;:::-;17865:139;;17592:419;;;:::o;18017:::-;18183:4;18221:2;18210:9;18206:18;18198:26;;18270:9;18264:4;18260:20;18256:1;18245:9;18241:17;18234:47;18298:131;18424:4;18298:131;:::i;:::-;18290:139;;18017:419;;;:::o;18442:::-;18608:4;18646:2;18635:9;18631:18;18623:26;;18695:9;18689:4;18685:20;18681:1;18670:9;18666:17;18659:47;18723:131;18849:4;18723:131;:::i;:::-;18715:139;;18442:419;;;:::o;18867:::-;19033:4;19071:2;19060:9;19056:18;19048:26;;19120:9;19114:4;19110:20;19106:1;19095:9;19091:17;19084:47;19148:131;19274:4;19148:131;:::i;:::-;19140:139;;18867:419;;;:::o;19292:::-;19458:4;19496:2;19485:9;19481:18;19473:26;;19545:9;19539:4;19535:20;19531:1;19520:9;19516:17;19509:47;19573:131;19699:4;19573:131;:::i;:::-;19565:139;;19292:419;;;:::o;19717:::-;19883:4;19921:2;19910:9;19906:18;19898:26;;19970:9;19964:4;19960:20;19956:1;19945:9;19941:17;19934:47;19998:131;20124:4;19998:131;:::i;:::-;19990:139;;19717:419;;;:::o;20142:222::-;20235:4;20273:2;20262:9;20258:18;20250:26;;20286:71;20354:1;20343:9;20339:17;20330:6;20286:71;:::i;:::-;20142:222;;;;:::o;20370:831::-;20633:4;20671:3;20660:9;20656:19;20648:27;;20685:71;20753:1;20742:9;20738:17;20729:6;20685:71;:::i;:::-;20766:80;20842:2;20831:9;20827:18;20818:6;20766:80;:::i;:::-;20893:9;20887:4;20883:20;20878:2;20867:9;20863:18;20856:48;20921:108;21024:4;21015:6;20921:108;:::i;:::-;20913:116;;21039:72;21107:2;21096:9;21092:18;21083:6;21039:72;:::i;:::-;21121:73;21189:3;21178:9;21174:19;21165:6;21121:73;:::i;:::-;20370:831;;;;;;;;:::o;21207:214::-;21296:4;21334:2;21323:9;21319:18;21311:26;;21347:67;21411:1;21400:9;21396:17;21387:6;21347:67;:::i;:::-;21207:214;;;;:::o;21427:129::-;21461:6;21488:20;;:::i;:::-;21478:30;;21517:33;21545:4;21537:6;21517:33;:::i;:::-;21427:129;;;:::o;21562:75::-;21595:6;21628:2;21622:9;21612:19;;21562:75;:::o;21643:311::-;21720:4;21810:18;21802:6;21799:30;21796:56;;;21832:18;;:::i;:::-;21796:56;21882:4;21874:6;21870:17;21862:25;;21942:4;21936;21932:15;21924:23;;21643:311;;;:::o;21960:132::-;22027:4;22050:3;22042:11;;22080:4;22075:3;22071:14;22063:22;;21960:132;;;:::o;22098:114::-;22165:6;22199:5;22193:12;22183:22;;22098:114;;;:::o;22218:99::-;22270:6;22304:5;22298:12;22288:22;;22218:99;;;:::o;22323:113::-;22393:4;22425;22420:3;22416:14;22408:22;;22323:113;;;:::o;22442:184::-;22541:11;22575:6;22570:3;22563:19;22615:4;22610:3;22606:14;22591:29;;22442:184;;;;:::o;22632:169::-;22716:11;22750:6;22745:3;22738:19;22790:4;22785:3;22781:14;22766:29;;22632:169;;;;:::o;22807:305::-;22847:3;22866:20;22884:1;22866:20;:::i;:::-;22861:25;;22900:20;22918:1;22900:20;:::i;:::-;22895:25;;23054:1;22986:66;22982:74;22979:1;22976:81;22973:107;;;23060:18;;:::i;:::-;22973:107;23104:1;23101;23097:9;23090:16;;22807:305;;;;:::o;23118:185::-;23158:1;23175:20;23193:1;23175:20;:::i;:::-;23170:25;;23209:20;23227:1;23209:20;:::i;:::-;23204:25;;23248:1;23238:35;;23253:18;;:::i;:::-;23238:35;23295:1;23292;23288:9;23283:14;;23118:185;;;;:::o;23309:348::-;23349:7;23372:20;23390:1;23372:20;:::i;:::-;23367:25;;23406:20;23424:1;23406:20;:::i;:::-;23401:25;;23594:1;23526:66;23522:74;23519:1;23516:81;23511:1;23504:9;23497:17;23493:105;23490:131;;;23601:18;;:::i;:::-;23490:131;23649:1;23646;23642:9;23631:20;;23309:348;;;;:::o;23663:191::-;23703:4;23723:20;23741:1;23723:20;:::i;:::-;23718:25;;23757:20;23775:1;23757:20;:::i;:::-;23752:25;;23796:1;23793;23790:8;23787:34;;;23801:18;;:::i;:::-;23787:34;23846:1;23843;23839:9;23831:17;;23663:191;;;;:::o;23860:96::-;23897:7;23926:24;23944:5;23926:24;:::i;:::-;23915:35;;23860:96;;;:::o;23962:90::-;23996:7;24039:5;24032:13;24025:21;24014:32;;23962:90;;;:::o;24058:126::-;24095:7;24135:42;24128:5;24124:54;24113:65;;24058:126;;;:::o;24190:77::-;24227:7;24256:5;24245:16;;24190:77;;;:::o;24273:86::-;24308:7;24348:4;24341:5;24337:16;24326:27;;24273:86;;;:::o;24365:152::-;24441:9;24474:37;24505:5;24474:37;:::i;:::-;24461:50;;24365:152;;;:::o;24523:121::-;24581:9;24614:24;24632:5;24614:24;:::i;:::-;24601:37;;24523:121;;;:::o;24650:126::-;24700:9;24733:37;24764:5;24733:37;:::i;:::-;24720:50;;24650:126;;;:::o;24782:113::-;24832:9;24865:24;24883:5;24865:24;:::i;:::-;24852:37;;24782:113;;;:::o;24901:307::-;24969:1;24979:113;24993:6;24990:1;24987:13;24979:113;;;25078:1;25073:3;25069:11;25063:18;25059:1;25054:3;25050:11;25043:39;25015:2;25012:1;25008:10;25003:15;;24979:113;;;25110:6;25107:1;25104:13;25101:101;;;25190:1;25181:6;25176:3;25172:16;25165:27;25101:101;24950:258;24901:307;;;:::o;25214:281::-;25297:27;25319:4;25297:27;:::i;:::-;25289:6;25285:40;25427:6;25415:10;25412:22;25391:18;25379:10;25376:34;25373:62;25370:88;;;25438:18;;:::i;:::-;25370:88;25478:10;25474:2;25467:22;25257:238;25214:281;;:::o;25501:233::-;25540:3;25563:24;25581:5;25563:24;:::i;:::-;25554:33;;25609:66;25602:5;25599:77;25596:103;;;25679:18;;:::i;:::-;25596:103;25726:1;25719:5;25715:13;25708:20;;25501:233;;;:::o;25740:180::-;25788:77;25785:1;25778:88;25885:4;25882:1;25875:15;25909:4;25906:1;25899:15;25926:180;25974:77;25971:1;25964:88;26071:4;26068:1;26061:15;26095:4;26092:1;26085:15;26112:180;26160:77;26157:1;26150:88;26257:4;26254:1;26247:15;26281:4;26278:1;26271:15;26298:180;26346:77;26343:1;26336:88;26443:4;26440:1;26433:15;26467:4;26464:1;26457:15;26484:117;26593:1;26590;26583:12;26607:117;26716:1;26713;26706:12;26730:117;26839:1;26836;26829:12;26853:117;26962:1;26959;26952:12;26976:117;27085:1;27082;27075:12;27099:102;27140:6;27191:2;27187:7;27182:2;27175:5;27171:14;27167:28;27157:38;;27099:102;;;:::o;27207:222::-;27347:34;27343:1;27335:6;27331:14;27324:58;27416:5;27411:2;27403:6;27399:15;27392:30;27207:222;:::o;27435:178::-;27575:30;27571:1;27563:6;27559:14;27552:54;27435:178;:::o;27619:225::-;27759:34;27755:1;27747:6;27743:14;27736:58;27828:8;27823:2;27815:6;27811:15;27804:33;27619:225;:::o;27850:221::-;27990:34;27986:1;27978:6;27974:14;27967:58;28059:4;28054:2;28046:6;28042:15;28035:29;27850:221;:::o;28077:222::-;28217:34;28213:1;28205:6;28201:14;28194:58;28286:5;28281:2;28273:6;28269:15;28262:30;28077:222;:::o;28305:177::-;28445:29;28441:1;28433:6;28429:14;28422:53;28305:177;:::o;28488:220::-;28628:34;28624:1;28616:6;28612:14;28605:58;28697:3;28692:2;28684:6;28680:15;28673:28;28488:220;:::o;28714:182::-;28854:34;28850:1;28842:6;28838:14;28831:58;28714:182;:::o;28902:228::-;29042:34;29038:1;29030:6;29026:14;29019:58;29111:11;29106:2;29098:6;29094:15;29087:36;28902:228;:::o;29136:224::-;29276:34;29272:1;29264:6;29260:14;29253:58;29345:7;29340:2;29332:6;29328:15;29321:32;29136:224;:::o;29366:222::-;29506:34;29502:1;29494:6;29490:14;29483:58;29575:5;29570:2;29562:6;29558:15;29551:30;29366:222;:::o;29594:223::-;29734:34;29730:1;29722:6;29718:14;29711:58;29803:6;29798:2;29790:6;29786:15;29779:31;29594:223;:::o;29823:122::-;29896:24;29914:5;29896:24;:::i;:::-;29889:5;29886:35;29876:63;;29935:1;29932;29925:12;29876:63;29823:122;:::o;29951:116::-;30021:21;30036:5;30021:21;:::i;:::-;30014:5;30011:32;30001:60;;30057:1;30054;30047:12;30001:60;29951:116;:::o;30073:122::-;30146:24;30164:5;30146:24;:::i;:::-;30139:5;30136:35;30126:63;;30185:1;30182;30175:12;30126:63;30073:122;:::o

Swarm Source

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