ETH Price: $2,393.75 (-3.84%)
Gas: 4.26 Gwei

Token

DICKELON (DICKE)
 

Overview

Max Total Supply

1,000,000,000,000 DICKE

Holders

85

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
2,265,781,475.653258289 DICKE

Value
$0.00
0xccee66d02065b3c10e507676913d4446ba1cd4ce
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:
DICKELON

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-03-10
*/

// ..... ▄▄ ▄▄
// ......▄▌▒▒▀▒▒▐▄
// .... ▐▒▒▒▒▒▒▒▒▒▌
// ... ▐▒▒▒▒▒▒▒▒▒▒▒▌
// ....▐▒▒▒▒▒▒▒▒▒▒▒▌
// ....▐▀▄▄▄▄▄▄▄▄▄▀▌
// ....▐░░░░░░░░░░░▌
// ....▐░░░░░░░░░░░▌
// ....▐░░░░░░░░░░░▌
// ....▐░░░░░░░░░░░▌
// ....▐░░░░░░░░░░░▌
// ....▐░░░░░░░░░░░▌
// ....▐░░░░░░░░░░░▌
// ....▐░░░░░░░░░░░▌
// ....▐░░░░░░░░░░░▌
// ....▐░░░░░░░░░░░▌
// ....▐░░░░░░░░░░░▌
// ...▄█▓░░░░░░░░░▓█▄
// ..▄▀░░░░░░░░░░░░░ ▀▄
// .▐░░░░░░░▀▄▒▄▀░░░░░░▌
// ▐░░░░░░░▒▒▐▒▒░░░░░░░▌
// ▐▒░░░░░▒▒▒▐▒▒▒░░░░░▒▌
// .▀▄▒▒▒▒▒▄▀▒▀▄▒▒▒▒▒▄▀
// .. ▀▀▀▀▀ ▀▀▀▀▀
// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.8.4;

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 DICKELON is Context, IERC20, Ownable {
    
    using SafeMath for uint256;

    string private constant _name = "DICKELON";
    string private constant _symbol = "DICKE";
    uint8 private constant _decimals = 9;

    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    mapping (address => uint256) private _buyMap;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1e12 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    mapping(address => bool) private _isSniper;
    address[] private _confirmedSnipers;
    uint256 public launchTime;

    // Jeets out Fee
    uint256 private _redisFeeJeets = 5;
    uint256 private _taxFeeJeets = 25;

    // Buy Fee
    uint256 private _redisFeeOnBuy = 2;
    uint256 private _taxFeeOnBuy = 10;
    
    // Sell Fee
    uint256 private _redisFeeOnSell = 2;
    uint256 private _taxFeeOnSell = 10;
    
    // Original Fee
    uint256 private _redisFee = _redisFeeOnSell;
    uint256 private _taxFee = _taxFeeOnSell;
    uint256 private _burnFee = 0;
    
    uint256 private _previousredisFee = _redisFee;
    uint256 private _previoustaxFee = _taxFee;
    uint256 private _previousburnFee = _burnFee;

    mapping(address => uint256) private cooldown;
    
    address payable private _marketingAddress = payable(0x39CdfC25fa752f592F56F436022489299894Efd2);
    address public constant deadAddress = 0x000000000000000000000000000000000000dEaD;

    uint256 public timeJeets = 6 hours;
    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = true;
    bool private isMaxBuyActivated = true;
    
    uint256 public _maxTxAmount = 1e10 * 10**9; //1% - 10000000000
    uint256 public _maxWalletSize = 3e10 * 10**9; //3%
    uint256 public _swapTokensAtAmount = 1000 * 10**9; 
    uint256 public _minimumBuyAmount = 5e9 * 10**9; // 0.5%

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

    constructor() {
        
        _rOwned[_msgSender()] = _rTotal;
        
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_marketingAddress] = true;
        _isExcludedFromFee[deadAddress] = 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(_rOwned[account]);
    }

    function marketingWallet() public view returns (address) {
        return _marketingAddress;
    }

    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(uint256 rAmount)
        private
        view
        returns (uint256)
    {
        require(
            rAmount <= _rTotal,
            "Amount must be less than total reflections"
        );
        uint256 currentRate = _getRate();
        return rAmount.div(currentRate);
    }

    function removeAllFee() private {
        if (_redisFee == 0 && _taxFee == 0 && _burnFee == 0) return;
    
        _previousredisFee = _redisFee;
        _previoustaxFee = _taxFee;
        _previousburnFee = _burnFee;
        
        _redisFee = 0;
        _taxFee = 0;
        _burnFee = 0;
    }

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

    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");
        require(!_isSniper[to], 'Stop sniping!');
        require(!_isSniper[from], 'Stop sniping!');
        require(!_isSniper[_msgSender()], 'Stop sniping!');

        if (from != owner() && to != owner()) {
            
            // Trade start check
            if (!tradingOpen) {
                revert("Trading not yet enabled!");
            }
            
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                if (to != address(this) && from != address(this) && to != _marketingAddress && from != _marketingAddress) {
                    require(amount <= _maxTxAmount, "TOKEN: Max Transaction Limit");
                }
            }

            if (to != uniswapV2Pair && to != _marketingAddress && to != address(this) && to != deadAddress) {
                require(balanceOf(to) + amount < _maxWalletSize, "TOKEN: Balance exceeds wallet size!");
                if (isMaxBuyActivated) {
                    if (block.timestamp <= launchTime + 30 minutes) {
                        require(amount <= _minimumBuyAmount, "Amount too much");
                    }
                }
            }
            
            uint256 contractTokenBalance = balanceOf(address(this));
            bool canSwap = contractTokenBalance > _swapTokensAtAmount;
            
            if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
                uint256 burntAmount = 0;
                if (_burnFee > 0) {
                    burntAmount = contractTokenBalance.mul(_burnFee).div(10**2);
                    burnTokens(burntAmount);
                }
                swapTokensForEth(contractTokenBalance - burntAmount);
                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)) {
                    _buyMap[to] = block.timestamp;
                    _redisFee = _redisFeeOnBuy;
                    _taxFee = _taxFeeOnBuy;
                    // antibot
                    if (block.timestamp == launchTime) {
                        _isSniper[to] = true;
                        _confirmedSnipers.push(to);
                    }
            }
    
            // Set Fee for Sells
            // TAX SELLERS 25% WHO SELL WITHIN 48 HOURS (13% marketing + 12% holders redistribution)
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                if (_buyMap[from] != 0 && (_buyMap[from] + timeJeets >= block.timestamp)) {
                    _redisFee = _redisFeeJeets;
                    _taxFee = _taxFeeJeets;
                } else {
                    _redisFee = _redisFeeOnSell;
                    _taxFee = _taxFeeOnSell;
                }
            }
        }

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

    function burnTokens(uint256 burntAmount) private {
        _transfer(address(this), deadAddress, burntAmount);
    }

    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
        );
    }
    
    // Set minimum tokens required to swap.
    function setMinSwapTokensThreshold(uint256 swapTokensAtAmount) external {
        require(_msgSender() == _marketingAddress);
        _swapTokensAtAmount = swapTokensAtAmount;
    }

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

    function setTrading(bool _tradingOpen) public onlyOwner {
        tradingOpen = _tradingOpen;
        launchTime = block.timestamp;
    }

    function setIsMaxBuyActivated(bool _isMaxBuyActivated) public {
        require(_msgSender() == _marketingAddress);
        isMaxBuyActivated = _isMaxBuyActivated;
    }

    function manualswap(uint256 amount) external {
        require(_msgSender() == _marketingAddress);
        require(amount <= balanceOf(address(this)) && amount > 0, "Wrong amount");
        swapTokensForEth(amount);
    }

    function addSniper(address sniper) external {
        require(_msgSender() == _marketingAddress);
        _isSniper[sniper] = true;
        _confirmedSnipers.push(sniper);
    }

    function isSniper(address sniper) external view returns (bool){
        return _isSniper[sniper];
    }

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

    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] = _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 rSupply.div(tSupply);
    }

    function _getCurrentSupply() private view returns (uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
    
        return (rSupply, tSupply);
    }

    function toggleSwap(bool _swapEnabled) public onlyOwner {
        swapEnabled = _swapEnabled;
    }
    
    function setMaxTxnAmount(uint256 maxTxAmount) external {
        require(_msgSender() == _marketingAddress);
        require(maxTxAmount >= 1e9 * 10**9, "Maximum transaction amount must be greater than 0.1%");
        _maxTxAmount = maxTxAmount;
    }
    
    function setMaxWalletSize(uint256 maxWalletSize) external {
        require(_msgSender() == _marketingAddress);
        _maxWalletSize = maxWalletSize;
    }

    function setTaxFee(uint256 amountBuy, uint256 amountSell) external {
        require(_msgSender() == _marketingAddress);
        require(amountBuy >= 0 && amountBuy <= 30);
        require(amountSell >= 0 && amountSell <= 30);
        _taxFeeOnBuy = amountBuy;
        _taxFeeOnSell = amountSell;
    }

    function setJeetsFee(uint256 amountRedisJeets, uint256 amountTaxJeets) external {
        require(_msgSender() == _marketingAddress);
        require(amountRedisJeets >= 0 && amountRedisJeets <= 30);
        require(amountTaxJeets >= 0 && amountTaxJeets <= 30);
        _redisFeeJeets = amountRedisJeets;
        _taxFeeJeets = amountTaxJeets;
    }
    
    function setBurnFee(uint256 amount) external {
        require(_msgSender() == _marketingAddress);
        require(amount >= 0 && amount <= 30);
        _burnFee = amount;
    }

     function setTimeJeets(uint256 hoursTime) external {
        require(_msgSender() == _marketingAddress);
        require(hoursTime >= 0 && hoursTime <= 200);
        timeJeets = hoursTime * 1 hours;
    }

    function setRefFee(uint256 amountRefBuy, uint256 amountRefSell) external {
        require(_msgSender() == _marketingAddress);
        require(amountRefBuy >= 0 && amountRefBuy <= 30);
        require(amountRefSell >= 0 && amountRefSell <= 30);
        _redisFeeOnBuy = amountRefBuy;
        _redisFeeOnSell = amountRefSell;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"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":[],"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":"_minimumBuyAmount","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":"sniper","type":"address"}],"name":"addSniper","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"sniper","type":"address"}],"name":"isSniper","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":"amount","type":"uint256"}],"name":"setBurnFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_isMaxBuyActivated","type":"bool"}],"name":"setIsMaxBuyActivated","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountRedisJeets","type":"uint256"},{"internalType":"uint256","name":"amountTaxJeets","type":"uint256"}],"name":"setJeetsFee","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":[{"internalType":"uint256","name":"amountRefBuy","type":"uint256"},{"internalType":"uint256","name":"amountRefSell","type":"uint256"}],"name":"setRefFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountBuy","type":"uint256"},{"internalType":"uint256","name":"amountSell","type":"uint256"}],"name":"setTaxFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"hoursTime","type":"uint256"}],"name":"setTimeJeets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_tradingOpen","type":"bool"}],"name":"setTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"timeJeets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":[],"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"}]

6080604052683635c9adc5dea000006000196200001d919062000805565b6000196200002c91906200078c565b6007556005600c556019600d556002600e55600a600f556002601055600a60115560105460125560115460135560006014556012546015556013546016556014546017557339cdfc25fa752f592f56f436022489299894efd2601960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550615460601a556000601c60156101000a81548160ff0219169083151502179055506001601c60166101000a81548160ff0219169083151502179055506001601c60176101000a81548160ff021916908315150217905550678ac7230489e80000601d556801a055690d9db80000601e5564e8d4a51000601f55674563918244f400006020553480156200015757600080fd5b5060006200016a620006a660201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350600754600260006200021f620006a660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620002fe57600080fd5b505afa15801562000313573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003399190620006ee565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200039c57600080fd5b505afa158015620003b1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003d79190620006ee565b6040518363ffffffff1660e01b8152600401620003f692919062000742565b602060405180830381600087803b1580156200041157600080fd5b505af115801562000426573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200044c9190620006ee565b601c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160066000620004a2620006ae60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160066000601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016006600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200062f620006a660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef683635c9adc5dea000006040516200069791906200076f565b60405180910390a350620008ba565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081519050620006e881620008a0565b92915050565b6000602082840312156200070757620007066200089b565b5b60006200071784828501620006d7565b91505092915050565b6200072b81620007c7565b82525050565b6200073c81620007fb565b82525050565b600060408201905062000759600083018562000720565b62000768602083018462000720565b9392505050565b600060208201905062000786600083018462000731565b92915050565b60006200079982620007fb565b9150620007a683620007fb565b925082821015620007bc57620007bb6200083d565b5b828203905092915050565b6000620007d482620007db565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006200081282620007fb565b91506200081f83620007fb565b9250826200083257620008316200086c565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600080fd5b620008ab81620007c7565b8114620008b757600080fd5b50565b6143cd80620008ca6000396000f3fe60806040526004361061021e5760003560e01c806374010ece1161012357806398a5c315116100ab578063dd62ed3e1161006f578063dd62ed3e146107a6578063e0f9f6a0146107e3578063ea1644d51461080c578063f2fde38b14610835578063fe72c3c11461085e57610225565b806398a5c315146106c55780639ec350ed146106ee5780639f13157114610717578063a9059cbb14610740578063c55284901461077d57610225565b8063881dce60116100f2578063881dce60146105f25780638da5cb5b1461061b5780638f70ccf7146106465780638f9a55c01461066f57806395d89b411461069a57610225565b806374010ece1461054857806375f0a87414610571578063790ca4131461059c5780637d1db4a5146105c757610225565b806338eea22d116101a65780636b9cf534116101755780636b9cf534146104895780636d8aa8f8146104b45780636fc3eaec146104dd57806370a08231146104f4578063715018a61461053157610225565b806338eea22d146103e35780633e3e95981461040c57806349bd5a5e146104355780634bf2c7c91461046057610225565b806318160ddd116101ed57806318160ddd146102fa57806323b872dd1461032557806327c8f835146103625780632fd689e31461038d578063313ce567146103b857610225565b806306fdde031461022a578063095ea7b3146102555780630f3a325f146102925780631694505e146102cf57610225565b3661022557005b600080fd5b34801561023657600080fd5b5061023f610889565b60405161024c9190613917565b60405180910390f35b34801561026157600080fd5b5061027c60048036038101906102779190613481565b6108c6565b60405161028991906138e1565b60405180910390f35b34801561029e57600080fd5b506102b960048036038101906102b49190613394565b6108e4565b6040516102c691906138e1565b60405180910390f35b3480156102db57600080fd5b506102e461093a565b6040516102f191906138fc565b60405180910390f35b34801561030657600080fd5b5061030f610960565b60405161031c9190613b59565b60405180910390f35b34801561033157600080fd5b5061034c6004803603810190610347919061342e565b610971565b60405161035991906138e1565b60405180910390f35b34801561036e57600080fd5b50610377610a4a565b60405161038491906138c6565b60405180910390f35b34801561039957600080fd5b506103a2610a50565b6040516103af9190613b59565b60405180910390f35b3480156103c457600080fd5b506103cd610a56565b6040516103da9190613bce565b60405180910390f35b3480156103ef57600080fd5b5061040a6004803603810190610405919061351b565b610a5f565b005b34801561041857600080fd5b50610433600480360381019061042e9190613394565b610b08565b005b34801561044157600080fd5b5061044a610c27565b60405161045791906138c6565b60405180910390f35b34801561046c57600080fd5b50610487600480360381019061048291906134ee565b610c4d565b005b34801561049557600080fd5b5061049e610cd3565b6040516104ab9190613b59565b60405180910390f35b3480156104c057600080fd5b506104db60048036038101906104d691906134c1565b610cd9565b005b3480156104e957600080fd5b506104f2610d8b565b005b34801561050057600080fd5b5061051b60048036038101906105169190613394565b610dfd565b6040516105289190613b59565b60405180910390f35b34801561053d57600080fd5b50610546610e4e565b005b34801561055457600080fd5b5061056f600480360381019061056a91906134ee565b610fa1565b005b34801561057d57600080fd5b50610586611057565b60405161059391906138c6565b60405180910390f35b3480156105a857600080fd5b506105b1611081565b6040516105be9190613b59565b60405180910390f35b3480156105d357600080fd5b506105dc611087565b6040516105e99190613b59565b60405180910390f35b3480156105fe57600080fd5b50610619600480360381019061061491906134ee565b61108d565b005b34801561062757600080fd5b50610630611151565b60405161063d91906138c6565b60405180910390f35b34801561065257600080fd5b5061066d600480360381019061066891906134c1565b61117a565b005b34801561067b57600080fd5b50610684611233565b6040516106919190613b59565b60405180910390f35b3480156106a657600080fd5b506106af611239565b6040516106bc9190613917565b60405180910390f35b3480156106d157600080fd5b506106ec60048036038101906106e791906134ee565b611276565b005b3480156106fa57600080fd5b506107156004803603810190610710919061351b565b6112e1565b005b34801561072357600080fd5b5061073e600480360381019061073991906134c1565b61138a565b005b34801561074c57600080fd5b5061076760048036038101906107629190613481565b611408565b60405161077491906138e1565b60405180910390f35b34801561078957600080fd5b506107a4600480360381019061079f919061351b565b611426565b005b3480156107b257600080fd5b506107cd60048036038101906107c891906133ee565b6114cf565b6040516107da9190613b59565b60405180910390f35b3480156107ef57600080fd5b5061080a600480360381019061080591906134ee565b611556565b005b34801561081857600080fd5b50610833600480360381019061082e91906134ee565b6115e9565b005b34801561084157600080fd5b5061085c60048036038101906108579190613394565b611654565b005b34801561086a57600080fd5b50610873611816565b6040516108809190613b59565b60405180910390f35b60606040518060400160405280600881526020017f4449434b454c4f4e000000000000000000000000000000000000000000000000815250905090565b60006108da6108d361181c565b8484611824565b6001905092915050565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000683635c9adc5dea00000905090565b600061097e8484846119ef565b610a3f8461098a61181c565b610a3a8560405180606001604052806028815260200161437060289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006109f061181c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128189092919063ffffffff16565b611824565b600190509392505050565b61dead81565b601f5481565b60006009905090565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610aa061181c565b73ffffffffffffffffffffffffffffffffffffffff1614610ac057600080fd5b60008210158015610ad25750601e8211155b610adb57600080fd5b60008110158015610aed5750601e8111155b610af657600080fd5b81600e81905550806010819055505050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b4961181c565b73ffffffffffffffffffffffffffffffffffffffff1614610b6957600080fd5b6001600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600a819080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c8e61181c565b73ffffffffffffffffffffffffffffffffffffffff1614610cae57600080fd5b60008110158015610cc05750601e8111155b610cc957600080fd5b8060148190555050565b60205481565b610ce161181c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6590613a79565b60405180910390fd5b80601c60166101000a81548160ff02191690831515021790555050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610dcc61181c565b73ffffffffffffffffffffffffffffffffffffffff1614610dec57600080fd5b6000479050610dfa8161287c565b50565b6000610e47600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128e8565b9050919050565b610e5661181c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ee3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eda90613a79565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610fe261181c565b73ffffffffffffffffffffffffffffffffffffffff161461100257600080fd5b670de0b6b3a764000081101561104d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104490613a39565b60405180910390fd5b80601d8190555050565b6000601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600b5481565b601d5481565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166110ce61181c565b73ffffffffffffffffffffffffffffffffffffffff16146110ee57600080fd5b6110f730610dfd565b81111580156111065750600081115b611145576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113c90613b39565b60405180910390fd5b61114e81612956565b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61118261181c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461120f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120690613a79565b60405180910390fd5b80601c60146101000a81548160ff02191690831515021790555042600b8190555050565b601e5481565b60606040518060400160405280600581526020017f4449434b45000000000000000000000000000000000000000000000000000000815250905090565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166112b761181c565b73ffffffffffffffffffffffffffffffffffffffff16146112d757600080fd5b80601f8190555050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661132261181c565b73ffffffffffffffffffffffffffffffffffffffff161461134257600080fd5b600082101580156113545750601e8211155b61135d57600080fd5b6000811015801561136f5750601e8111155b61137857600080fd5b81600c8190555080600d819055505050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166113cb61181c565b73ffffffffffffffffffffffffffffffffffffffff16146113eb57600080fd5b80601c60176101000a81548160ff02191690831515021790555050565b600061141c61141561181c565b84846119ef565b6001905092915050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661146761181c565b73ffffffffffffffffffffffffffffffffffffffff161461148757600080fd5b600082101580156114995750601e8211155b6114a257600080fd5b600081101580156114b45750601e8111155b6114bd57600080fd5b81600f81905550806011819055505050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661159761181c565b73ffffffffffffffffffffffffffffffffffffffff16146115b757600080fd5b600081101580156115c9575060c88111155b6115d257600080fd5b610e10816115e09190613cc5565b601a8190555050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661162a61181c565b73ffffffffffffffffffffffffffffffffffffffff161461164a57600080fd5b80601e8190555050565b61165c61181c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116e090613a79565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611759576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611750906139b9565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b601a5481565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611894576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188b90613b19565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611904576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118fb906139d9565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516119e29190613b59565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611a5f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5690613ab9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611acf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac690613939565b60405180910390fd5b60008111611b12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0990613a99565b60405180910390fd5b600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611b9f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9690613af9565b60405180910390fd5b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611c2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2390613af9565b60405180910390fd5b60096000611c3861181c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611cc0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb790613af9565b60405180910390fd5b611cc8611151565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611d365750611d06611151565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561235457601c60149054906101000a900460ff16611d8a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d8190613959565b60405180910390fd5b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16148015611e355750601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611fa2573073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614158015611ea257503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611efc5750601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611f565750601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611fa157601d54811115611fa0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f9790613999565b60405180910390fd5b5b5b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415801561204e5750601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561208657503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156120c0575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561218f57601e54816120d284610dfd565b6120dc9190613c3e565b1061211c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161211390613ad9565b60405180910390fd5b601c60179054906101000a900460ff161561218e57610708600b546121419190613c3e565b421161218d5760205481111561218c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612183906139f9565b60405180910390fd5b5b5b5b600061219a30610dfd565b90506000601f54821190508080156121bf5750601c60159054906101000a900460ff16155b80156122195750601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b80156122315750601c60169054906101000a900460ff165b80156122875750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156122dd5750600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561235157600080601454111561232257612316606461230860145486612bde90919063ffffffff16565b612c5990919063ffffffff16565b905061232181612ca3565b5b61233681846123319190613d1f565b612956565b6000479050600081111561234e5761234d4761287c565b5b50505b50505b600060019050600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806123fb5750600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806124ae5750601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156124ad5750601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b156124bc5760009050612806565b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156125675750601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156126895742600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600e54601281905550600f54601381905550600b54421415612688576001600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600a839080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156127345750601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15612805576000600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054141580156127d5575042601a54600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127d29190613c3e565b10155b156127f157600c54601281905550600d54601381905550612804565b6010546012819055506011546013819055505b5b5b61281284848484612cb3565b50505050565b6000838311158290612860576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128579190613917565b60405180910390fd5b506000838561286f9190613d1f565b9050809150509392505050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156128e4573d6000803e3d6000fd5b5050565b600060075482111561292f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161292690613979565b60405180910390fd5b6000612939612ce0565b905061294e8184612c5990919063ffffffff16565b915050919050565b6001601c60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561298e5761298d613eb0565b5b6040519080825280602002602001820160405280156129bc5781602001602082028036833780820191505090505b50905030816000815181106129d4576129d3613e81565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015612a7657600080fd5b505afa158015612a8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aae91906133c1565b81600181518110612ac257612ac1613e81565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050612b2930601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611824565b601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612b8d959493929190613b74565b600060405180830381600087803b158015612ba757600080fd5b505af1158015612bbb573d6000803e3d6000fd5b50505050506000601c60156101000a81548160ff02191690831515021790555050565b600080831415612bf15760009050612c53565b60008284612bff9190613cc5565b9050828482612c0e9190613c94565b14612c4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c4590613a59565b60405180910390fd5b809150505b92915050565b6000612c9b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612d0b565b905092915050565b612cb03061dead836119ef565b50565b80612cc157612cc0612d6e565b5b612ccc848484612dd0565b80612cda57612cd9612f9b565b5b50505050565b6000806000612ced612fb8565b91509150612d048183612c5990919063ffffffff16565b9250505090565b60008083118290612d52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d499190613917565b60405180910390fd5b5060008385612d619190613c94565b9050809150509392505050565b6000601254148015612d8257506000601354145b8015612d9057506000601454145b15612d9a57612dce565b6012546015819055506013546016819055506014546017819055506000601281905550600060138190555060006014819055505b565b600080600080600080612de28761301a565b955095509550955095509550612e4086600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461308290919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612ed585600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130cc90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612f218161312a565b612f2b84836131e7565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051612f889190613b59565b60405180910390a3505050505050505050565b601554601281905550601654601381905550601754601481905550565b600080600060075490506000683635c9adc5dea000009050612fee683635c9adc5dea00000600754612c5990919063ffffffff16565b82101561300d57600754683635c9adc5dea00000935093505050613016565b81819350935050505b9091565b60008060008060008060008060006130378a601254601354613221565b9250925092506000613047612ce0565b9050600080600061305a8e8787876132b7565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b60006130c483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612818565b905092915050565b60008082846130db9190613c3e565b905083811015613120576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161311790613a19565b60405180910390fd5b8091505092915050565b6000613134612ce0565b9050600061314b8284612bde90919063ffffffff16565b905061319f81600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130cc90919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6131fc8260075461308290919063ffffffff16565b600781905550613217816008546130cc90919063ffffffff16565b6008819055505050565b60008060008061324d606461323f888a612bde90919063ffffffff16565b612c5990919063ffffffff16565b905060006132776064613269888b612bde90919063ffffffff16565b612c5990919063ffffffff16565b905060006132a082613292858c61308290919063ffffffff16565b61308290919063ffffffff16565b905080838395509550955050505093509350939050565b6000806000806132d08589612bde90919063ffffffff16565b905060006132e78689612bde90919063ffffffff16565b905060006132fe8789612bde90919063ffffffff16565b9050600061332782613319858761308290919063ffffffff16565b61308290919063ffffffff16565b9050838184965096509650505050509450945094915050565b60008135905061334f8161432a565b92915050565b6000815190506133648161432a565b92915050565b60008135905061337981614341565b92915050565b60008135905061338e81614358565b92915050565b6000602082840312156133aa576133a9613edf565b5b60006133b884828501613340565b91505092915050565b6000602082840312156133d7576133d6613edf565b5b60006133e584828501613355565b91505092915050565b6000806040838503121561340557613404613edf565b5b600061341385828601613340565b925050602061342485828601613340565b9150509250929050565b60008060006060848603121561344757613446613edf565b5b600061345586828701613340565b935050602061346686828701613340565b92505060406134778682870161337f565b9150509250925092565b6000806040838503121561349857613497613edf565b5b60006134a685828601613340565b92505060206134b78582860161337f565b9150509250929050565b6000602082840312156134d7576134d6613edf565b5b60006134e58482850161336a565b91505092915050565b60006020828403121561350457613503613edf565b5b60006135128482850161337f565b91505092915050565b6000806040838503121561353257613531613edf565b5b60006135408582860161337f565b92505060206135518582860161337f565b9150509250929050565b60006135678383613573565b60208301905092915050565b61357c81613d53565b82525050565b61358b81613d53565b82525050565b600061359c82613bf9565b6135a68185613c1c565b93506135b183613be9565b8060005b838110156135e25781516135c9888261355b565b97506135d483613c0f565b9250506001810190506135b5565b5085935050505092915050565b6135f881613d65565b82525050565b61360781613da8565b82525050565b61361681613dba565b82525050565b600061362782613c04565b6136318185613c2d565b9350613641818560208601613df0565b61364a81613ee4565b840191505092915050565b6000613662602383613c2d565b915061366d82613ef5565b604082019050919050565b6000613685601883613c2d565b915061369082613f44565b602082019050919050565b60006136a8602a83613c2d565b91506136b382613f6d565b604082019050919050565b60006136cb601c83613c2d565b91506136d682613fbc565b602082019050919050565b60006136ee602683613c2d565b91506136f982613fe5565b604082019050919050565b6000613711602283613c2d565b915061371c82614034565b604082019050919050565b6000613734600f83613c2d565b915061373f82614083565b602082019050919050565b6000613757601b83613c2d565b9150613762826140ac565b602082019050919050565b600061377a603483613c2d565b9150613785826140d5565b604082019050919050565b600061379d602183613c2d565b91506137a882614124565b604082019050919050565b60006137c0602083613c2d565b91506137cb82614173565b602082019050919050565b60006137e3602983613c2d565b91506137ee8261419c565b604082019050919050565b6000613806602583613c2d565b9150613811826141eb565b604082019050919050565b6000613829602383613c2d565b91506138348261423a565b604082019050919050565b600061384c600d83613c2d565b915061385782614289565b602082019050919050565b600061386f602483613c2d565b915061387a826142b2565b604082019050919050565b6000613892600c83613c2d565b915061389d82614301565b602082019050919050565b6138b181613d91565b82525050565b6138c081613d9b565b82525050565b60006020820190506138db6000830184613582565b92915050565b60006020820190506138f660008301846135ef565b92915050565b600060208201905061391160008301846135fe565b92915050565b60006020820190508181036000830152613931818461361c565b905092915050565b6000602082019050818103600083015261395281613655565b9050919050565b6000602082019050818103600083015261397281613678565b9050919050565b600060208201905081810360008301526139928161369b565b9050919050565b600060208201905081810360008301526139b2816136be565b9050919050565b600060208201905081810360008301526139d2816136e1565b9050919050565b600060208201905081810360008301526139f281613704565b9050919050565b60006020820190508181036000830152613a1281613727565b9050919050565b60006020820190508181036000830152613a328161374a565b9050919050565b60006020820190508181036000830152613a528161376d565b9050919050565b60006020820190508181036000830152613a7281613790565b9050919050565b60006020820190508181036000830152613a92816137b3565b9050919050565b60006020820190508181036000830152613ab2816137d6565b9050919050565b60006020820190508181036000830152613ad2816137f9565b9050919050565b60006020820190508181036000830152613af28161381c565b9050919050565b60006020820190508181036000830152613b128161383f565b9050919050565b60006020820190508181036000830152613b3281613862565b9050919050565b60006020820190508181036000830152613b5281613885565b9050919050565b6000602082019050613b6e60008301846138a8565b92915050565b600060a082019050613b8960008301886138a8565b613b96602083018761360d565b8181036040830152613ba88186613591565b9050613bb76060830185613582565b613bc460808301846138a8565b9695505050505050565b6000602082019050613be360008301846138b7565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000613c4982613d91565b9150613c5483613d91565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613c8957613c88613e23565b5b828201905092915050565b6000613c9f82613d91565b9150613caa83613d91565b925082613cba57613cb9613e52565b5b828204905092915050565b6000613cd082613d91565b9150613cdb83613d91565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613d1457613d13613e23565b5b828202905092915050565b6000613d2a82613d91565b9150613d3583613d91565b925082821015613d4857613d47613e23565b5b828203905092915050565b6000613d5e82613d71565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000613db382613dcc565b9050919050565b6000613dc582613d91565b9050919050565b6000613dd782613dde565b9050919050565b6000613de982613d71565b9050919050565b60005b83811015613e0e578082015181840152602081019050613df3565b83811115613e1d576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f54726164696e67206e6f742079657420656e61626c6564210000000000000000600082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e7420746f6f206d7563680000000000000000000000000000000000600082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f4d6178696d756d207472616e73616374696f6e20616d6f756e74206d7573742060008201527f62652067726561746572207468616e20302e3125000000000000000000000000602082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a2042616c616e636520657863656564732077616c6c657420736960008201527f7a65210000000000000000000000000000000000000000000000000000000000602082015250565b7f53746f7020736e6970696e672100000000000000000000000000000000000000600082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f57726f6e6720616d6f756e740000000000000000000000000000000000000000600082015250565b61433381613d53565b811461433e57600080fd5b50565b61434a81613d65565b811461435557600080fd5b50565b61436181613d91565b811461436c57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122060fb3d5b69cc2eb206781f92e05df53a12e901d20748bb4770f8b36a49e071e564736f6c63430008070033

Deployed Bytecode

0x60806040526004361061021e5760003560e01c806374010ece1161012357806398a5c315116100ab578063dd62ed3e1161006f578063dd62ed3e146107a6578063e0f9f6a0146107e3578063ea1644d51461080c578063f2fde38b14610835578063fe72c3c11461085e57610225565b806398a5c315146106c55780639ec350ed146106ee5780639f13157114610717578063a9059cbb14610740578063c55284901461077d57610225565b8063881dce60116100f2578063881dce60146105f25780638da5cb5b1461061b5780638f70ccf7146106465780638f9a55c01461066f57806395d89b411461069a57610225565b806374010ece1461054857806375f0a87414610571578063790ca4131461059c5780637d1db4a5146105c757610225565b806338eea22d116101a65780636b9cf534116101755780636b9cf534146104895780636d8aa8f8146104b45780636fc3eaec146104dd57806370a08231146104f4578063715018a61461053157610225565b806338eea22d146103e35780633e3e95981461040c57806349bd5a5e146104355780634bf2c7c91461046057610225565b806318160ddd116101ed57806318160ddd146102fa57806323b872dd1461032557806327c8f835146103625780632fd689e31461038d578063313ce567146103b857610225565b806306fdde031461022a578063095ea7b3146102555780630f3a325f146102925780631694505e146102cf57610225565b3661022557005b600080fd5b34801561023657600080fd5b5061023f610889565b60405161024c9190613917565b60405180910390f35b34801561026157600080fd5b5061027c60048036038101906102779190613481565b6108c6565b60405161028991906138e1565b60405180910390f35b34801561029e57600080fd5b506102b960048036038101906102b49190613394565b6108e4565b6040516102c691906138e1565b60405180910390f35b3480156102db57600080fd5b506102e461093a565b6040516102f191906138fc565b60405180910390f35b34801561030657600080fd5b5061030f610960565b60405161031c9190613b59565b60405180910390f35b34801561033157600080fd5b5061034c6004803603810190610347919061342e565b610971565b60405161035991906138e1565b60405180910390f35b34801561036e57600080fd5b50610377610a4a565b60405161038491906138c6565b60405180910390f35b34801561039957600080fd5b506103a2610a50565b6040516103af9190613b59565b60405180910390f35b3480156103c457600080fd5b506103cd610a56565b6040516103da9190613bce565b60405180910390f35b3480156103ef57600080fd5b5061040a6004803603810190610405919061351b565b610a5f565b005b34801561041857600080fd5b50610433600480360381019061042e9190613394565b610b08565b005b34801561044157600080fd5b5061044a610c27565b60405161045791906138c6565b60405180910390f35b34801561046c57600080fd5b50610487600480360381019061048291906134ee565b610c4d565b005b34801561049557600080fd5b5061049e610cd3565b6040516104ab9190613b59565b60405180910390f35b3480156104c057600080fd5b506104db60048036038101906104d691906134c1565b610cd9565b005b3480156104e957600080fd5b506104f2610d8b565b005b34801561050057600080fd5b5061051b60048036038101906105169190613394565b610dfd565b6040516105289190613b59565b60405180910390f35b34801561053d57600080fd5b50610546610e4e565b005b34801561055457600080fd5b5061056f600480360381019061056a91906134ee565b610fa1565b005b34801561057d57600080fd5b50610586611057565b60405161059391906138c6565b60405180910390f35b3480156105a857600080fd5b506105b1611081565b6040516105be9190613b59565b60405180910390f35b3480156105d357600080fd5b506105dc611087565b6040516105e99190613b59565b60405180910390f35b3480156105fe57600080fd5b50610619600480360381019061061491906134ee565b61108d565b005b34801561062757600080fd5b50610630611151565b60405161063d91906138c6565b60405180910390f35b34801561065257600080fd5b5061066d600480360381019061066891906134c1565b61117a565b005b34801561067b57600080fd5b50610684611233565b6040516106919190613b59565b60405180910390f35b3480156106a657600080fd5b506106af611239565b6040516106bc9190613917565b60405180910390f35b3480156106d157600080fd5b506106ec60048036038101906106e791906134ee565b611276565b005b3480156106fa57600080fd5b506107156004803603810190610710919061351b565b6112e1565b005b34801561072357600080fd5b5061073e600480360381019061073991906134c1565b61138a565b005b34801561074c57600080fd5b5061076760048036038101906107629190613481565b611408565b60405161077491906138e1565b60405180910390f35b34801561078957600080fd5b506107a4600480360381019061079f919061351b565b611426565b005b3480156107b257600080fd5b506107cd60048036038101906107c891906133ee565b6114cf565b6040516107da9190613b59565b60405180910390f35b3480156107ef57600080fd5b5061080a600480360381019061080591906134ee565b611556565b005b34801561081857600080fd5b50610833600480360381019061082e91906134ee565b6115e9565b005b34801561084157600080fd5b5061085c60048036038101906108579190613394565b611654565b005b34801561086a57600080fd5b50610873611816565b6040516108809190613b59565b60405180910390f35b60606040518060400160405280600881526020017f4449434b454c4f4e000000000000000000000000000000000000000000000000815250905090565b60006108da6108d361181c565b8484611824565b6001905092915050565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000683635c9adc5dea00000905090565b600061097e8484846119ef565b610a3f8461098a61181c565b610a3a8560405180606001604052806028815260200161437060289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006109f061181c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128189092919063ffffffff16565b611824565b600190509392505050565b61dead81565b601f5481565b60006009905090565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610aa061181c565b73ffffffffffffffffffffffffffffffffffffffff1614610ac057600080fd5b60008210158015610ad25750601e8211155b610adb57600080fd5b60008110158015610aed5750601e8111155b610af657600080fd5b81600e81905550806010819055505050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b4961181c565b73ffffffffffffffffffffffffffffffffffffffff1614610b6957600080fd5b6001600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600a819080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c8e61181c565b73ffffffffffffffffffffffffffffffffffffffff1614610cae57600080fd5b60008110158015610cc05750601e8111155b610cc957600080fd5b8060148190555050565b60205481565b610ce161181c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6590613a79565b60405180910390fd5b80601c60166101000a81548160ff02191690831515021790555050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610dcc61181c565b73ffffffffffffffffffffffffffffffffffffffff1614610dec57600080fd5b6000479050610dfa8161287c565b50565b6000610e47600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128e8565b9050919050565b610e5661181c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ee3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eda90613a79565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610fe261181c565b73ffffffffffffffffffffffffffffffffffffffff161461100257600080fd5b670de0b6b3a764000081101561104d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104490613a39565b60405180910390fd5b80601d8190555050565b6000601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600b5481565b601d5481565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166110ce61181c565b73ffffffffffffffffffffffffffffffffffffffff16146110ee57600080fd5b6110f730610dfd565b81111580156111065750600081115b611145576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113c90613b39565b60405180910390fd5b61114e81612956565b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61118261181c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461120f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120690613a79565b60405180910390fd5b80601c60146101000a81548160ff02191690831515021790555042600b8190555050565b601e5481565b60606040518060400160405280600581526020017f4449434b45000000000000000000000000000000000000000000000000000000815250905090565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166112b761181c565b73ffffffffffffffffffffffffffffffffffffffff16146112d757600080fd5b80601f8190555050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661132261181c565b73ffffffffffffffffffffffffffffffffffffffff161461134257600080fd5b600082101580156113545750601e8211155b61135d57600080fd5b6000811015801561136f5750601e8111155b61137857600080fd5b81600c8190555080600d819055505050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166113cb61181c565b73ffffffffffffffffffffffffffffffffffffffff16146113eb57600080fd5b80601c60176101000a81548160ff02191690831515021790555050565b600061141c61141561181c565b84846119ef565b6001905092915050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661146761181c565b73ffffffffffffffffffffffffffffffffffffffff161461148757600080fd5b600082101580156114995750601e8211155b6114a257600080fd5b600081101580156114b45750601e8111155b6114bd57600080fd5b81600f81905550806011819055505050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661159761181c565b73ffffffffffffffffffffffffffffffffffffffff16146115b757600080fd5b600081101580156115c9575060c88111155b6115d257600080fd5b610e10816115e09190613cc5565b601a8190555050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661162a61181c565b73ffffffffffffffffffffffffffffffffffffffff161461164a57600080fd5b80601e8190555050565b61165c61181c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116e090613a79565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611759576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611750906139b9565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b601a5481565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611894576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188b90613b19565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611904576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118fb906139d9565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516119e29190613b59565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611a5f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5690613ab9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611acf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac690613939565b60405180910390fd5b60008111611b12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0990613a99565b60405180910390fd5b600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611b9f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9690613af9565b60405180910390fd5b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611c2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2390613af9565b60405180910390fd5b60096000611c3861181c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611cc0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb790613af9565b60405180910390fd5b611cc8611151565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611d365750611d06611151565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561235457601c60149054906101000a900460ff16611d8a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d8190613959565b60405180910390fd5b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16148015611e355750601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611fa2573073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614158015611ea257503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611efc5750601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611f565750601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611fa157601d54811115611fa0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f9790613999565b60405180910390fd5b5b5b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415801561204e5750601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561208657503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156120c0575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561218f57601e54816120d284610dfd565b6120dc9190613c3e565b1061211c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161211390613ad9565b60405180910390fd5b601c60179054906101000a900460ff161561218e57610708600b546121419190613c3e565b421161218d5760205481111561218c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612183906139f9565b60405180910390fd5b5b5b5b600061219a30610dfd565b90506000601f54821190508080156121bf5750601c60159054906101000a900460ff16155b80156122195750601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b80156122315750601c60169054906101000a900460ff165b80156122875750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156122dd5750600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561235157600080601454111561232257612316606461230860145486612bde90919063ffffffff16565b612c5990919063ffffffff16565b905061232181612ca3565b5b61233681846123319190613d1f565b612956565b6000479050600081111561234e5761234d4761287c565b5b50505b50505b600060019050600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806123fb5750600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806124ae5750601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156124ad5750601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b156124bc5760009050612806565b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156125675750601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156126895742600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600e54601281905550600f54601381905550600b54421415612688576001600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600a839080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b601c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156127345750601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15612805576000600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054141580156127d5575042601a54600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127d29190613c3e565b10155b156127f157600c54601281905550600d54601381905550612804565b6010546012819055506011546013819055505b5b5b61281284848484612cb3565b50505050565b6000838311158290612860576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128579190613917565b60405180910390fd5b506000838561286f9190613d1f565b9050809150509392505050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156128e4573d6000803e3d6000fd5b5050565b600060075482111561292f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161292690613979565b60405180910390fd5b6000612939612ce0565b905061294e8184612c5990919063ffffffff16565b915050919050565b6001601c60156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561298e5761298d613eb0565b5b6040519080825280602002602001820160405280156129bc5781602001602082028036833780820191505090505b50905030816000815181106129d4576129d3613e81565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015612a7657600080fd5b505afa158015612a8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aae91906133c1565b81600181518110612ac257612ac1613e81565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050612b2930601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611824565b601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612b8d959493929190613b74565b600060405180830381600087803b158015612ba757600080fd5b505af1158015612bbb573d6000803e3d6000fd5b50505050506000601c60156101000a81548160ff02191690831515021790555050565b600080831415612bf15760009050612c53565b60008284612bff9190613cc5565b9050828482612c0e9190613c94565b14612c4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c4590613a59565b60405180910390fd5b809150505b92915050565b6000612c9b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612d0b565b905092915050565b612cb03061dead836119ef565b50565b80612cc157612cc0612d6e565b5b612ccc848484612dd0565b80612cda57612cd9612f9b565b5b50505050565b6000806000612ced612fb8565b91509150612d048183612c5990919063ffffffff16565b9250505090565b60008083118290612d52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d499190613917565b60405180910390fd5b5060008385612d619190613c94565b9050809150509392505050565b6000601254148015612d8257506000601354145b8015612d9057506000601454145b15612d9a57612dce565b6012546015819055506013546016819055506014546017819055506000601281905550600060138190555060006014819055505b565b600080600080600080612de28761301a565b955095509550955095509550612e4086600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461308290919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612ed585600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130cc90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612f218161312a565b612f2b84836131e7565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051612f889190613b59565b60405180910390a3505050505050505050565b601554601281905550601654601381905550601754601481905550565b600080600060075490506000683635c9adc5dea000009050612fee683635c9adc5dea00000600754612c5990919063ffffffff16565b82101561300d57600754683635c9adc5dea00000935093505050613016565b81819350935050505b9091565b60008060008060008060008060006130378a601254601354613221565b9250925092506000613047612ce0565b9050600080600061305a8e8787876132b7565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b60006130c483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612818565b905092915050565b60008082846130db9190613c3e565b905083811015613120576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161311790613a19565b60405180910390fd5b8091505092915050565b6000613134612ce0565b9050600061314b8284612bde90919063ffffffff16565b905061319f81600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130cc90919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6131fc8260075461308290919063ffffffff16565b600781905550613217816008546130cc90919063ffffffff16565b6008819055505050565b60008060008061324d606461323f888a612bde90919063ffffffff16565b612c5990919063ffffffff16565b905060006132776064613269888b612bde90919063ffffffff16565b612c5990919063ffffffff16565b905060006132a082613292858c61308290919063ffffffff16565b61308290919063ffffffff16565b905080838395509550955050505093509350939050565b6000806000806132d08589612bde90919063ffffffff16565b905060006132e78689612bde90919063ffffffff16565b905060006132fe8789612bde90919063ffffffff16565b9050600061332782613319858761308290919063ffffffff16565b61308290919063ffffffff16565b9050838184965096509650505050509450945094915050565b60008135905061334f8161432a565b92915050565b6000815190506133648161432a565b92915050565b60008135905061337981614341565b92915050565b60008135905061338e81614358565b92915050565b6000602082840312156133aa576133a9613edf565b5b60006133b884828501613340565b91505092915050565b6000602082840312156133d7576133d6613edf565b5b60006133e584828501613355565b91505092915050565b6000806040838503121561340557613404613edf565b5b600061341385828601613340565b925050602061342485828601613340565b9150509250929050565b60008060006060848603121561344757613446613edf565b5b600061345586828701613340565b935050602061346686828701613340565b92505060406134778682870161337f565b9150509250925092565b6000806040838503121561349857613497613edf565b5b60006134a685828601613340565b92505060206134b78582860161337f565b9150509250929050565b6000602082840312156134d7576134d6613edf565b5b60006134e58482850161336a565b91505092915050565b60006020828403121561350457613503613edf565b5b60006135128482850161337f565b91505092915050565b6000806040838503121561353257613531613edf565b5b60006135408582860161337f565b92505060206135518582860161337f565b9150509250929050565b60006135678383613573565b60208301905092915050565b61357c81613d53565b82525050565b61358b81613d53565b82525050565b600061359c82613bf9565b6135a68185613c1c565b93506135b183613be9565b8060005b838110156135e25781516135c9888261355b565b97506135d483613c0f565b9250506001810190506135b5565b5085935050505092915050565b6135f881613d65565b82525050565b61360781613da8565b82525050565b61361681613dba565b82525050565b600061362782613c04565b6136318185613c2d565b9350613641818560208601613df0565b61364a81613ee4565b840191505092915050565b6000613662602383613c2d565b915061366d82613ef5565b604082019050919050565b6000613685601883613c2d565b915061369082613f44565b602082019050919050565b60006136a8602a83613c2d565b91506136b382613f6d565b604082019050919050565b60006136cb601c83613c2d565b91506136d682613fbc565b602082019050919050565b60006136ee602683613c2d565b91506136f982613fe5565b604082019050919050565b6000613711602283613c2d565b915061371c82614034565b604082019050919050565b6000613734600f83613c2d565b915061373f82614083565b602082019050919050565b6000613757601b83613c2d565b9150613762826140ac565b602082019050919050565b600061377a603483613c2d565b9150613785826140d5565b604082019050919050565b600061379d602183613c2d565b91506137a882614124565b604082019050919050565b60006137c0602083613c2d565b91506137cb82614173565b602082019050919050565b60006137e3602983613c2d565b91506137ee8261419c565b604082019050919050565b6000613806602583613c2d565b9150613811826141eb565b604082019050919050565b6000613829602383613c2d565b91506138348261423a565b604082019050919050565b600061384c600d83613c2d565b915061385782614289565b602082019050919050565b600061386f602483613c2d565b915061387a826142b2565b604082019050919050565b6000613892600c83613c2d565b915061389d82614301565b602082019050919050565b6138b181613d91565b82525050565b6138c081613d9b565b82525050565b60006020820190506138db6000830184613582565b92915050565b60006020820190506138f660008301846135ef565b92915050565b600060208201905061391160008301846135fe565b92915050565b60006020820190508181036000830152613931818461361c565b905092915050565b6000602082019050818103600083015261395281613655565b9050919050565b6000602082019050818103600083015261397281613678565b9050919050565b600060208201905081810360008301526139928161369b565b9050919050565b600060208201905081810360008301526139b2816136be565b9050919050565b600060208201905081810360008301526139d2816136e1565b9050919050565b600060208201905081810360008301526139f281613704565b9050919050565b60006020820190508181036000830152613a1281613727565b9050919050565b60006020820190508181036000830152613a328161374a565b9050919050565b60006020820190508181036000830152613a528161376d565b9050919050565b60006020820190508181036000830152613a7281613790565b9050919050565b60006020820190508181036000830152613a92816137b3565b9050919050565b60006020820190508181036000830152613ab2816137d6565b9050919050565b60006020820190508181036000830152613ad2816137f9565b9050919050565b60006020820190508181036000830152613af28161381c565b9050919050565b60006020820190508181036000830152613b128161383f565b9050919050565b60006020820190508181036000830152613b3281613862565b9050919050565b60006020820190508181036000830152613b5281613885565b9050919050565b6000602082019050613b6e60008301846138a8565b92915050565b600060a082019050613b8960008301886138a8565b613b96602083018761360d565b8181036040830152613ba88186613591565b9050613bb76060830185613582565b613bc460808301846138a8565b9695505050505050565b6000602082019050613be360008301846138b7565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000613c4982613d91565b9150613c5483613d91565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613c8957613c88613e23565b5b828201905092915050565b6000613c9f82613d91565b9150613caa83613d91565b925082613cba57613cb9613e52565b5b828204905092915050565b6000613cd082613d91565b9150613cdb83613d91565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613d1457613d13613e23565b5b828202905092915050565b6000613d2a82613d91565b9150613d3583613d91565b925082821015613d4857613d47613e23565b5b828203905092915050565b6000613d5e82613d71565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000613db382613dcc565b9050919050565b6000613dc582613d91565b9050919050565b6000613dd782613dde565b9050919050565b6000613de982613d71565b9050919050565b60005b83811015613e0e578082015181840152602081019050613df3565b83811115613e1d576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f54726164696e67206e6f742079657420656e61626c6564210000000000000000600082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e7420746f6f206d7563680000000000000000000000000000000000600082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f4d6178696d756d207472616e73616374696f6e20616d6f756e74206d7573742060008201527f62652067726561746572207468616e20302e3125000000000000000000000000602082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a2042616c616e636520657863656564732077616c6c657420736960008201527f7a65210000000000000000000000000000000000000000000000000000000000602082015250565b7f53746f7020736e6970696e672100000000000000000000000000000000000000600082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f57726f6e6720616d6f756e740000000000000000000000000000000000000000600082015250565b61433381613d53565b811461433e57600080fd5b50565b61434a81613d65565b811461435557600080fd5b50565b61436181613d91565b811461436c57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122060fb3d5b69cc2eb206781f92e05df53a12e901d20748bb4770f8b36a49e071e564736f6c63430008070033

Deployed Bytecode Sourcemap

5271:17030:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8313:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9346:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16589:105;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7020:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8590:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9547:446;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6890:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7386:49;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8499:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21962:336;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;16400:181;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7068:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21557:181;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7443:46;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20326:101;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;16702:196;;;;;;;;;;;;;:::i;:::-;;8693:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2750:148;;;;;;;;;;;;;:::i;:::-;;20439:255;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8839:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6073:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7262:42;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16167:225;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2536:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15839:140;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7330:44;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8404:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15540:184;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;21190:355;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15987:172;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8947:199;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20874:308;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9154:184;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21747:207;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;20706:160;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2910:244;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6979:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8313:83;8350:13;8383:5;;;;;;;;;;;;;;;;;8376:12;;8313:83;:::o;9346:193::-;9448:4;9470:39;9479:12;:10;:12::i;:::-;9493:7;9502:6;9470:8;:39::i;:::-;9527:4;9520:11;;9346:193;;;;:::o;16589:105::-;16646:4;16669:9;:17;16679:6;16669:17;;;;;;;;;;;;;;;;;;;;;;;;;16662:24;;16589:105;;;:::o;7020:41::-;;;;;;;;;;;;;:::o;8590:95::-;8643:7;5874:12;8663:14;;8590:95;:::o;9547:446::-;9679:4;9696:36;9706:6;9714:9;9725:6;9696:9;:36::i;:::-;9743:220;9766:6;9787:12;:10;:12::i;:::-;9814:138;9870:6;9814:138;;;;;;;;;;;;;;;;;:11;:19;9826:6;9814:19;;;;;;;;;;;;;;;:33;9834:12;:10;:12::i;:::-;9814:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;9743:8;:220::i;:::-;9981:4;9974:11;;9547:446;;;;;:::o;6890:80::-;6928:42;6890:80;:::o;7386:49::-;;;;:::o;8499:83::-;8540:5;5497:1;8558:16;;8499:83;:::o;21962:336::-;22070:17;;;;;;;;;;;22054:33;;:12;:10;:12::i;:::-;:33;;;22046:42;;;;;;22123:1;22107:12;:17;;:39;;;;;22144:2;22128:12;:18;;22107:39;22099:48;;;;;;22183:1;22166:13;:18;;:41;;;;;22205:2;22188:13;:19;;22166:41;22158:50;;;;;;22236:12;22219:14;:29;;;;22277:13;22259:15;:31;;;;21962:336;;:::o;16400:181::-;16479:17;;;;;;;;;;;16463:33;;:12;:10;:12::i;:::-;:33;;;16455:42;;;;;;16528:4;16508:9;:17;16518:6;16508:17;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;16543:17;16566:6;16543:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16400:181;:::o;7068:28::-;;;;;;;;;;;;;:::o;21557:181::-;21637:17;;;;;;;;;;;21621:33;;:12;:10;:12::i;:::-;:33;;;21613:42;;;;;;21684:1;21674:6;:11;;:27;;;;;21699:2;21689:6;:12;;21674:27;21666:36;;;;;;21724:6;21713:8;:17;;;;21557:181;:::o;7443:46::-;;;;:::o;20326:101::-;2673:12;:10;:12::i;:::-;2663:22;;:6;;;;;;;;;;:22;;;2655:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;20407:12:::1;20393:11;;:26;;;;;;;;;;;;;;;;;;20326:101:::0;:::o;16702:196::-;16768:17;;;;;;;;;;;16752:33;;:12;:10;:12::i;:::-;:33;;;16744:42;;;;;;16797:26;16826:21;16797:50;;16858:32;16871:18;16858:12;:32::i;:::-;16733:165;16702:196::o;8693:138::-;8759:7;8786:37;8806:7;:16;8814:7;8806:16;;;;;;;;;;;;;;;;8786:19;:37::i;:::-;8779:44;;8693:138;;;:::o;2750:148::-;2673:12;:10;:12::i;:::-;2663:22;;:6;;;;;;;;;;:22;;;2655:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2857:1:::1;2820:40;;2841:6;::::0;::::1;;;;;;;;2820:40;;;;;;;;;;;;2888:1;2871:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2750:148::o:0;20439:255::-;20529:17;;;;;;;;;;;20513:33;;:12;:10;:12::i;:::-;:33;;;20505:42;;;;;;20581:11;20566;:26;;20558:91;;;;;;;;;;;;:::i;:::-;;;;;;;;;20675:11;20660:12;:26;;;;20439:255;:::o;8839:100::-;8887:7;8914:17;;;;;;;;;;;8907:24;;8839:100;:::o;6073:25::-;;;;:::o;7262:42::-;;;;:::o;16167:225::-;16247:17;;;;;;;;;;;16231:33;;:12;:10;:12::i;:::-;:33;;;16223:42;;;;;;16294:24;16312:4;16294:9;:24::i;:::-;16284:6;:34;;:48;;;;;16331:1;16322:6;:10;16284:48;16276:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;16360:24;16377:6;16360:16;:24::i;:::-;16167:225;:::o;2536:79::-;2574:7;2601:6;;;;;;;;;;;2594:13;;2536:79;:::o;15839:140::-;2673:12;:10;:12::i;:::-;2663:22;;:6;;;;;;;;;;:22;;;2655:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15920:12:::1;15906:11;;:26;;;;;;;;;;;;;;;;;;15956:15;15943:10;:28;;;;15839:140:::0;:::o;7330:44::-;;;;:::o;8404:87::-;8443:13;8476:7;;;;;;;;;;;;;;;;;8469:14;;8404:87;:::o;15540:184::-;15647:17;;;;;;;;;;;15631:33;;:12;:10;:12::i;:::-;:33;;;15623:42;;;;;;15698:18;15676:19;:40;;;;15540:184;:::o;21190:355::-;21305:17;;;;;;;;;;;21289:33;;:12;:10;:12::i;:::-;:33;;;21281:42;;;;;;21362:1;21342:16;:21;;:47;;;;;21387:2;21367:16;:22;;21342:47;21334:56;;;;;;21427:1;21409:14;:19;;:43;;;;;21450:2;21432:14;:20;;21409:43;21401:52;;;;;;21481:16;21464:14;:33;;;;21523:14;21508:12;:29;;;;21190:355;;:::o;15987:172::-;16084:17;;;;;;;;;;;16068:33;;:12;:10;:12::i;:::-;:33;;;16060:42;;;;;;16133:18;16113:17;;:38;;;;;;;;;;;;;;;;;;15987:172;:::o;8947:199::-;9052:4;9074:42;9084:12;:10;:12::i;:::-;9098:9;9109:6;9074:9;:42::i;:::-;9134:4;9127:11;;8947:199;;;;:::o;20874:308::-;20976:17;;;;;;;;;;;20960:33;;:12;:10;:12::i;:::-;:33;;;20952:42;;;;;;21026:1;21013:9;:14;;:33;;;;;21044:2;21031:9;:15;;21013:33;21005:42;;;;;;21080:1;21066:10;:15;;:35;;;;;21099:2;21085:10;:16;;21066:35;21058:44;;;;;;21128:9;21113:12;:24;;;;21164:10;21148:13;:26;;;;20874:308;;:::o;9154:184::-;9271:7;9303:11;:18;9315:5;9303:18;;;;;;;;;;;;;;;:27;9322:7;9303:27;;;;;;;;;;;;;;;;9296:34;;9154:184;;;;:::o;21747:207::-;21832:17;;;;;;;;;;;21816:33;;:12;:10;:12::i;:::-;:33;;;21808:42;;;;;;21882:1;21869:9;:14;;:34;;;;;21900:3;21887:9;:16;;21869:34;21861:43;;;;;;21939:7;21927:9;:19;;;;:::i;:::-;21915:9;:31;;;;21747:207;:::o;20706:160::-;20799:17;;;;;;;;;;;20783:33;;:12;:10;:12::i;:::-;:33;;;20775:42;;;;;;20845:13;20828:14;:30;;;;20706:160;:::o;2910:244::-;2673:12;:10;:12::i;:::-;2663:22;;:6;;;;;;;;;;:22;;;2655:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3019:1:::1;2999:22;;:8;:22;;;;2991:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;3109:8;3080:38;;3101:6;::::0;::::1;;;;;;;;3080:38;;;;;;;;;;;;3138:8;3129:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;2910:244:::0;:::o;6979:34::-;;;;:::o;1295:98::-;1348:7;1375:10;1368:17;;1295:98;:::o;10812:369::-;10956:1;10939:19;;:5;:19;;;;10931:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;11037:1;11018:21;;:7;:21;;;;11010:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;11119:6;11089:11;:18;11101:5;11089:18;;;;;;;;;;;;;;;:27;11108:7;11089:27;;;;;;;;;;;;;;;:36;;;;11157:7;11141:32;;11150:5;11141:32;;;11166:6;11141:32;;;;;;:::i;:::-;;;;;;;;10812:369;;;:::o;11189:3677::-;11327:1;11311:18;;:4;:18;;;;11303:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;11404:1;11390:16;;:2;:16;;;;11382:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;11474:1;11465:6;:10;11457:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;11541:9;:13;11551:2;11541:13;;;;;;;;;;;;;;;;;;;;;;;;;11540:14;11532:40;;;;;;;;;;;;:::i;:::-;;;;;;;;;11592:9;:15;11602:4;11592:15;;;;;;;;;;;;;;;;;;;;;;;;;11591:16;11583:42;;;;;;;;;;;;:::i;:::-;;;;;;;;;11645:9;:23;11655:12;:10;:12::i;:::-;11645:23;;;;;;;;;;;;;;;;;;;;;;;;;11644:24;11636:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;11711:7;:5;:7::i;:::-;11703:15;;:4;:15;;;;:32;;;;;11728:7;:5;:7::i;:::-;11722:13;;:2;:13;;;;11703:32;11699:1815;;;11805:11;;;;;;;;;;;11800:87;;11837:34;;;;;;;;;;:::i;:::-;;;;;;;;11800:87;11925:13;;;;;;;;;;;11919:19;;:2;:19;;;:55;;;;;11958:15;;;;;;;;;;;11942:32;;:4;:32;;;;11919:55;11915:307;;;12013:4;11999:19;;:2;:19;;;;:44;;;;;12038:4;12022:21;;:4;:21;;;;11999:44;:71;;;;;12053:17;;;;;;;;;;;12047:23;;:2;:23;;;;11999:71;:100;;;;;12082:17;;;;;;;;;;;12074:25;;:4;:25;;;;11999:100;11995:212;;;12142:12;;12132:6;:22;;12124:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;11995:212;11915:307;12248:13;;;;;;;;;;;12242:19;;:2;:19;;;;:46;;;;;12271:17;;;;;;;;;;;12265:23;;:2;:23;;;;12242:46;:69;;;;;12306:4;12292:19;;:2;:19;;;;12242:69;:90;;;;;6928:42;12315:17;;:2;:17;;;;12242:90;12238:455;;;12386:14;;12377:6;12361:13;12371:2;12361:9;:13::i;:::-;:22;;;;:::i;:::-;:39;12353:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;12463:17;;;;;;;;;;;12459:219;;;12541:10;12528;;:23;;;;:::i;:::-;12509:15;:42;12505:154;;12598:17;;12588:6;:27;;12580:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;12505:154;12459:219;12238:455;12721:28;12752:24;12770:4;12752:9;:24::i;:::-;12721:55;;12791:12;12829:19;;12806:20;:42;12791:57;;12881:7;:18;;;;;12893:6;;;;;;;;;;;12892:7;12881:18;:43;;;;;12911:13;;;;;;;;;;;12903:21;;:4;:21;;;;12881:43;:58;;;;;12928:11;;;;;;;;;;;12881:58;:87;;;;;12944:18;:24;12963:4;12944:24;;;;;;;;;;;;;;;;;;;;;;;;;12943:25;12881:87;:114;;;;;12973:18;:22;12992:2;12973:22;;;;;;;;;;;;;;;;;;;;;;;;;12972:23;12881:114;12877:626;;;13016:19;13073:1;13062:8;;:12;13058:166;;;13113:45;13152:5;13113:34;13138:8;;13113:20;:24;;:34;;;;:::i;:::-;:38;;:45;;;;:::i;:::-;13099:59;;13181:23;13192:11;13181:10;:23::i;:::-;13058:166;13242:52;13282:11;13259:20;:34;;;;:::i;:::-;13242:16;:52::i;:::-;13313:26;13342:21;13313:50;;13407:1;13386:18;:22;13382:106;;;13433:35;13446:21;13433:12;:35::i;:::-;13382:106;12997:506;;12877:626;11737:1777;;11699:1815;13534:12;13549:4;13534:19;;13599:18;:24;13618:4;13599:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;13627:18;:22;13646:2;13627:22;;;;;;;;;;;;;;;;;;;;;;;;;13599:50;13598:102;;;;13663:13;;;;;;;;;;;13655:21;;:4;:21;;;;:44;;;;;13686:13;;;;;;;;;;;13680:19;;:2;:19;;;;13655:44;13598:102;13594:1211;;;13727:5;13717:15;;13594:1211;;;13809:13;;;;;;;;;;;13801:21;;:4;:21;;;:55;;;;;13840:15;;;;;;;;;;;13826:30;;:2;:30;;;;13801:55;13798:435;;;13895:15;13881:7;:11;13889:2;13881:11;;;;;;;;;;;;;;;:29;;;;13945:14;;13933:9;:26;;;;13992:12;;13982:7;:22;;;;14082:10;;14063:15;:29;14059:159;;;14137:4;14121:9;:13;14131:2;14121:13;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;14168:17;14191:2;14168:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14059:159;13798:435;14399:13;;;;;;;;;;;14393:19;;:2;:19;;;:55;;;;;14432:15;;;;;;;;;;;14416:32;;:4;:32;;;;14393:55;14389:405;;;14490:1;14473:7;:13;14481:4;14473:13;;;;;;;;;;;;;;;;:18;;:68;;;;;14525:15;14512:9;;14496:7;:13;14504:4;14496:13;;;;;;;;;;;;;;;;:25;;;;:::i;:::-;:44;;14473:68;14469:310;;;14578:14;;14566:9;:26;;;;14625:12;;14615:7;:22;;;;14469:310;;;14698:15;;14686:9;:27;;;;14746:13;;14736:7;:23;;;;14469:310;14389:405;13594:1211;14817:41;14832:4;14838:2;14842:6;14850:7;14817:14;:41::i;:::-;11292:3574;11189:3677;;;:::o;3522:224::-;3642:7;3675:1;3670;:6;;3678:12;3662:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3702:9;3718:1;3714;:5;;;;:::i;:::-;3702:17;;3737:1;3730:8;;;3522:224;;;;;:::o;15732:99::-;15789:17;;;;;;;;;;;:26;;:34;15816:6;15789:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15732:99;:::o;10001:323::-;10096:7;10154;;10143;:18;;10121:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;10242:19;10264:10;:8;:10::i;:::-;10242:32;;10292:24;10304:11;10292:7;:11;;:24;;;;:::i;:::-;10285:31;;;10001:323;;;:::o;15000:483::-;7600:4;7591:6;;:13;;;;;;;;;;;;;;;;;;15078:21:::1;15116:1;15102:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15078:40;;15147:4;15129;15134:1;15129:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;15173:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15163:4;15168:1;15163:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;15206:62;15223:4;15238:15;;;;;;;;;;;15256:11;15206:8;:62::i;:::-;15279:15;;;;;;;;;;;:66;;;15360:11;15386:1;15402:4;15429;15449:15;15279:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;15067:416;7636:5:::0;7627:6;;:14;;;;;;;;;;;;;;;;;;15000:483;:::o;3754:246::-;3812:7;3841:1;3836;:6;3832:47;;;3866:1;3859:8;;;;3832:47;3889:9;3905:1;3901;:5;;;;:::i;:::-;3889:17;;3934:1;3929;3925;:5;;;;:::i;:::-;:10;3917:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;3991:1;3984:8;;;3754:246;;;;;:::o;4008:132::-;4066:7;4093:39;4097:1;4100;4093:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;4086:46;;4008:132;;;;:::o;14874:118::-;14934:50;14952:4;6928:42;14972:11;14934:9;:50::i;:::-;14874:118;:::o;16906:282::-;17062:7;17057:28;;17071:14;:12;:14::i;:::-;17057:28;17096:44;17114:6;17122:9;17133:6;17096:17;:44::i;:::-;17156:7;17151:29;;17165:15;:13;:15::i;:::-;17151:29;16906:282;;;;:::o;19881:166::-;19923:7;19944:15;19961;19980:19;:17;:19::i;:::-;19943:56;;;;20019:20;20031:7;20019;:11;;:20;;;;:::i;:::-;20012:27;;;;19881:166;:::o;4148:223::-;4268:7;4300:1;4296;:5;4303:12;4288:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;4327:9;4343:1;4339;:5;;;;:::i;:::-;4327:17;;4362:1;4355:8;;;4148:223;;;;;:::o;10332:309::-;10392:1;10379:9;;:14;:30;;;;;10408:1;10397:7;;:12;10379:30;:47;;;;;10425:1;10413:8;;:13;10379:47;10375:60;;;10428:7;;10375:60;10471:9;;10451:17;:29;;;;10509:7;;10491:15;:25;;;;10546:8;;10527:16;:27;;;;10587:1;10575:9;:13;;;;10609:1;10599:7;:11;;;;10632:1;10621:8;:12;;;;10332:309;:::o;17196:610::-;17343:15;17373:23;17411:12;17438:23;17476:12;17503:13;17530:19;17541:7;17530:10;:19::i;:::-;17328:221;;;;;;;;;;;;17578:28;17598:7;17578;:15;17586:6;17578:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;17560:7;:15;17568:6;17560:15;;;;;;;;;;;;;;;:46;;;;17638:39;17661:15;17638:7;:18;17646:9;17638:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;17617:7;:18;17625:9;17617:18;;;;;;;;;;;;;;;:60;;;;17688:16;17698:5;17688:9;:16::i;:::-;17715:23;17727:4;17733;17715:11;:23::i;:::-;17771:9;17754:44;;17763:6;17754:44;;;17782:15;17754:44;;;;;;:::i;:::-;;;;;;;;17317:489;;;;;;17196:610;;;:::o;10649:155::-;10705:17;;10693:9;:29;;;;10743:15;;10733:7;:25;;;;10780:16;;10769:8;:27;;;;10649:155::o;20055:263::-;20106:7;20115;20135:15;20153:7;;20135:25;;20171:15;5874:12;20171:25;;20221:20;5874:12;20221:7;;:11;;:20;;;;:::i;:::-;20211:7;:30;20207:61;;;20251:7;;5874:12;20243:25;;;;;;;;20207:61;20293:7;20302;20285:25;;;;;;20055:263;;;:::o;18225:625::-;18325:7;18347;18369;18391;18413;18435;18471:23;18496:12;18510:13;18540:40;18552:7;18561:9;;18572:7;;18540:11;:40::i;:::-;18470:110;;;;;;18591:19;18613:10;:8;:10::i;:::-;18591:32;;18635:15;18652:23;18677:12;18706:46;18718:7;18727:4;18733:5;18740:11;18706;:46::i;:::-;18634:118;;;;;;18781:7;18790:15;18807:4;18813:15;18830:4;18836:5;18773:69;;;;;;;;;;;;;;;;;;;18225:625;;;;;;;:::o;3378:136::-;3436:7;3463:43;3467:1;3470;3463:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;3456:50;;3378:136;;;;:::o;3191:179::-;3249:7;3269:9;3285:1;3281;:5;;;;:::i;:::-;3269:17;;3310:1;3305;:6;;3297:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;3361:1;3354:8;;;3191:179;;;;:::o;17814:211::-;17867:19;17889:10;:8;:10::i;:::-;17867:32;;17910:13;17926:22;17936:11;17926:5;:9;;:22;;;;:::i;:::-;17910:38;;17984:33;18011:5;17984:7;:22;18000:4;17984:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;17959:7;:22;17975:4;17959:22;;;;;;;;;;;;;;;:58;;;;17856:169;;17814:211;:::o;18033:147::-;18111:17;18123:4;18111:7;;:11;;:17;;;;:::i;:::-;18101:7;:27;;;;18152:20;18167:4;18152:10;;:14;;:20;;;;:::i;:::-;18139:10;:33;;;;18033:147;;:::o;18858:471::-;19027:7;19049;19071;19106:12;19121:30;19147:3;19121:21;19133:8;19121:7;:11;;:21;;;;:::i;:::-;:25;;:30;;;;:::i;:::-;19106:45;;19162:13;19178:28;19202:3;19178:19;19190:6;19178:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;19162:44;;19217:23;19243:28;19265:5;19243:17;19255:4;19243:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;19217:54;;19292:15;19309:4;19315:5;19284:37;;;;;;;;;18858:471;;;;;;;:::o;19337:536::-;19531:7;19553;19575;19610:15;19628:24;19640:11;19628:7;:11;;:24;;;;:::i;:::-;19610:42;;19663:12;19678:21;19687:11;19678:4;:8;;:21;;;;:::i;:::-;19663:36;;19710:13;19726:22;19736:11;19726:5;:9;;:22;;;;:::i;:::-;19710:38;;19759:23;19785:28;19807:5;19785:17;19797:4;19785:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;19759:54;;19834:7;19843:15;19860:4;19826:39;;;;;;;;;;19337:536;;;;;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:143::-;209:5;240:6;234:13;225:22;;256:33;283:5;256:33;:::i;:::-;152:143;;;;:::o;301:133::-;344:5;382:6;369:20;360:29;;398:30;422:5;398:30;:::i;:::-;301:133;;;;:::o;440:139::-;486:5;524:6;511:20;502:29;;540:33;567:5;540:33;:::i;:::-;440:139;;;;:::o;585:329::-;644:6;693:2;681:9;672:7;668:23;664:32;661:119;;;699:79;;:::i;:::-;661:119;819:1;844:53;889:7;880:6;869:9;865:22;844:53;:::i;:::-;834:63;;790:117;585:329;;;;:::o;920:351::-;990:6;1039:2;1027:9;1018:7;1014:23;1010:32;1007:119;;;1045:79;;:::i;:::-;1007:119;1165:1;1190:64;1246:7;1237:6;1226:9;1222:22;1190:64;:::i;:::-;1180:74;;1136:128;920:351;;;;:::o;1277:474::-;1345:6;1353;1402:2;1390:9;1381:7;1377:23;1373:32;1370:119;;;1408:79;;:::i;:::-;1370:119;1528:1;1553:53;1598:7;1589:6;1578:9;1574:22;1553:53;:::i;:::-;1543:63;;1499:117;1655:2;1681:53;1726:7;1717:6;1706:9;1702:22;1681:53;:::i;:::-;1671:63;;1626:118;1277:474;;;;;:::o;1757:619::-;1834:6;1842;1850;1899:2;1887:9;1878:7;1874:23;1870:32;1867:119;;;1905:79;;:::i;:::-;1867:119;2025:1;2050:53;2095:7;2086:6;2075:9;2071:22;2050:53;:::i;:::-;2040:63;;1996:117;2152:2;2178:53;2223:7;2214:6;2203:9;2199:22;2178:53;:::i;:::-;2168:63;;2123:118;2280:2;2306:53;2351:7;2342:6;2331:9;2327:22;2306:53;:::i;:::-;2296:63;;2251:118;1757:619;;;;;:::o;2382:474::-;2450:6;2458;2507:2;2495:9;2486:7;2482:23;2478:32;2475:119;;;2513:79;;:::i;:::-;2475:119;2633:1;2658:53;2703:7;2694:6;2683:9;2679:22;2658:53;:::i;:::-;2648:63;;2604:117;2760:2;2786:53;2831:7;2822:6;2811:9;2807:22;2786:53;:::i;:::-;2776:63;;2731:118;2382:474;;;;;:::o;2862:323::-;2918:6;2967:2;2955:9;2946:7;2942:23;2938:32;2935:119;;;2973:79;;:::i;:::-;2935:119;3093:1;3118:50;3160:7;3151:6;3140:9;3136:22;3118:50;:::i;:::-;3108:60;;3064:114;2862:323;;;;:::o;3191:329::-;3250:6;3299:2;3287:9;3278:7;3274:23;3270:32;3267:119;;;3305:79;;:::i;:::-;3267:119;3425:1;3450:53;3495:7;3486:6;3475:9;3471:22;3450:53;:::i;:::-;3440:63;;3396:117;3191:329;;;;:::o;3526:474::-;3594:6;3602;3651:2;3639:9;3630:7;3626:23;3622:32;3619:119;;;3657:79;;:::i;:::-;3619:119;3777:1;3802:53;3847:7;3838:6;3827:9;3823:22;3802:53;:::i;:::-;3792:63;;3748:117;3904:2;3930:53;3975:7;3966:6;3955:9;3951:22;3930:53;:::i;:::-;3920:63;;3875:118;3526:474;;;;;:::o;4006:179::-;4075:10;4096:46;4138:3;4130:6;4096:46;:::i;:::-;4174:4;4169:3;4165:14;4151:28;;4006:179;;;;:::o;4191:108::-;4268:24;4286:5;4268:24;:::i;:::-;4263:3;4256:37;4191:108;;:::o;4305:118::-;4392:24;4410:5;4392:24;:::i;:::-;4387:3;4380:37;4305:118;;:::o;4459:732::-;4578:3;4607:54;4655:5;4607:54;:::i;:::-;4677:86;4756:6;4751:3;4677:86;:::i;:::-;4670:93;;4787:56;4837:5;4787:56;:::i;:::-;4866:7;4897:1;4882:284;4907:6;4904:1;4901:13;4882:284;;;4983:6;4977:13;5010:63;5069:3;5054:13;5010:63;:::i;:::-;5003:70;;5096:60;5149:6;5096:60;:::i;:::-;5086:70;;4942:224;4929:1;4926;4922:9;4917:14;;4882:284;;;4886:14;5182:3;5175:10;;4583:608;;;4459:732;;;;:::o;5197:109::-;5278:21;5293:5;5278:21;:::i;:::-;5273:3;5266:34;5197:109;;:::o;5312:183::-;5425:63;5482:5;5425:63;:::i;:::-;5420:3;5413:76;5312:183;;:::o;5501:147::-;5596:45;5635:5;5596:45;:::i;:::-;5591:3;5584:58;5501:147;;:::o;5654:364::-;5742:3;5770:39;5803:5;5770:39;:::i;:::-;5825:71;5889:6;5884:3;5825:71;:::i;:::-;5818:78;;5905:52;5950:6;5945:3;5938:4;5931:5;5927:16;5905:52;:::i;:::-;5982:29;6004:6;5982:29;:::i;:::-;5977:3;5973:39;5966:46;;5746:272;5654:364;;;;:::o;6024:366::-;6166:3;6187:67;6251:2;6246:3;6187:67;:::i;:::-;6180:74;;6263:93;6352:3;6263:93;:::i;:::-;6381:2;6376:3;6372:12;6365:19;;6024:366;;;:::o;6396:::-;6538:3;6559:67;6623:2;6618:3;6559:67;:::i;:::-;6552:74;;6635:93;6724:3;6635:93;:::i;:::-;6753:2;6748:3;6744:12;6737:19;;6396:366;;;:::o;6768:::-;6910:3;6931:67;6995:2;6990:3;6931:67;:::i;:::-;6924:74;;7007:93;7096:3;7007:93;:::i;:::-;7125:2;7120:3;7116:12;7109:19;;6768:366;;;:::o;7140:::-;7282:3;7303:67;7367:2;7362:3;7303:67;:::i;:::-;7296:74;;7379:93;7468:3;7379:93;:::i;:::-;7497:2;7492:3;7488:12;7481:19;;7140:366;;;:::o;7512:::-;7654:3;7675:67;7739:2;7734:3;7675:67;:::i;:::-;7668:74;;7751:93;7840:3;7751:93;:::i;:::-;7869:2;7864:3;7860:12;7853:19;;7512:366;;;:::o;7884:::-;8026:3;8047:67;8111:2;8106:3;8047:67;:::i;:::-;8040:74;;8123:93;8212:3;8123:93;:::i;:::-;8241:2;8236:3;8232:12;8225:19;;7884:366;;;:::o;8256:::-;8398:3;8419:67;8483:2;8478:3;8419:67;:::i;:::-;8412:74;;8495:93;8584:3;8495:93;:::i;:::-;8613:2;8608:3;8604:12;8597:19;;8256:366;;;:::o;8628:::-;8770:3;8791:67;8855:2;8850:3;8791:67;:::i;:::-;8784:74;;8867:93;8956:3;8867:93;:::i;:::-;8985:2;8980:3;8976:12;8969:19;;8628:366;;;:::o;9000:::-;9142:3;9163:67;9227:2;9222:3;9163:67;:::i;:::-;9156:74;;9239:93;9328:3;9239:93;:::i;:::-;9357:2;9352:3;9348:12;9341:19;;9000:366;;;:::o;9372:::-;9514:3;9535:67;9599:2;9594:3;9535:67;:::i;:::-;9528:74;;9611:93;9700:3;9611:93;:::i;:::-;9729:2;9724:3;9720:12;9713:19;;9372:366;;;:::o;9744:::-;9886:3;9907:67;9971:2;9966:3;9907:67;:::i;:::-;9900:74;;9983:93;10072:3;9983:93;:::i;:::-;10101:2;10096:3;10092:12;10085:19;;9744:366;;;:::o;10116:::-;10258:3;10279:67;10343:2;10338:3;10279:67;:::i;:::-;10272:74;;10355:93;10444:3;10355:93;:::i;:::-;10473:2;10468:3;10464:12;10457:19;;10116:366;;;:::o;10488:::-;10630:3;10651:67;10715:2;10710:3;10651:67;:::i;:::-;10644:74;;10727:93;10816:3;10727:93;:::i;:::-;10845:2;10840:3;10836:12;10829:19;;10488:366;;;:::o;10860:::-;11002:3;11023:67;11087:2;11082:3;11023:67;:::i;:::-;11016:74;;11099:93;11188:3;11099:93;:::i;:::-;11217:2;11212:3;11208:12;11201:19;;10860:366;;;:::o;11232:::-;11374:3;11395:67;11459:2;11454:3;11395:67;:::i;:::-;11388:74;;11471:93;11560:3;11471:93;:::i;:::-;11589:2;11584:3;11580:12;11573:19;;11232:366;;;:::o;11604:::-;11746:3;11767:67;11831:2;11826:3;11767:67;:::i;:::-;11760:74;;11843:93;11932:3;11843:93;:::i;:::-;11961:2;11956:3;11952:12;11945:19;;11604:366;;;:::o;11976:::-;12118:3;12139:67;12203:2;12198:3;12139:67;:::i;:::-;12132:74;;12215:93;12304:3;12215:93;:::i;:::-;12333:2;12328:3;12324:12;12317:19;;11976:366;;;:::o;12348:118::-;12435:24;12453:5;12435:24;:::i;:::-;12430:3;12423:37;12348:118;;:::o;12472:112::-;12555:22;12571:5;12555:22;:::i;:::-;12550:3;12543:35;12472:112;;:::o;12590:222::-;12683:4;12721:2;12710:9;12706:18;12698:26;;12734:71;12802:1;12791:9;12787:17;12778:6;12734:71;:::i;:::-;12590:222;;;;:::o;12818:210::-;12905:4;12943:2;12932:9;12928:18;12920:26;;12956:65;13018:1;13007:9;13003:17;12994:6;12956:65;:::i;:::-;12818:210;;;;:::o;13034:274::-;13153:4;13191:2;13180:9;13176:18;13168:26;;13204:97;13298:1;13287:9;13283:17;13274:6;13204:97;:::i;:::-;13034:274;;;;:::o;13314:313::-;13427:4;13465:2;13454:9;13450:18;13442:26;;13514:9;13508:4;13504:20;13500:1;13489:9;13485:17;13478:47;13542:78;13615:4;13606:6;13542:78;:::i;:::-;13534:86;;13314:313;;;;:::o;13633:419::-;13799:4;13837:2;13826:9;13822:18;13814:26;;13886:9;13880:4;13876:20;13872:1;13861:9;13857:17;13850:47;13914:131;14040:4;13914:131;:::i;:::-;13906:139;;13633:419;;;:::o;14058:::-;14224:4;14262:2;14251:9;14247:18;14239:26;;14311:9;14305:4;14301:20;14297:1;14286:9;14282:17;14275:47;14339:131;14465:4;14339:131;:::i;:::-;14331:139;;14058:419;;;:::o;14483:::-;14649:4;14687:2;14676:9;14672:18;14664:26;;14736:9;14730:4;14726:20;14722:1;14711:9;14707:17;14700:47;14764:131;14890:4;14764:131;:::i;:::-;14756:139;;14483:419;;;:::o;14908:::-;15074:4;15112:2;15101:9;15097:18;15089:26;;15161:9;15155:4;15151:20;15147:1;15136:9;15132:17;15125:47;15189:131;15315:4;15189:131;:::i;:::-;15181:139;;14908:419;;;:::o;15333:::-;15499:4;15537:2;15526:9;15522:18;15514:26;;15586:9;15580:4;15576:20;15572:1;15561:9;15557:17;15550:47;15614:131;15740:4;15614:131;:::i;:::-;15606:139;;15333:419;;;:::o;15758:::-;15924:4;15962:2;15951:9;15947:18;15939:26;;16011:9;16005:4;16001:20;15997:1;15986:9;15982:17;15975:47;16039:131;16165:4;16039:131;:::i;:::-;16031:139;;15758:419;;;:::o;16183:::-;16349:4;16387:2;16376:9;16372:18;16364:26;;16436:9;16430:4;16426:20;16422:1;16411:9;16407:17;16400:47;16464:131;16590:4;16464:131;:::i;:::-;16456:139;;16183:419;;;:::o;16608:::-;16774:4;16812:2;16801:9;16797:18;16789:26;;16861:9;16855:4;16851:20;16847:1;16836:9;16832:17;16825:47;16889:131;17015:4;16889:131;:::i;:::-;16881:139;;16608:419;;;:::o;17033:::-;17199:4;17237:2;17226:9;17222:18;17214:26;;17286:9;17280:4;17276:20;17272:1;17261:9;17257:17;17250:47;17314:131;17440:4;17314:131;:::i;:::-;17306:139;;17033:419;;;:::o;17458:::-;17624:4;17662:2;17651:9;17647:18;17639:26;;17711:9;17705:4;17701:20;17697:1;17686:9;17682:17;17675:47;17739:131;17865:4;17739:131;:::i;:::-;17731:139;;17458:419;;;:::o;17883:::-;18049:4;18087:2;18076:9;18072:18;18064:26;;18136:9;18130:4;18126:20;18122:1;18111:9;18107:17;18100:47;18164:131;18290:4;18164:131;:::i;:::-;18156:139;;17883:419;;;:::o;18308:::-;18474:4;18512:2;18501:9;18497:18;18489:26;;18561:9;18555:4;18551:20;18547:1;18536:9;18532:17;18525:47;18589:131;18715:4;18589:131;:::i;:::-;18581:139;;18308:419;;;:::o;18733:::-;18899:4;18937:2;18926:9;18922:18;18914:26;;18986:9;18980:4;18976:20;18972:1;18961:9;18957:17;18950:47;19014:131;19140:4;19014:131;:::i;:::-;19006:139;;18733:419;;;:::o;19158:::-;19324:4;19362:2;19351:9;19347:18;19339:26;;19411:9;19405:4;19401:20;19397:1;19386:9;19382:17;19375:47;19439:131;19565:4;19439:131;:::i;:::-;19431:139;;19158:419;;;:::o;19583:::-;19749:4;19787:2;19776:9;19772:18;19764:26;;19836:9;19830:4;19826:20;19822:1;19811:9;19807:17;19800:47;19864:131;19990:4;19864:131;:::i;:::-;19856:139;;19583:419;;;:::o;20008:::-;20174:4;20212:2;20201:9;20197:18;20189:26;;20261:9;20255:4;20251:20;20247:1;20236:9;20232:17;20225:47;20289:131;20415:4;20289:131;:::i;:::-;20281:139;;20008:419;;;:::o;20433:::-;20599:4;20637:2;20626:9;20622:18;20614:26;;20686:9;20680:4;20676:20;20672:1;20661:9;20657:17;20650:47;20714:131;20840:4;20714:131;:::i;:::-;20706:139;;20433:419;;;:::o;20858:222::-;20951:4;20989:2;20978:9;20974:18;20966:26;;21002:71;21070:1;21059:9;21055:17;21046:6;21002:71;:::i;:::-;20858:222;;;;:::o;21086:831::-;21349:4;21387:3;21376:9;21372:19;21364:27;;21401:71;21469:1;21458:9;21454:17;21445:6;21401:71;:::i;:::-;21482:80;21558:2;21547:9;21543:18;21534:6;21482:80;:::i;:::-;21609:9;21603:4;21599:20;21594:2;21583:9;21579:18;21572:48;21637:108;21740:4;21731:6;21637:108;:::i;:::-;21629:116;;21755:72;21823:2;21812:9;21808:18;21799:6;21755:72;:::i;:::-;21837:73;21905:3;21894:9;21890:19;21881:6;21837:73;:::i;:::-;21086:831;;;;;;;;:::o;21923:214::-;22012:4;22050:2;22039:9;22035:18;22027:26;;22063:67;22127:1;22116:9;22112:17;22103:6;22063:67;:::i;:::-;21923:214;;;;:::o;22224:132::-;22291:4;22314:3;22306:11;;22344:4;22339:3;22335:14;22327:22;;22224:132;;;:::o;22362:114::-;22429:6;22463:5;22457:12;22447:22;;22362:114;;;:::o;22482:99::-;22534:6;22568:5;22562:12;22552:22;;22482:99;;;:::o;22587:113::-;22657:4;22689;22684:3;22680:14;22672:22;;22587:113;;;:::o;22706:184::-;22805:11;22839:6;22834:3;22827:19;22879:4;22874:3;22870:14;22855:29;;22706:184;;;;:::o;22896:169::-;22980:11;23014:6;23009:3;23002:19;23054:4;23049:3;23045:14;23030:29;;22896:169;;;;:::o;23071:305::-;23111:3;23130:20;23148:1;23130:20;:::i;:::-;23125:25;;23164:20;23182:1;23164:20;:::i;:::-;23159:25;;23318:1;23250:66;23246:74;23243:1;23240:81;23237:107;;;23324:18;;:::i;:::-;23237:107;23368:1;23365;23361:9;23354:16;;23071:305;;;;:::o;23382:185::-;23422:1;23439:20;23457:1;23439:20;:::i;:::-;23434:25;;23473:20;23491:1;23473:20;:::i;:::-;23468:25;;23512:1;23502:35;;23517:18;;:::i;:::-;23502:35;23559:1;23556;23552:9;23547:14;;23382:185;;;;:::o;23573:348::-;23613:7;23636:20;23654:1;23636:20;:::i;:::-;23631:25;;23670:20;23688:1;23670:20;:::i;:::-;23665:25;;23858:1;23790:66;23786:74;23783:1;23780:81;23775:1;23768:9;23761:17;23757:105;23754:131;;;23865:18;;:::i;:::-;23754:131;23913:1;23910;23906:9;23895:20;;23573:348;;;;:::o;23927:191::-;23967:4;23987:20;24005:1;23987:20;:::i;:::-;23982:25;;24021:20;24039:1;24021:20;:::i;:::-;24016:25;;24060:1;24057;24054:8;24051:34;;;24065:18;;:::i;:::-;24051:34;24110:1;24107;24103:9;24095:17;;23927:191;;;;:::o;24124:96::-;24161:7;24190:24;24208:5;24190:24;:::i;:::-;24179:35;;24124:96;;;:::o;24226:90::-;24260:7;24303:5;24296:13;24289:21;24278:32;;24226:90;;;:::o;24322:126::-;24359:7;24399:42;24392:5;24388:54;24377:65;;24322:126;;;:::o;24454:77::-;24491:7;24520:5;24509:16;;24454:77;;;:::o;24537:86::-;24572:7;24612:4;24605:5;24601:16;24590:27;;24537:86;;;:::o;24629:152::-;24705:9;24738:37;24769:5;24738:37;:::i;:::-;24725:50;;24629:152;;;:::o;24787:121::-;24845:9;24878:24;24896:5;24878:24;:::i;:::-;24865:37;;24787:121;;;:::o;24914:126::-;24964:9;24997:37;25028:5;24997:37;:::i;:::-;24984:50;;24914:126;;;:::o;25046:113::-;25096:9;25129:24;25147:5;25129:24;:::i;:::-;25116:37;;25046:113;;;:::o;25165:307::-;25233:1;25243:113;25257:6;25254:1;25251:13;25243:113;;;25342:1;25337:3;25333:11;25327:18;25323:1;25318:3;25314:11;25307:39;25279:2;25276:1;25272:10;25267:15;;25243:113;;;25374:6;25371:1;25368:13;25365:101;;;25454:1;25445:6;25440:3;25436:16;25429:27;25365:101;25214:258;25165:307;;;:::o;25478:180::-;25526:77;25523:1;25516:88;25623:4;25620:1;25613:15;25647:4;25644:1;25637:15;25664:180;25712:77;25709:1;25702:88;25809:4;25806:1;25799:15;25833:4;25830:1;25823:15;25850:180;25898:77;25895:1;25888:88;25995:4;25992:1;25985:15;26019:4;26016:1;26009:15;26036:180;26084:77;26081:1;26074:88;26181:4;26178:1;26171:15;26205:4;26202:1;26195:15;26345:117;26454:1;26451;26444:12;26468:102;26509:6;26560:2;26556:7;26551:2;26544:5;26540:14;26536:28;26526:38;;26468:102;;;:::o;26576:222::-;26716:34;26712:1;26704:6;26700:14;26693:58;26785:5;26780:2;26772:6;26768:15;26761:30;26576:222;:::o;26804:174::-;26944:26;26940:1;26932:6;26928:14;26921:50;26804:174;:::o;26984:229::-;27124:34;27120:1;27112:6;27108:14;27101:58;27193:12;27188:2;27180:6;27176:15;27169:37;26984:229;:::o;27219:178::-;27359:30;27355:1;27347:6;27343:14;27336:54;27219:178;:::o;27403:225::-;27543:34;27539:1;27531:6;27527:14;27520:58;27612:8;27607:2;27599:6;27595:15;27588:33;27403:225;:::o;27634:221::-;27774:34;27770:1;27762:6;27758:14;27751:58;27843:4;27838:2;27830:6;27826:15;27819:29;27634:221;:::o;27861:165::-;28001:17;27997:1;27989:6;27985:14;27978:41;27861:165;:::o;28032:177::-;28172:29;28168:1;28160:6;28156:14;28149:53;28032:177;:::o;28215:239::-;28355:34;28351:1;28343:6;28339:14;28332:58;28424:22;28419:2;28411:6;28407:15;28400:47;28215:239;:::o;28460:220::-;28600:34;28596:1;28588:6;28584:14;28577:58;28669:3;28664:2;28656:6;28652:15;28645:28;28460:220;:::o;28686:182::-;28826:34;28822:1;28814:6;28810:14;28803:58;28686:182;:::o;28874:228::-;29014:34;29010:1;29002:6;28998:14;28991:58;29083:11;29078:2;29070:6;29066:15;29059:36;28874:228;:::o;29108:224::-;29248:34;29244:1;29236:6;29232:14;29225:58;29317:7;29312:2;29304:6;29300:15;29293:32;29108:224;:::o;29338:222::-;29478:34;29474:1;29466:6;29462:14;29455:58;29547:5;29542:2;29534:6;29530:15;29523:30;29338:222;:::o;29566:163::-;29706:15;29702:1;29694:6;29690:14;29683:39;29566:163;:::o;29735:223::-;29875:34;29871:1;29863:6;29859:14;29852:58;29944:6;29939:2;29931:6;29927:15;29920:31;29735:223;:::o;29964:162::-;30104:14;30100:1;30092:6;30088:14;30081:38;29964:162;:::o;30132:122::-;30205:24;30223:5;30205:24;:::i;:::-;30198:5;30195:35;30185:63;;30244:1;30241;30234:12;30185:63;30132:122;:::o;30260:116::-;30330:21;30345:5;30330:21;:::i;:::-;30323:5;30320:32;30310:60;;30366:1;30363;30356:12;30310:60;30260:116;:::o;30382:122::-;30455:24;30473:5;30455:24;:::i;:::-;30448:5;30445:35;30435:63;;30494:1;30491;30484:12;30435:63;30382:122;:::o

Swarm Source

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