ETH Price: $3,152.87 (+2.65%)
Gas: 1 Gwei

Token

Sultan Floki (SFLOKI)
 

Overview

Max Total Supply

2,000,000 SFLOKI

Holders

43

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
0.824964296 SFLOKI

Value
$0.00
0x9d0e9b2f67ffbde43b00924fe60d6c4665fca9b9
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:
SmartContract

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

// SPDX-License-Identifier: NOLICENSE

/********************

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&& ,&&&&&&&&&&&&&&&&&&&&&&&&@&##&@&&&&&&&&&&&&&&&&&&&&&&&& @&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&& &/&&&&&&&&&&&&&&&&  @@@@@@@@&&&&##      .  &&&&&&&&&&&&&& %%@ &&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&& @%%^&&&&&&&&&&&& @@@@@@&&#   @@@@@@@@@@@@@@@@@@%  @&&&&&&&&((%%%@ &&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&.&%%%( &&&&&&&& @@&@&%#  @@@@@@@@@@@@@@@@@@&&&&&&@&@@% %&&&&&.(%%%%@ &&&&&&&&&&&&&&
&&&&&&&&&&&&&&&& @%%%%%(.&&&& @&&@&#  @&#,      (@@           .@@@@@@@&    @&@ %%%%%%@ &&&&&&&&&&&&&
&&&&&&&&&&&&&&&@^@%%%%%%% & @@@@,  @@@@&@@&   #%@@@@@&&&@@@@  #&@@%%/  #%&&# (%%%%%%%@ &&&&&&&&&&&&&
&&&&&&&&&&&&&&&@ @%%%%%%%%%  @@@@@@@&. .#%@@@@@&  &,,,^  &@@@@@. #@@@@@@&# ^%%%%%%%%%@.&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&^@&%%%%%% @&@@&&@  #%@@@@@@@@@ &,,,,,,,,, &@@@@@@ %&@@@@@@@@& #%%%%%@ &&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&& @&%%%% @@&@ ,#@@@@@@@@@&@&    ,,,,,,,,    #&&&&&./&@@@@@@@@@@ %%%@.&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&(@%%#@  #&@&@&&/  .@@@@@@@&@@&&&&&&&&&&&@&@@@@@,  %@&&@@@@@@# %& &&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&,@@%&&@&&  @@@@@@&&%^   @@@@@@@@@@@@@@@@@    ##&&@@@@  @&&@# .&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&   /@@@@@@&%  @@&@                    .@@&&@@@  #&&@@@@  &&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&@@&%     &&&#////////////////////////#&&&&   @@@  #@ &&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&% .&&///////////^,,,,,,,,,,,,,,,,,///////////&&&  & &&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&& //^,,,,,,,       (((((((##(#((#(((#^      ,,,,/// &&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&%   (#(%%%%%%%%%%%%%%%%%%%%%%%%%%%%#%%%%%%%%%%##^ &&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&@ %%%%%%%%%%%#  .@ %%%%%%%%%%%%%%% @   #%%%%%%%%%%% &&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&& %%%%%%%%%%%       #%%%%%%%%%%%%%(       (%%%%%%%%%% &&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&/&%%%%%%%% %%#  # .%%@@@@@@@@@@@@%%%( (  #%%%#%%%%%%%% &&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&& @@@@@@@%%%#  (%%@@@@@@(       @@@@@@%%%%  %%%%@@@@@@@ &&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&& @@@@@@@@@@# #@@@@@@@@@@@.   .@@@@@@@@@@&%&(@@@@@@@@@@ &&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&,&@@@@@@@@@ %@@@@@@@@% @@@, .@@@@ @@@@@@@@@ @@@@@@@@@(,&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&,.&@@@@@@@@(@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&@@@@@@@@& &&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&& ^&@@@@@@.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@& #&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&  %&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&,  @&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&& #%%%  ^&&&&@@@@@@@@@@@@@@@@@@@@@@@&&&   @%%%/ &&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&& /%%%%@@@%%     &&&&&&&&&&&&&&&,    ,%@@@@@%%%%/ &&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&& /%%%%%%@@@@@@@@%%%%%%%%%%%%%%%%@@@@@@@@@@@%%%%%%/ &&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&& ,%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%/ &&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&& /%%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%/ &&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&& /%%%%%%%%%#%%@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%#  &&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&  #%%%%%%%%%^%%%%%@@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%%%%%/ &&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&& /%%%%%%%%%% %%%%%%%%%%@@@@@@@@@%%%%%%%%%%%%( %%%%%%%%%%/ &&&&&&&&&&&&&&&&&&&

Token Name: Sultan Floki
Symbol: SFLOKI
Supply: 2,000,000 / initial max buy 10,000

Taxation (1st hour)
6% buy (3% liquidity + 3% Marketing)
20% sell (2% liquidity + 18% Marketing)

Taxation (Final) 8/8 tax
6% buy (3% liquidity + 3% Marketing)
10% sell (5% liquidity + 5% Marketing)


Telegram: https://t.me/+Lteh2lcPzUQxZTY5
Twitter: https://twitter.com/FlokiSultan
Website: https://sultanfloki.com/

***********************/

pragma solidity ^0.8.4;

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

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

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

abstract contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    
    constructor() {
        _setOwner(_msgSender());
    }

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

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

    function renounceOwnership() public virtual onlyOwner {
        _setOwner(address(0));
    }

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

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract SmartContract is Context, IERC20, Ownable {

    using SafeMath for uint256;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private _isExcludedFromMaxWalletSize;

    string private constant _name = "Sultan Floki";
    string private constant _symbol = "SFLOKI";
    uint8 private constant _decimals = 9;

    uint256 public buyAutoLiquidityFee = 300;
    uint256 public buyAutoBurnFee = 0;
    uint256 public buyMarketingFee = 300;
    uint256 public totalBuyFees = buyAutoLiquidityFee + buyAutoBurnFee + buyMarketingFee;

    uint256 public sellAutoLiquidityFee = 500;
    uint256 public sellAutoBurnFee = 0;
    uint256 public sellMarketingFee = 500;
    uint256 public totalSellFees =  sellAutoLiquidityFee + sellAutoBurnFee + sellMarketingFee;

    uint256 public tokensForAutoLiquidity;
    uint256 public tokensForAutoBurn;  
    uint256 public tokensForMarketing;
    uint16 public masterTaxDivisor = 10000;

    address public constant DEAD = 0x000000000000000000000000000000000000dEaD;
    address public pairAddress;
    
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    uint256 private _tTotal = 2000000 * 10**9;
    uint256 private maxWalletAmount = 10001 * 10**9;
    uint256 private maxTxAmount = 10001 * 10**9; 
    address payable private feeAddrWallet;

    event MaxWalletAmountUpdated(uint maxWalletAmount);

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
  
    constructor () {
        require(!tradingOpen,"trading is already open");
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        pairAddress = IUniswapV2Factory(_uniswapV2Router.factory()).getPair(address(this), _uniswapV2Router.WETH());
        feeAddrWallet = payable(0x255363c72Dc72732Cd1778cc8522F6483ff9D233); 
        _tOwned[owner()] = _tTotal;
                
        uint256 _buyAutoLiquidityFee = 300;
        uint256 _buyAutoBurnFee = 0;
        uint256 _buyMarketingFee = 300;
        uint256 _sellAutoLiquidityFee = 200;
        uint256 _sellAutoBurnFee = 0; 
        uint256 _sellMarketingFee = 1800; 
        
        buyAutoLiquidityFee = _buyAutoLiquidityFee;
        buyAutoBurnFee = _buyAutoBurnFee;
        buyMarketingFee = _buyMarketingFee;
        totalBuyFees = buyAutoLiquidityFee + buyAutoBurnFee + buyMarketingFee;
        
        sellAutoLiquidityFee = _sellAutoLiquidityFee;
        sellAutoBurnFee = _sellAutoBurnFee;
        sellMarketingFee = _sellMarketingFee;
        totalSellFees = sellAutoLiquidityFee + sellAutoBurnFee + sellMarketingFee;
        
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[feeAddrWallet] = true;
        _isExcludedFromMaxWalletSize[owner()] = true;
        _isExcludedFromMaxWalletSize[address(this)] = true;
        _isExcludedFromMaxWalletSize[feeAddrWallet] = true;  
        emit Transfer(address(0), owner(), _tTotal);
             
    }

    function openTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        swapEnabled = true;
        maxTxAmount = 10001 * 10**9;
        maxWalletAmount = 10001 * 10**9;
        tradingOpen = true;
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }

    function name() public pure returns (string memory) { return _name; }
    function getTxAmount() public view returns(uint256) {return maxTxAmount;}
    function getMaxWallet() public view returns(uint256) {return maxWalletAmount;}
    function symbol() public pure returns (string memory) { return _symbol; }
    function decimals() public pure returns (uint8) { return _decimals; }
    function totalSupply() public view override returns (uint256) { return _tTotal; }
    function balanceOf(address account) public view override returns (uint256) { return _tOwned[account]; }
    function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; }
    function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; }
    function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; }

    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        _approve(sender, _msgSender(), currentAllowance - amount);
        return true;
    }

    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(amount <= balanceOf(from),"You are trying to transfer more than your balance");    
        require(tradingOpen || _isExcludedFromFee[from] || _isExcludedFromFee[to], "Trading not enabled yet");

        if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to]) {
                require(amount <= maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= maxWalletAmount, "Exceeds the maxWalletSize.");
        }
        if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromMaxWalletSize[to]) {             
                require(amount + balanceOf(to) <= maxWalletAmount, "Recipient exceeds max wallet size.");
        }

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

        _tokenTransfer(from, to, amount, !(_isExcludedFromFee[from] || _isExcludedFromFee[to]));
    }

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

    function _tokenTransfer(address sender, address recipient, uint256 amount, bool takeFee) private {
        _tOwned[sender] -= amount;
        uint256 amountReceived = (takeFee) ? takeTaxes(sender, recipient, amount) : amount;
        _tOwned[recipient] += amountReceived;
        emit Transfer(sender, recipient, amountReceived);
    }

    function takeTaxes(address from, address to, uint256 amount) internal returns (uint256) {
        if(from == uniswapV2Pair && totalBuyFees > 0 ) { 
            tokensForAutoLiquidity = amount * buyAutoLiquidityFee / masterTaxDivisor;
            tokensForAutoBurn = amount * buyAutoBurnFee / masterTaxDivisor;         
            tokensForMarketing = amount * buyMarketingFee / masterTaxDivisor;    
        } else if (to == uniswapV2Pair  && totalSellFees > 0 ) { 
            tokensForAutoLiquidity = amount * sellAutoLiquidityFee / masterTaxDivisor;
            tokensForAutoBurn = amount * sellAutoBurnFee / masterTaxDivisor;
            tokensForMarketing = amount * sellMarketingFee / masterTaxDivisor;        
        }
        _tOwned[pairAddress] += tokensForAutoLiquidity;
        emit Transfer(from, pairAddress, tokensForAutoLiquidity);
        
        _tOwned[DEAD] += tokensForAutoBurn;
        _tTotal = _tTotal - tokensForAutoBurn;
        _tTotal = totalSupply();
        emit Transfer(from, DEAD, tokensForAutoBurn);
                
        _tOwned[address(this)] += tokensForMarketing;
        emit Transfer(from, address(this), tokensForMarketing);

        uint256 feeAmount = tokensForAutoLiquidity + tokensForAutoBurn + tokensForMarketing;
        return amount - feeAmount;
    }

    function excludeFromFee(address account) public onlyOwner {
        _isExcludedFromFee[account] = true;
    }

    function includeInFee(address account) public onlyOwner {
        _isExcludedFromFee[account] = false;
    }

     function excludeFromMaxWalletLimit(address account) public onlyOwner {
		_isExcludedFromMaxWalletSize[account] = true;
	}

    function includeInMaxWalletLimit(address account) public onlyOwner {
		_isExcludedFromMaxWalletSize[account] = false;
	}

    function SetWalletandTxtAmount(uint256 _maxTxAmount, uint256 _maxWalletSize) external onlyOwner{
        maxTxAmount = _maxTxAmount * 10 **_decimals;
        maxWalletAmount = _maxWalletSize * 10 **_decimals;
    }

    function RervertSellFeesToOriginalTax() external onlyOwner {
        //Revert to original sell tax 
        sellAutoLiquidityFee = 500;
        sellAutoBurnFee = 0;
        sellMarketingFee = 500;
        totalSellFees = sellAutoLiquidityFee + sellAutoBurnFee + sellMarketingFee;
    }
    
    function sendETHToFee(uint256 amount) private {
        feeAddrWallet.transfer(amount);
    } 

    receive() external payable{
    }
}

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":"maxWalletAmount","type":"uint256"}],"name":"MaxWalletAmountUpdated","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":"DEAD","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"RervertSellFeesToOriginalTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxTxAmount","type":"uint256"},{"internalType":"uint256","name":"_maxWalletSize","type":"uint256"}],"name":"SetWalletandTxtAmount","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":"buyAutoBurnFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyAutoLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromMaxWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getMaxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInMaxWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"masterTaxDivisor","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pairAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellAutoBurnFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellAutoLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"tokensForAutoBurn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensForAutoLiquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensForMarketing","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalBuyFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSellFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405261012c600555600060065561012c6007556007546006546005546200002a919062000ba0565b62000036919062000ba0565b6008556101f46009556000600a556101f4600b55600b54600a546009546200005f919062000ba0565b6200006b919062000ba0565b600c55612710601060006101000a81548161ffff021916908361ffff1602179055506000601260156101000a81548160ff0219169083151502179055506000601260166101000a81548160ff02191690831515021790555066071afd498d00006013556509188a0d6a006014556509188a0d6a00601555348015620000ef57600080fd5b5062000110620001046200099c60201b60201c565b620009a460201b60201c565b601260149054906101000a900460ff161562000163576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200015a9062000b50565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200020457600080fd5b505afa15801562000219573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200023f919062000aa8565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620002a257600080fd5b505afa158015620002b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002dd919062000aa8565b6040518363ffffffff1660e01b8152600401620002fc92919062000b23565b602060405180830381600087803b1580156200031757600080fd5b505af11580156200032c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000352919062000aa8565b601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620003d957600080fd5b505afa158015620003ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000414919062000aa8565b73ffffffffffffffffffffffffffffffffffffffff1663e6a43905308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200047757600080fd5b505afa1580156200048c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004b2919062000aa8565b6040518363ffffffff1660e01b8152600401620004d192919062000b23565b60206040518083038186803b158015620004ea57600080fd5b505afa158015620004ff573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000525919062000aa8565b601060026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073255363c72dc72732cd1778cc8522f6483ff9d233601660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060135460016000620005d162000a6860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600061012c905060008061012c9050600060c89050600080610708905085600581905550846006819055508360078190555060075460065460055462000656919062000ba0565b62000662919062000ba0565b6008819055508260098190555081600a8190555080600b81905550600b54600a5460095462000692919062000ba0565b6200069e919062000ba0565b600c81905550600160036000620006ba62000a6860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160036000601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000620007f362000a6860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200092662000a6860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60135460405162000987919062000b72565b60405180910390a35050505050505062000cb2565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008151905062000aa28162000c98565b92915050565b60006020828403121562000ac15762000ac062000c6a565b5b600062000ad18482850162000a91565b91505092915050565b62000ae58162000bfd565b82525050565b600062000afa60178362000b8f565b915062000b078262000c6f565b602082019050919050565b62000b1d8162000c31565b82525050565b600060408201905062000b3a600083018562000ada565b62000b49602083018462000ada565b9392505050565b6000602082019050818103600083015262000b6b8162000aeb565b9050919050565b600060208201905062000b89600083018462000b12565b92915050565b600082825260208201905092915050565b600062000bad8262000c31565b915062000bba8362000c31565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000bf25762000bf162000c3b565b5b828201905092915050565b600062000c0a8262000c11565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600080fd5b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b62000ca38162000bfd565b811462000caf57600080fd5b50565b6136928062000cc26000396000f3fe6080604052600436106102085760003560e01c806384d6c8c611610118578063c9567bf9116100a0578063dd62ed3e1161006f578063dd62ed3e14610724578063ea2f0b3714610761578063ebece9c91461078a578063f239eab8146107b3578063f2fde38b146107de5761020f565b8063c9567bf91461068c578063c99f2fed146106a3578063cc70acee146106ce578063d0a39814146106f95761020f565b80639740a946116100e75780639740a946146105a55780639f71146d146105d0578063a8b08982146105f9578063a9059cbb14610624578063b9e93700146106615761020f565b806384d6c8c6146104f95780638da5cb5b14610524578063921369131461054f57806395d89b411461057a5761020f565b8063313ce5671161019b57806347afcbfe1161016a57806347afcbfe146104245780636cce46fc1461044f57806370a082311461047a578063715018a6146104b75780637bce5a04146104ce5761020f565b8063313ce567146103905780633722355c146103bb5780633e0c23b8146103e4578063437823ec146103fb5761020f565b806318160ddd116101d757806318160ddd146102d25780631d6167ac146102fd5780631f3fed8f1461032857806323b872dd146103535761020f565b806303fd2a451461021457806306fdde031461023f578063095ea7b31461026a5780630fa604e4146102a75761020f565b3661020f57005b600080fd5b34801561022057600080fd5b50610229610807565b6040516102369190612b35565b60405180910390f35b34801561024b57600080fd5b5061025461080d565b6040516102619190612b94565b60405180910390f35b34801561027657600080fd5b50610291600480360381019061028c9190612786565b61084a565b60405161029e9190612b79565b60405180910390f35b3480156102b357600080fd5b506102bc610868565b6040516102c99190612d91565b60405180910390f35b3480156102de57600080fd5b506102e7610872565b6040516102f49190612d91565b60405180910390f35b34801561030957600080fd5b5061031261087c565b60405161031f9190612d76565b60405180910390f35b34801561033457600080fd5b5061033d610890565b60405161034a9190612d91565b60405180910390f35b34801561035f57600080fd5b5061037a60048036038101906103759190612733565b610896565b6040516103879190612b79565b60405180910390f35b34801561039c57600080fd5b506103a5610997565b6040516103b29190612e06565b60405180910390f35b3480156103c757600080fd5b506103e260048036038101906103dd9190612699565b6109a0565b005b3480156103f057600080fd5b506103f9610a77565b005b34801561040757600080fd5b50610422600480360381019061041d9190612699565b610b32565b005b34801561043057600080fd5b50610439610c09565b6040516104469190612d91565b60405180910390f35b34801561045b57600080fd5b50610464610c0f565b6040516104719190612d91565b60405180910390f35b34801561048657600080fd5b506104a1600480360381019061049c9190612699565b610c15565b6040516104ae9190612d91565b60405180910390f35b3480156104c357600080fd5b506104cc610c5e565b005b3480156104da57600080fd5b506104e3610ce6565b6040516104f09190612d91565b60405180910390f35b34801561050557600080fd5b5061050e610cec565b60405161051b9190612d91565b60405180910390f35b34801561053057600080fd5b50610539610cf6565b6040516105469190612b35565b60405180910390f35b34801561055b57600080fd5b50610564610d1f565b6040516105719190612d91565b60405180910390f35b34801561058657600080fd5b5061058f610d25565b60405161059c9190612b94565b60405180910390f35b3480156105b157600080fd5b506105ba610d62565b6040516105c79190612d91565b60405180910390f35b3480156105dc57600080fd5b506105f760048036038101906105f29190612699565b610d68565b005b34801561060557600080fd5b5061060e610e3f565b60405161061b9190612b35565b60405180910390f35b34801561063057600080fd5b5061064b60048036038101906106469190612786565b610e65565b6040516106589190612b79565b60405180910390f35b34801561066d57600080fd5b50610676610e83565b6040516106839190612d91565b60405180910390f35b34801561069857600080fd5b506106a1610e89565b005b3480156106af57600080fd5b506106b8611099565b6040516106c59190612d91565b60405180910390f35b3480156106da57600080fd5b506106e361109f565b6040516106f09190612d91565b60405180910390f35b34801561070557600080fd5b5061070e6110a5565b60405161071b9190612d91565b60405180910390f35b34801561073057600080fd5b5061074b600480360381019061074691906126f3565b6110ab565b6040516107589190612d91565b60405180910390f35b34801561076d57600080fd5b5061078860048036038101906107839190612699565b611132565b005b34801561079657600080fd5b506107b160048036038101906107ac91906127f3565b611209565b005b3480156107bf57600080fd5b506107c86112c7565b6040516107d59190612d91565b60405180910390f35b3480156107ea57600080fd5b5061080560048036038101906108009190612699565b6112cd565b005b61dead81565b60606040518060400160405280600c81526020017f53756c74616e20466c6f6b690000000000000000000000000000000000000000815250905090565b600061085e6108576113c5565b84846113cd565b6001905092915050565b6000601454905090565b6000601354905090565b601060009054906101000a900461ffff1681565b600f5481565b60006108a3848484611598565b6000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006108ee6113c5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508281101561096e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161096590612c76565b60405180910390fd5b61098b8561097a6113c5565b858461098691906130c8565b6113cd565b60019150509392505050565b60006009905090565b6109a86113c5565b73ffffffffffffffffffffffffffffffffffffffff166109c6610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614610a1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1390612c96565b60405180910390fd5b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b610a7f6113c5565b73ffffffffffffffffffffffffffffffffffffffff16610a9d610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614610af3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aea90612c96565b60405180910390fd5b6101f46009819055506000600a819055506101f4600b81905550600b54600a54600954610b209190612e76565b610b2a9190612e76565b600c81905550565b610b3a6113c5565b73ffffffffffffffffffffffffffffffffffffffff16610b58610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614610bae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba590612c96565b60405180910390fd5b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600a5481565b60095481565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610c666113c5565b73ffffffffffffffffffffffffffffffffffffffff16610c84610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614610cda576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd190612c96565b60405180910390fd5b610ce46000611c77565b565b60075481565b6000601554905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600b5481565b60606040518060400160405280600681526020017f53464c4f4b490000000000000000000000000000000000000000000000000000815250905090565b600d5481565b610d706113c5565b73ffffffffffffffffffffffffffffffffffffffff16610d8e610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614610de4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ddb90612c96565b60405180910390fd5b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b601060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610e79610e726113c5565b8484611598565b6001905092915050565b60085481565b610e916113c5565b73ffffffffffffffffffffffffffffffffffffffff16610eaf610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614610f05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610efc90612c96565b60405180910390fd5b601260149054906101000a900460ff1615610f55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4c90612d36565b60405180910390fd5b6001601260166101000a81548160ff0219169083151502179055506509188a0d6a006015819055506509188a0d6a006014819055506001601260146101000a81548160ff021916908315150217905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611044929190612b50565b602060405180830381600087803b15801561105e57600080fd5b505af1158015611072573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109691906127c6565b50565b60065481565b600e5481565b600c5481565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61113a6113c5565b73ffffffffffffffffffffffffffffffffffffffff16611158610cf6565b73ffffffffffffffffffffffffffffffffffffffff16146111ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a590612c96565b60405180910390fd5b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6112116113c5565b73ffffffffffffffffffffffffffffffffffffffff1661122f610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614611285576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127c90612c96565b60405180910390fd5b6009600a6112939190612f50565b8261129e919061306e565b6015819055506009600a6112b29190612f50565b816112bd919061306e565b6014819055505050565b60055481565b6112d56113c5565b73ffffffffffffffffffffffffffffffffffffffff166112f3610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614611349576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134090612c96565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156113b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b090612c16565b60405180910390fd5b6113c281611c77565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561143d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143490612d16565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156114ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a490612c36565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161158b9190612d91565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611608576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ff90612cd6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611678576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166f90612bb6565b60405180910390fd5b600081116116bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b290612cb6565b60405180910390fd5b6116c483610c15565b811115611706576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116fd90612bf6565b60405180910390fd5b601260149054906101000a900460ff168061176a5750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806117be5750600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6117fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f490612d56565b60405180910390fd5b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156118a85750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156118fe5750600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156119a157601554811115611948576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161193f90612bd6565b60405180910390fd5b6014548161195584610c15565b61195f9190612e76565b11156119a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161199790612cf6565b60405180910390fd5b5b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611a4c5750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611aa25750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611b0057601454611ab383610c15565b82611abe9190612e76565b1115611aff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af690612c56565b60405180910390fd5b5b6000611b0b30610c15565b9050601260159054906101000a900460ff16158015611b785750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611b905750601260169054906101000a900460ff165b8015611b9c5750600081115b15611bc457611baa81611d3b565b60004790506000811115611bc257611bc147611fc3565b5b505b611c71848484600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611c6b5750600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561202f565b50505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6001601260156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611d7357611d72613231565b5b604051908082528060200260200182016040528015611da15781602001602082028036833780820191505090505b5090503081600081518110611db957611db8613202565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611e5b57600080fd5b505afa158015611e6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e9391906126c6565b81600181518110611ea757611ea6613202565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611f0e30601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846113cd565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611f72959493929190612dac565b600060405180830381600087803b158015611f8c57600080fd5b505af1158015611fa0573d6000803e3d6000fd5b50505050506000601260156101000a81548160ff02191690831515021790555050565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561202b573d6000803e3d6000fd5b5050565b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461207e91906130c8565b92505081905550600081612092578261209e565b61209d858585612162565b5b905080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546120ef9190612e76565b925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516121539190612d91565b60405180910390a35050505050565b6000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156121c357506000600854115b1561226657601060009054906101000a900461ffff1661ffff16600554836121eb919061306e565b6121f59190612ecc565b600d81905550601060009054906101000a900461ffff1661ffff166006548361221e919061306e565b6122289190612ecc565b600e81905550601060009054906101000a900461ffff1661ffff1660075483612251919061306e565b61225b9190612ecc565b600f81905550612365565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156122c557506000600c54115b1561236457601060009054906101000a900461ffff1661ffff16600954836122ed919061306e565b6122f79190612ecc565b600d81905550601060009054906101000a900461ffff1661ffff16600a5483612320919061306e565b61232a9190612ecc565b600e81905550601060009054906101000a900461ffff1661ffff16600b5483612353919061306e565b61235d9190612ecc565b600f819055505b5b600d5460016000601060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546123d89190612e76565b92505081905550601060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600d546040516124609190612d91565b60405180910390a3600e546001600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546124bb9190612e76565b92505081905550600e546013546124d291906130c8565b6013819055506124e0610872565b60138190555061dead73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600e546040516125479190612d91565b60405180910390a3600f54600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546125a09190612e76565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600f546040516126069190612d91565b60405180910390a36000600f54600e54600d546126239190612e76565b61262d9190612e76565b9050808361263b91906130c8565b9150509392505050565b60008135905061265481613617565b92915050565b60008151905061266981613617565b92915050565b60008151905061267e8161362e565b92915050565b60008135905061269381613645565b92915050565b6000602082840312156126af576126ae613260565b5b60006126bd84828501612645565b91505092915050565b6000602082840312156126dc576126db613260565b5b60006126ea8482850161265a565b91505092915050565b6000806040838503121561270a57612709613260565b5b600061271885828601612645565b925050602061272985828601612645565b9150509250929050565b60008060006060848603121561274c5761274b613260565b5b600061275a86828701612645565b935050602061276b86828701612645565b925050604061277c86828701612684565b9150509250925092565b6000806040838503121561279d5761279c613260565b5b60006127ab85828601612645565b92505060206127bc85828601612684565b9150509250929050565b6000602082840312156127dc576127db613260565b5b60006127ea8482850161266f565b91505092915050565b6000806040838503121561280a57612809613260565b5b600061281885828601612684565b925050602061282985828601612684565b9150509250929050565b600061283f838361284b565b60208301905092915050565b612854816130fc565b82525050565b612863816130fc565b82525050565b600061287482612e31565b61287e8185612e54565b935061288983612e21565b8060005b838110156128ba5781516128a18882612833565b97506128ac83612e47565b92505060018101905061288d565b5085935050505092915050565b6128d08161310e565b82525050565b6128df8161315f565b82525050565b60006128f082612e3c565b6128fa8185612e65565b935061290a818560208601613171565b61291381613265565b840191505092915050565b600061292b602383612e65565b915061293682613283565b604082019050919050565b600061294e601983612e65565b9150612959826132d2565b602082019050919050565b6000612971603183612e65565b915061297c826132fb565b604082019050919050565b6000612994602683612e65565b915061299f8261334a565b604082019050919050565b60006129b7602283612e65565b91506129c282613399565b604082019050919050565b60006129da602283612e65565b91506129e5826133e8565b604082019050919050565b60006129fd602883612e65565b9150612a0882613437565b604082019050919050565b6000612a20602083612e65565b9150612a2b82613486565b602082019050919050565b6000612a43602983612e65565b9150612a4e826134af565b604082019050919050565b6000612a66602583612e65565b9150612a71826134fe565b604082019050919050565b6000612a89601a83612e65565b9150612a948261354d565b602082019050919050565b6000612aac602483612e65565b9150612ab782613576565b604082019050919050565b6000612acf601783612e65565b9150612ada826135c5565b602082019050919050565b6000612af2601783612e65565b9150612afd826135ee565b602082019050919050565b612b118161311a565b82525050565b612b2081613148565b82525050565b612b2f81613152565b82525050565b6000602082019050612b4a600083018461285a565b92915050565b6000604082019050612b65600083018561285a565b612b726020830184612b17565b9392505050565b6000602082019050612b8e60008301846128c7565b92915050565b60006020820190508181036000830152612bae81846128e5565b905092915050565b60006020820190508181036000830152612bcf8161291e565b9050919050565b60006020820190508181036000830152612bef81612941565b9050919050565b60006020820190508181036000830152612c0f81612964565b9050919050565b60006020820190508181036000830152612c2f81612987565b9050919050565b60006020820190508181036000830152612c4f816129aa565b9050919050565b60006020820190508181036000830152612c6f816129cd565b9050919050565b60006020820190508181036000830152612c8f816129f0565b9050919050565b60006020820190508181036000830152612caf81612a13565b9050919050565b60006020820190508181036000830152612ccf81612a36565b9050919050565b60006020820190508181036000830152612cef81612a59565b9050919050565b60006020820190508181036000830152612d0f81612a7c565b9050919050565b60006020820190508181036000830152612d2f81612a9f565b9050919050565b60006020820190508181036000830152612d4f81612ac2565b9050919050565b60006020820190508181036000830152612d6f81612ae5565b9050919050565b6000602082019050612d8b6000830184612b08565b92915050565b6000602082019050612da66000830184612b17565b92915050565b600060a082019050612dc16000830188612b17565b612dce60208301876128d6565b8181036040830152612de08186612869565b9050612def606083018561285a565b612dfc6080830184612b17565b9695505050505050565b6000602082019050612e1b6000830184612b26565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612e8182613148565b9150612e8c83613148565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612ec157612ec06131a4565b5b828201905092915050565b6000612ed782613148565b9150612ee283613148565b925082612ef257612ef16131d3565b5b828204905092915050565b6000808291508390505b6001851115612f4757808604811115612f2357612f226131a4565b5b6001851615612f325780820291505b8081029050612f4085613276565b9450612f07565b94509492505050565b6000612f5b82613148565b9150612f6683613152565b9250612f937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612f9b565b905092915050565b600082612fab5760019050613067565b81612fb95760009050613067565b8160018114612fcf5760028114612fd957613008565b6001915050613067565b60ff841115612feb57612fea6131a4565b5b8360020a915084821115613002576130016131a4565b5b50613067565b5060208310610133831016604e8410600b841016171561303d5782820a905083811115613038576130376131a4565b5b613067565b61304a8484846001612efd565b92509050818404811115613061576130606131a4565b5b81810290505b9392505050565b600061307982613148565b915061308483613148565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156130bd576130bc6131a4565b5b828202905092915050565b60006130d382613148565b91506130de83613148565b9250828210156130f1576130f06131a4565b5b828203905092915050565b600061310782613128565b9050919050565b60008115159050919050565b600061ffff82169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061316a82613148565b9050919050565b60005b8381101561318f578082015181840152602081019050613174565b8381111561319e576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b7f596f752061726520747279696e6720746f207472616e73666572206d6f72652060008201527f7468616e20796f75722062616c616e6365000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f526563697069656e742065786365656473206d61782077616c6c65742073697a60008201527f652e000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b7f54726164696e67206e6f7420656e61626c656420796574000000000000000000600082015250565b613620816130fc565b811461362b57600080fd5b50565b6136378161310e565b811461364257600080fd5b50565b61364e81613148565b811461365957600080fd5b5056fea2646970667358221220d0d41699388fb5f5751f808e61c5a734162436a6cda2af970262c1667538661664736f6c63430008070033

Deployed Bytecode

0x6080604052600436106102085760003560e01c806384d6c8c611610118578063c9567bf9116100a0578063dd62ed3e1161006f578063dd62ed3e14610724578063ea2f0b3714610761578063ebece9c91461078a578063f239eab8146107b3578063f2fde38b146107de5761020f565b8063c9567bf91461068c578063c99f2fed146106a3578063cc70acee146106ce578063d0a39814146106f95761020f565b80639740a946116100e75780639740a946146105a55780639f71146d146105d0578063a8b08982146105f9578063a9059cbb14610624578063b9e93700146106615761020f565b806384d6c8c6146104f95780638da5cb5b14610524578063921369131461054f57806395d89b411461057a5761020f565b8063313ce5671161019b57806347afcbfe1161016a57806347afcbfe146104245780636cce46fc1461044f57806370a082311461047a578063715018a6146104b75780637bce5a04146104ce5761020f565b8063313ce567146103905780633722355c146103bb5780633e0c23b8146103e4578063437823ec146103fb5761020f565b806318160ddd116101d757806318160ddd146102d25780631d6167ac146102fd5780631f3fed8f1461032857806323b872dd146103535761020f565b806303fd2a451461021457806306fdde031461023f578063095ea7b31461026a5780630fa604e4146102a75761020f565b3661020f57005b600080fd5b34801561022057600080fd5b50610229610807565b6040516102369190612b35565b60405180910390f35b34801561024b57600080fd5b5061025461080d565b6040516102619190612b94565b60405180910390f35b34801561027657600080fd5b50610291600480360381019061028c9190612786565b61084a565b60405161029e9190612b79565b60405180910390f35b3480156102b357600080fd5b506102bc610868565b6040516102c99190612d91565b60405180910390f35b3480156102de57600080fd5b506102e7610872565b6040516102f49190612d91565b60405180910390f35b34801561030957600080fd5b5061031261087c565b60405161031f9190612d76565b60405180910390f35b34801561033457600080fd5b5061033d610890565b60405161034a9190612d91565b60405180910390f35b34801561035f57600080fd5b5061037a60048036038101906103759190612733565b610896565b6040516103879190612b79565b60405180910390f35b34801561039c57600080fd5b506103a5610997565b6040516103b29190612e06565b60405180910390f35b3480156103c757600080fd5b506103e260048036038101906103dd9190612699565b6109a0565b005b3480156103f057600080fd5b506103f9610a77565b005b34801561040757600080fd5b50610422600480360381019061041d9190612699565b610b32565b005b34801561043057600080fd5b50610439610c09565b6040516104469190612d91565b60405180910390f35b34801561045b57600080fd5b50610464610c0f565b6040516104719190612d91565b60405180910390f35b34801561048657600080fd5b506104a1600480360381019061049c9190612699565b610c15565b6040516104ae9190612d91565b60405180910390f35b3480156104c357600080fd5b506104cc610c5e565b005b3480156104da57600080fd5b506104e3610ce6565b6040516104f09190612d91565b60405180910390f35b34801561050557600080fd5b5061050e610cec565b60405161051b9190612d91565b60405180910390f35b34801561053057600080fd5b50610539610cf6565b6040516105469190612b35565b60405180910390f35b34801561055b57600080fd5b50610564610d1f565b6040516105719190612d91565b60405180910390f35b34801561058657600080fd5b5061058f610d25565b60405161059c9190612b94565b60405180910390f35b3480156105b157600080fd5b506105ba610d62565b6040516105c79190612d91565b60405180910390f35b3480156105dc57600080fd5b506105f760048036038101906105f29190612699565b610d68565b005b34801561060557600080fd5b5061060e610e3f565b60405161061b9190612b35565b60405180910390f35b34801561063057600080fd5b5061064b60048036038101906106469190612786565b610e65565b6040516106589190612b79565b60405180910390f35b34801561066d57600080fd5b50610676610e83565b6040516106839190612d91565b60405180910390f35b34801561069857600080fd5b506106a1610e89565b005b3480156106af57600080fd5b506106b8611099565b6040516106c59190612d91565b60405180910390f35b3480156106da57600080fd5b506106e361109f565b6040516106f09190612d91565b60405180910390f35b34801561070557600080fd5b5061070e6110a5565b60405161071b9190612d91565b60405180910390f35b34801561073057600080fd5b5061074b600480360381019061074691906126f3565b6110ab565b6040516107589190612d91565b60405180910390f35b34801561076d57600080fd5b5061078860048036038101906107839190612699565b611132565b005b34801561079657600080fd5b506107b160048036038101906107ac91906127f3565b611209565b005b3480156107bf57600080fd5b506107c86112c7565b6040516107d59190612d91565b60405180910390f35b3480156107ea57600080fd5b5061080560048036038101906108009190612699565b6112cd565b005b61dead81565b60606040518060400160405280600c81526020017f53756c74616e20466c6f6b690000000000000000000000000000000000000000815250905090565b600061085e6108576113c5565b84846113cd565b6001905092915050565b6000601454905090565b6000601354905090565b601060009054906101000a900461ffff1681565b600f5481565b60006108a3848484611598565b6000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006108ee6113c5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508281101561096e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161096590612c76565b60405180910390fd5b61098b8561097a6113c5565b858461098691906130c8565b6113cd565b60019150509392505050565b60006009905090565b6109a86113c5565b73ffffffffffffffffffffffffffffffffffffffff166109c6610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614610a1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1390612c96565b60405180910390fd5b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b610a7f6113c5565b73ffffffffffffffffffffffffffffffffffffffff16610a9d610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614610af3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aea90612c96565b60405180910390fd5b6101f46009819055506000600a819055506101f4600b81905550600b54600a54600954610b209190612e76565b610b2a9190612e76565b600c81905550565b610b3a6113c5565b73ffffffffffffffffffffffffffffffffffffffff16610b58610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614610bae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba590612c96565b60405180910390fd5b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600a5481565b60095481565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610c666113c5565b73ffffffffffffffffffffffffffffffffffffffff16610c84610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614610cda576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd190612c96565b60405180910390fd5b610ce46000611c77565b565b60075481565b6000601554905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600b5481565b60606040518060400160405280600681526020017f53464c4f4b490000000000000000000000000000000000000000000000000000815250905090565b600d5481565b610d706113c5565b73ffffffffffffffffffffffffffffffffffffffff16610d8e610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614610de4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ddb90612c96565b60405180910390fd5b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b601060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610e79610e726113c5565b8484611598565b6001905092915050565b60085481565b610e916113c5565b73ffffffffffffffffffffffffffffffffffffffff16610eaf610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614610f05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610efc90612c96565b60405180910390fd5b601260149054906101000a900460ff1615610f55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4c90612d36565b60405180910390fd5b6001601260166101000a81548160ff0219169083151502179055506509188a0d6a006015819055506509188a0d6a006014819055506001601260146101000a81548160ff021916908315150217905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611044929190612b50565b602060405180830381600087803b15801561105e57600080fd5b505af1158015611072573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109691906127c6565b50565b60065481565b600e5481565b600c5481565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61113a6113c5565b73ffffffffffffffffffffffffffffffffffffffff16611158610cf6565b73ffffffffffffffffffffffffffffffffffffffff16146111ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a590612c96565b60405180910390fd5b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6112116113c5565b73ffffffffffffffffffffffffffffffffffffffff1661122f610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614611285576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127c90612c96565b60405180910390fd5b6009600a6112939190612f50565b8261129e919061306e565b6015819055506009600a6112b29190612f50565b816112bd919061306e565b6014819055505050565b60055481565b6112d56113c5565b73ffffffffffffffffffffffffffffffffffffffff166112f3610cf6565b73ffffffffffffffffffffffffffffffffffffffff1614611349576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134090612c96565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156113b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113b090612c16565b60405180910390fd5b6113c281611c77565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561143d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143490612d16565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156114ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a490612c36565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161158b9190612d91565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611608576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ff90612cd6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611678576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166f90612bb6565b60405180910390fd5b600081116116bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b290612cb6565b60405180910390fd5b6116c483610c15565b811115611706576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116fd90612bf6565b60405180910390fd5b601260149054906101000a900460ff168061176a5750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806117be5750600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6117fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f490612d56565b60405180910390fd5b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156118a85750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156118fe5750600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156119a157601554811115611948576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161193f90612bd6565b60405180910390fd5b6014548161195584610c15565b61195f9190612e76565b11156119a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161199790612cf6565b60405180910390fd5b5b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611a4c5750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611aa25750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611b0057601454611ab383610c15565b82611abe9190612e76565b1115611aff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af690612c56565b60405180910390fd5b5b6000611b0b30610c15565b9050601260159054906101000a900460ff16158015611b785750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611b905750601260169054906101000a900460ff165b8015611b9c5750600081115b15611bc457611baa81611d3b565b60004790506000811115611bc257611bc147611fc3565b5b505b611c71848484600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611c6b5750600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561202f565b50505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6001601260156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611d7357611d72613231565b5b604051908082528060200260200182016040528015611da15781602001602082028036833780820191505090505b5090503081600081518110611db957611db8613202565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611e5b57600080fd5b505afa158015611e6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e9391906126c6565b81600181518110611ea757611ea6613202565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611f0e30601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846113cd565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611f72959493929190612dac565b600060405180830381600087803b158015611f8c57600080fd5b505af1158015611fa0573d6000803e3d6000fd5b50505050506000601260156101000a81548160ff02191690831515021790555050565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561202b573d6000803e3d6000fd5b5050565b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461207e91906130c8565b92505081905550600081612092578261209e565b61209d858585612162565b5b905080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546120ef9190612e76565b925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516121539190612d91565b60405180910390a35050505050565b6000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156121c357506000600854115b1561226657601060009054906101000a900461ffff1661ffff16600554836121eb919061306e565b6121f59190612ecc565b600d81905550601060009054906101000a900461ffff1661ffff166006548361221e919061306e565b6122289190612ecc565b600e81905550601060009054906101000a900461ffff1661ffff1660075483612251919061306e565b61225b9190612ecc565b600f81905550612365565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156122c557506000600c54115b1561236457601060009054906101000a900461ffff1661ffff16600954836122ed919061306e565b6122f79190612ecc565b600d81905550601060009054906101000a900461ffff1661ffff16600a5483612320919061306e565b61232a9190612ecc565b600e81905550601060009054906101000a900461ffff1661ffff16600b5483612353919061306e565b61235d9190612ecc565b600f819055505b5b600d5460016000601060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546123d89190612e76565b92505081905550601060029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600d546040516124609190612d91565b60405180910390a3600e546001600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546124bb9190612e76565b92505081905550600e546013546124d291906130c8565b6013819055506124e0610872565b60138190555061dead73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600e546040516125479190612d91565b60405180910390a3600f54600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546125a09190612e76565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600f546040516126069190612d91565b60405180910390a36000600f54600e54600d546126239190612e76565b61262d9190612e76565b9050808361263b91906130c8565b9150509392505050565b60008135905061265481613617565b92915050565b60008151905061266981613617565b92915050565b60008151905061267e8161362e565b92915050565b60008135905061269381613645565b92915050565b6000602082840312156126af576126ae613260565b5b60006126bd84828501612645565b91505092915050565b6000602082840312156126dc576126db613260565b5b60006126ea8482850161265a565b91505092915050565b6000806040838503121561270a57612709613260565b5b600061271885828601612645565b925050602061272985828601612645565b9150509250929050565b60008060006060848603121561274c5761274b613260565b5b600061275a86828701612645565b935050602061276b86828701612645565b925050604061277c86828701612684565b9150509250925092565b6000806040838503121561279d5761279c613260565b5b60006127ab85828601612645565b92505060206127bc85828601612684565b9150509250929050565b6000602082840312156127dc576127db613260565b5b60006127ea8482850161266f565b91505092915050565b6000806040838503121561280a57612809613260565b5b600061281885828601612684565b925050602061282985828601612684565b9150509250929050565b600061283f838361284b565b60208301905092915050565b612854816130fc565b82525050565b612863816130fc565b82525050565b600061287482612e31565b61287e8185612e54565b935061288983612e21565b8060005b838110156128ba5781516128a18882612833565b97506128ac83612e47565b92505060018101905061288d565b5085935050505092915050565b6128d08161310e565b82525050565b6128df8161315f565b82525050565b60006128f082612e3c565b6128fa8185612e65565b935061290a818560208601613171565b61291381613265565b840191505092915050565b600061292b602383612e65565b915061293682613283565b604082019050919050565b600061294e601983612e65565b9150612959826132d2565b602082019050919050565b6000612971603183612e65565b915061297c826132fb565b604082019050919050565b6000612994602683612e65565b915061299f8261334a565b604082019050919050565b60006129b7602283612e65565b91506129c282613399565b604082019050919050565b60006129da602283612e65565b91506129e5826133e8565b604082019050919050565b60006129fd602883612e65565b9150612a0882613437565b604082019050919050565b6000612a20602083612e65565b9150612a2b82613486565b602082019050919050565b6000612a43602983612e65565b9150612a4e826134af565b604082019050919050565b6000612a66602583612e65565b9150612a71826134fe565b604082019050919050565b6000612a89601a83612e65565b9150612a948261354d565b602082019050919050565b6000612aac602483612e65565b9150612ab782613576565b604082019050919050565b6000612acf601783612e65565b9150612ada826135c5565b602082019050919050565b6000612af2601783612e65565b9150612afd826135ee565b602082019050919050565b612b118161311a565b82525050565b612b2081613148565b82525050565b612b2f81613152565b82525050565b6000602082019050612b4a600083018461285a565b92915050565b6000604082019050612b65600083018561285a565b612b726020830184612b17565b9392505050565b6000602082019050612b8e60008301846128c7565b92915050565b60006020820190508181036000830152612bae81846128e5565b905092915050565b60006020820190508181036000830152612bcf8161291e565b9050919050565b60006020820190508181036000830152612bef81612941565b9050919050565b60006020820190508181036000830152612c0f81612964565b9050919050565b60006020820190508181036000830152612c2f81612987565b9050919050565b60006020820190508181036000830152612c4f816129aa565b9050919050565b60006020820190508181036000830152612c6f816129cd565b9050919050565b60006020820190508181036000830152612c8f816129f0565b9050919050565b60006020820190508181036000830152612caf81612a13565b9050919050565b60006020820190508181036000830152612ccf81612a36565b9050919050565b60006020820190508181036000830152612cef81612a59565b9050919050565b60006020820190508181036000830152612d0f81612a7c565b9050919050565b60006020820190508181036000830152612d2f81612a9f565b9050919050565b60006020820190508181036000830152612d4f81612ac2565b9050919050565b60006020820190508181036000830152612d6f81612ae5565b9050919050565b6000602082019050612d8b6000830184612b08565b92915050565b6000602082019050612da66000830184612b17565b92915050565b600060a082019050612dc16000830188612b17565b612dce60208301876128d6565b8181036040830152612de08186612869565b9050612def606083018561285a565b612dfc6080830184612b17565b9695505050505050565b6000602082019050612e1b6000830184612b26565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612e8182613148565b9150612e8c83613148565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612ec157612ec06131a4565b5b828201905092915050565b6000612ed782613148565b9150612ee283613148565b925082612ef257612ef16131d3565b5b828204905092915050565b6000808291508390505b6001851115612f4757808604811115612f2357612f226131a4565b5b6001851615612f325780820291505b8081029050612f4085613276565b9450612f07565b94509492505050565b6000612f5b82613148565b9150612f6683613152565b9250612f937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612f9b565b905092915050565b600082612fab5760019050613067565b81612fb95760009050613067565b8160018114612fcf5760028114612fd957613008565b6001915050613067565b60ff841115612feb57612fea6131a4565b5b8360020a915084821115613002576130016131a4565b5b50613067565b5060208310610133831016604e8410600b841016171561303d5782820a905083811115613038576130376131a4565b5b613067565b61304a8484846001612efd565b92509050818404811115613061576130606131a4565b5b81810290505b9392505050565b600061307982613148565b915061308483613148565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156130bd576130bc6131a4565b5b828202905092915050565b60006130d382613148565b91506130de83613148565b9250828210156130f1576130f06131a4565b5b828203905092915050565b600061310782613128565b9050919050565b60008115159050919050565b600061ffff82169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061316a82613148565b9050919050565b60005b8381101561318f578082015181840152602081019050613174565b8381111561319e576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b7f596f752061726520747279696e6720746f207472616e73666572206d6f72652060008201527f7468616e20796f75722062616c616e6365000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f526563697069656e742065786365656473206d61782077616c6c65742073697a60008201527f652e000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b7f54726164696e67206e6f7420656e61626c656420796574000000000000000000600082015250565b613620816130fc565b811461362b57600080fd5b50565b6136378161310e565b811461364257600080fd5b50565b61364e81613148565b811461365957600080fd5b5056fea2646970667358221220d0d41699388fb5f5751f808e61c5a734162436a6cda2af970262c1667538661664736f6c63430008070033

Deployed Bytecode Sourcemap

8604:10596:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9727:73;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12482:69;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13355:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12636:78;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12874:81;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9680:38;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9640:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13501:420;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12799:69;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18270:123;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18756:291;;;;;;;;;;;;;:::i;:::-;;18032:111;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9372:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9324:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12961:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7267:94;;;;;;;;;;;;;:::i;:::-;;9188:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12557:73;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7044:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9413:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12720:73;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9555:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18401:122;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9807:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13070:144;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9231:84;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12144:330;;;;;;;;;;;;;:::i;:::-;;9148:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9599:32;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9457:89;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13220:129;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18151:110;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18531:217;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9101:40;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7369:192;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9727:73;9758:42;9727:73;:::o;12482:69::-;12519:13;12543:5;;;;;;;;;;;;;;;;;12536:12;;12482:69;:::o;13355:138::-;13430:4;13438:39;13447:12;:10;:12::i;:::-;13461:7;13470:6;13438:8;:39::i;:::-;13486:4;13479:11;;13355:138;;;;:::o;12636:78::-;12680:7;12697:15;;12690:22;;12636:78;:::o;12874:81::-;12927:7;12945;;12938:14;;12874:81;:::o;9680:38::-;;;;;;;;;;;;;:::o;9640:33::-;;;;:::o;13501:420::-;13607:4;13624:36;13634:6;13642:9;13653:6;13624:9;:36::i;:::-;13673:24;13700:11;:19;13712:6;13700:19;;;;;;;;;;;;;;;:33;13720:12;:10;:12::i;:::-;13700:33;;;;;;;;;;;;;;;;13673:60;;13772:6;13752:16;:26;;13744:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;13834:57;13843:6;13851:12;:10;:12::i;:::-;13884:6;13865:16;:25;;;;:::i;:::-;13834:8;:57::i;:::-;13909:4;13902:11;;;13501:420;;;;;:::o;12799:69::-;12840:5;9091:1;12849:16;;12799:69;:::o;18270:123::-;7190:12;:10;:12::i;:::-;7179:23;;:7;:5;:7::i;:::-;:23;;;7171:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;18384:4:::1;18344:28;:37;18373:7;18344:37;;;;;;;;;;;;;;;;:44;;;;;;;;;;;;;;;;;;18270:123:::0;:::o;18756:291::-;7190:12;:10;:12::i;:::-;7179:23;;:7;:5;:7::i;:::-;:23;;;7171:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;18889:3:::1;18866:20;:26;;;;18921:1;18903:15;:19;;;;18952:3;18933:16;:22;;;;19023:16;;19005:15;;18982:20;;:38;;;;:::i;:::-;:57;;;;:::i;:::-;18966:13;:73;;;;18756:291::o:0;18032:111::-;7190:12;:10;:12::i;:::-;7179:23;;:7;:5;:7::i;:::-;:23;;;7171:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;18131:4:::1;18101:18;:27;18120:7;18101:27;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;;;;;;;18032:111:::0;:::o;9372:34::-;;;;:::o;9324:41::-;;;;:::o;12961:103::-;13027:7;13045;:16;13053:7;13045:16;;;;;;;;;;;;;;;;13038:23;;12961:103;;;:::o;7267:94::-;7190:12;:10;:12::i;:::-;7179:23;;:7;:5;:7::i;:::-;:23;;;7171:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7332:21:::1;7350:1;7332:9;:21::i;:::-;7267:94::o:0;9188:36::-;;;;:::o;12557:73::-;12600:7;12617:11;;12610:18;;12557:73;:::o;7044:87::-;7090:7;7117:6;;;;;;;;;;;7110:13;;7044:87;:::o;9413:37::-;;;;:::o;12720:73::-;12759:13;12783:7;;;;;;;;;;;;;;;;;12776:14;;12720:73;:::o;9555:37::-;;;;:::o;18401:122::-;7190:12;:10;:12::i;:::-;7179:23;;:7;:5;:7::i;:::-;:23;;;7171:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;18513:5:::1;18473:28;:37;18502:7;18473:37;;;;;;;;;;;;;;;;:45;;;;;;;;;;;;;;;;;;18401:122:::0;:::o;9807:26::-;;;;;;;;;;;;;:::o;13070:144::-;13148:4;13156:42;13166:12;:10;:12::i;:::-;13180:9;13191:6;13156:9;:42::i;:::-;13207:4;13200:11;;13070:144;;;;:::o;9231:84::-;;;;:::o;12144:330::-;7190:12;:10;:12::i;:::-;7179:23;;:7;:5;:7::i;:::-;:23;;;7171:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12208:11:::1;;;;;;;;;;;12207:12;12199:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;12271:4;12257:11;;:18;;;;;;;;;;;;;;;;;;12300:13;12286:11;:27;;;;12342:13;12324:15;:31;;;;12380:4;12366:11;;:18;;;;;;;;;;;;;;;;;;12402:13;;;;;;;;;;;12395:29;;;12433:15;;;;;;;;;;;12451:14;12395:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12144:330::o:0;9148:33::-;;;;:::o;9599:32::-;;;;:::o;9457:89::-;;;;:::o;13220:129::-;13301:7;13319:11;:18;13331:5;13319:18;;;;;;;;;;;;;;;:27;13338:7;13319:27;;;;;;;;;;;;;;;;13312:34;;13220:129;;;;:::o;18151:110::-;7190:12;:10;:12::i;:::-;7179:23;;:7;:5;:7::i;:::-;:23;;;7171:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;18248:5:::1;18218:18;:27;18237:7;18218:27;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;18151:110:::0;:::o;18531:217::-;7190:12;:10;:12::i;:::-;7179:23;;:7;:5;:7::i;:::-;:23;;;7171:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9091:1:::1;18666:2;:14;;;;:::i;:::-;18651:12;:29;;;;:::i;:::-;18637:11;:43;;;;9091:1;18726:2;:14;;;;:::i;:::-;18709;:31;;;;:::i;:::-;18691:15;:49;;;;18531:217:::0;;:::o;9101:40::-;;;;:::o;7369:192::-;7190:12;:10;:12::i;:::-;7179:23;;:7;:5;:7::i;:::-;:23;;;7171:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7478:1:::1;7458:22;;:8;:22;;;;7450:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;7534:19;7544:8;7534:9;:19::i;:::-;7369:192:::0;:::o;6465:98::-;6518:7;6545:10;6538:17;;6465:98;:::o;13929:335::-;14039:1;14022:19;;:5;:19;;;;14014:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14120:1;14101:21;;:7;:21;;;;14093:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14202:6;14172:11;:18;14184:5;14172:18;;;;;;;;;;;;;;;:27;14191:7;14172:27;;;;;;;;;;;;;;;:36;;;;14240:7;14224:32;;14233:5;14224:32;;;14249:6;14224:32;;;;;;:::i;:::-;;;;;;;;13929:335;;;:::o;14272:1576::-;14376:1;14360:18;;:4;:18;;;;14352:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14453:1;14439:16;;:2;:16;;;;14431:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;14523:1;14514:6;:10;14506:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;14599:15;14609:4;14599:9;:15::i;:::-;14589:6;:25;;14581:86;;;;;;;;;;;;:::i;:::-;;;;;;;;;14690:11;;;;;;;;;;;:39;;;;14705:18;:24;14724:4;14705:24;;;;;;;;;;;;;;;;;;;;;;;;;14690:39;:65;;;;14733:18;:22;14752:2;14733:22;;;;;;;;;;;;;;;;;;;;;;;;;14690:65;14682:101;;;;;;;;;;;;:::i;:::-;;;;;;;;;14808:13;;;;;;;;;;;14800:21;;:4;:21;;;:55;;;;;14839:15;;;;;;;;;;;14825:30;;:2;:30;;;;14800:55;:83;;;;;14861:18;:22;14880:2;14861:22;;;;;;;;;;;;;;;;;;;;;;;;;14859:24;14800:83;14796:278;;;14922:11;;14912:6;:21;;14904:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;15016:15;;15006:6;14990:13;15000:2;14990:9;:13::i;:::-;:22;;;;:::i;:::-;:41;;14982:80;;;;;;;;;;;;:::i;:::-;;;;;;;;;14796:278;15096:13;;;;;;;;;;;15088:21;;:4;:21;;;:55;;;;;15127:15;;;;;;;;;;;15113:30;;:2;:30;;;;15088:55;:93;;;;;15149:28;:32;15178:2;15149:32;;;;;;;;;;;;;;;;;;;;;;;;;15147:34;15088:93;15084:231;;;15249:15;;15232:13;15242:2;15232:9;:13::i;:::-;15223:6;:22;;;;:::i;:::-;:41;;15215:88;;;;;;;;;;;;:::i;:::-;;;;;;;;;15084:231;15327:28;15358:24;15376:4;15358:9;:24::i;:::-;15327:55;;15402:6;;;;;;;;;;;15401:7;:32;;;;;15420:13;;;;;;;;;;;15412:21;;:4;:21;;;;15401:32;:47;;;;;15437:11;;;;;;;;;;;15401:47;:73;;;;;15473:1;15452:20;:22;15401:73;15397:344;;;15495:38;15512:20;15495:16;:38::i;:::-;15552:26;15581:21;15552:50;;15645:1;15624:18;:22;15621:105;;;15671:35;15684:21;15671:12;:35::i;:::-;15621:105;15476:265;15397:344;15753:87;15768:4;15774:2;15778:6;15788:18;:24;15807:4;15788:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;15816:18;:22;15835:2;15816:22;;;;;;;;;;;;;;;;;;;;;;;;;15788:50;15786:53;15753:14;:87::i;:::-;14341:1507;14272:1576;;;:::o;7569:173::-;7625:16;7644:6;;;;;;;;;;;7625:25;;7670:8;7661:6;;:17;;;;;;;;;;;;;;;;;;7725:8;7694:40;;7715:8;7694:40;;;;;;;;;;;;7614:128;7569:173;:::o;15856:483::-;10334:4;10325:6;;:13;;;;;;;;;;;;;;;;;;15934:21:::1;15972:1;15958:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15934:40;;16003:4;15985;15990:1;15985:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;16029:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16019:4;16024:1;16019:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;16062:62;16079:4;16094:15;;;;;;;;;;;16112:11;16062:8;:62::i;:::-;16135:15;;;;;;;;;;;:66;;;16216:11;16242:1;16258:4;16285;16305:15;16135:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;15923:416;10370:5:::0;10361:6;;:14;;;;;;;;;;;;;;;;;;15856:483;:::o;19059:95::-;19116:13;;;;;;;;;;;:22;;:30;19139:6;19116:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19059:95;:::o;16347:340::-;16474:6;16455:7;:15;16463:6;16455:15;;;;;;;;;;;;;;;;:25;;;;;;;:::i;:::-;;;;;;;;16491:22;16517:7;16516:57;;16567:6;16516:57;;;16528:36;16538:6;16546:9;16557:6;16528:9;:36::i;:::-;16516:57;16491:82;;16606:14;16584:7;:18;16592:9;16584:18;;;;;;;;;;;;;;;;:36;;;;;;;:::i;:::-;;;;;;;;16653:9;16636:43;;16645:6;16636:43;;;16664:14;16636:43;;;;;;:::i;:::-;;;;;;;;16444:243;16347:340;;;;:::o;16695:1329::-;16774:7;16805:13;;;;;;;;;;;16797:21;;:4;:21;;;:41;;;;;16837:1;16822:12;;:16;16797:41;16794:637;;;16913:16;;;;;;;;;;;16882:47;;16891:19;;16882:6;:28;;;;:::i;:::-;:47;;;;:::i;:::-;16857:22;:72;;;;16990:16;;;;;;;;;;;16964:42;;16973:14;;16964:6;:23;;;;:::i;:::-;:42;;;;:::i;:::-;16944:17;:62;;;;17078:16;;;;;;;;;;;17051:43;;17060:15;;17051:6;:24;;;;:::i;:::-;:43;;;;:::i;:::-;17030:18;:64;;;;16794:637;;;17126:13;;;;;;;;;;;17120:19;;:2;:19;;;:41;;;;;17160:1;17144:13;;:17;17120:41;17116:315;;;17237:16;;;;;;;;;;;17205:48;;17214:20;;17205:6;:29;;;;:::i;:::-;:48;;;;:::i;:::-;17180:22;:73;;;;17315:16;;;;;;;;;;;17288:43;;17297:15;;17288:6;:24;;;;:::i;:::-;:43;;;;:::i;:::-;17268:17;:63;;;;17395:16;;;;;;;;;;;17367:44;;17376:16;;17367:6;:25;;;;:::i;:::-;:44;;;;:::i;:::-;17346:18;:65;;;;17116:315;16794:637;17465:22;;17441:7;:20;17449:11;;;;;;;;;;;17441:20;;;;;;;;;;;;;;;;:46;;;;;;;:::i;:::-;;;;;;;;17518:11;;;;;;;;;;;17503:51;;17512:4;17503:51;;;17531:22;;17503:51;;;;;;:::i;:::-;;;;;;;;17592:17;;17575:7;:13;9758:42;17575:13;;;;;;;;;;;;;;;;:34;;;;;;;:::i;:::-;;;;;;;;17640:17;;17630:7;;:27;;;;:::i;:::-;17620:7;:37;;;;17678:13;:11;:13::i;:::-;17668:7;:23;;;;9758:42;17707:39;;17716:4;17707:39;;;17728:17;;17707:39;;;;;;:::i;:::-;;;;;;;;17801:18;;17775:7;:22;17791:4;17775:22;;;;;;;;;;;;;;;;:44;;;;;;;:::i;:::-;;;;;;;;17858:4;17835:49;;17844:4;17835:49;;;17865:18;;17835:49;;;;;;:::i;:::-;;;;;;;;17897:17;17962:18;;17942:17;;17917:22;;:42;;;;:::i;:::-;:63;;;;:::i;:::-;17897:83;;18007:9;17998:6;:18;;;;:::i;:::-;17991:25;;;16695:1329;;;;;:::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:137::-;355:5;386:6;380:13;371:22;;402:30;426:5;402:30;:::i;:::-;301:137;;;;:::o;444:139::-;490:5;528:6;515:20;506:29;;544:33;571:5;544:33;:::i;:::-;444:139;;;;:::o;589:329::-;648:6;697:2;685:9;676:7;672:23;668:32;665:119;;;703:79;;:::i;:::-;665:119;823:1;848:53;893:7;884:6;873:9;869:22;848:53;:::i;:::-;838:63;;794:117;589:329;;;;:::o;924:351::-;994:6;1043:2;1031:9;1022:7;1018:23;1014:32;1011:119;;;1049:79;;:::i;:::-;1011:119;1169:1;1194:64;1250:7;1241:6;1230:9;1226:22;1194:64;:::i;:::-;1184:74;;1140:128;924:351;;;;:::o;1281:474::-;1349:6;1357;1406:2;1394:9;1385:7;1381:23;1377:32;1374:119;;;1412:79;;:::i;:::-;1374:119;1532:1;1557:53;1602:7;1593:6;1582:9;1578:22;1557:53;:::i;:::-;1547:63;;1503:117;1659:2;1685:53;1730:7;1721:6;1710:9;1706:22;1685:53;:::i;:::-;1675:63;;1630:118;1281:474;;;;;:::o;1761:619::-;1838:6;1846;1854;1903:2;1891:9;1882:7;1878:23;1874:32;1871:119;;;1909:79;;:::i;:::-;1871:119;2029:1;2054:53;2099:7;2090:6;2079:9;2075:22;2054:53;:::i;:::-;2044:63;;2000:117;2156:2;2182:53;2227:7;2218:6;2207:9;2203:22;2182:53;:::i;:::-;2172:63;;2127:118;2284:2;2310:53;2355:7;2346:6;2335:9;2331:22;2310:53;:::i;:::-;2300:63;;2255:118;1761:619;;;;;:::o;2386:474::-;2454:6;2462;2511:2;2499:9;2490:7;2486:23;2482:32;2479:119;;;2517:79;;:::i;:::-;2479:119;2637:1;2662:53;2707:7;2698:6;2687:9;2683:22;2662:53;:::i;:::-;2652:63;;2608:117;2764:2;2790:53;2835:7;2826:6;2815:9;2811:22;2790:53;:::i;:::-;2780:63;;2735:118;2386:474;;;;;:::o;2866:345::-;2933:6;2982:2;2970:9;2961:7;2957:23;2953:32;2950:119;;;2988:79;;:::i;:::-;2950:119;3108:1;3133:61;3186:7;3177:6;3166:9;3162:22;3133:61;:::i;:::-;3123:71;;3079:125;2866:345;;;;:::o;3217:474::-;3285:6;3293;3342:2;3330:9;3321:7;3317:23;3313:32;3310:119;;;3348:79;;:::i;:::-;3310:119;3468:1;3493:53;3538:7;3529:6;3518:9;3514:22;3493:53;:::i;:::-;3483:63;;3439:117;3595:2;3621:53;3666:7;3657:6;3646:9;3642:22;3621:53;:::i;:::-;3611:63;;3566:118;3217:474;;;;;:::o;3697:179::-;3766:10;3787:46;3829:3;3821:6;3787:46;:::i;:::-;3865:4;3860:3;3856:14;3842:28;;3697:179;;;;:::o;3882:108::-;3959:24;3977:5;3959:24;:::i;:::-;3954:3;3947:37;3882:108;;:::o;3996:118::-;4083:24;4101:5;4083:24;:::i;:::-;4078:3;4071:37;3996:118;;:::o;4150:732::-;4269:3;4298:54;4346:5;4298:54;:::i;:::-;4368:86;4447:6;4442:3;4368:86;:::i;:::-;4361:93;;4478:56;4528:5;4478:56;:::i;:::-;4557:7;4588:1;4573:284;4598:6;4595:1;4592:13;4573:284;;;4674:6;4668:13;4701:63;4760:3;4745:13;4701:63;:::i;:::-;4694:70;;4787:60;4840:6;4787:60;:::i;:::-;4777:70;;4633:224;4620:1;4617;4613:9;4608:14;;4573:284;;;4577:14;4873:3;4866:10;;4274:608;;;4150:732;;;;:::o;4888:109::-;4969:21;4984:5;4969:21;:::i;:::-;4964:3;4957:34;4888:109;;:::o;5003:147::-;5098:45;5137:5;5098:45;:::i;:::-;5093:3;5086:58;5003:147;;:::o;5156:364::-;5244:3;5272:39;5305:5;5272:39;:::i;:::-;5327:71;5391:6;5386:3;5327:71;:::i;:::-;5320:78;;5407:52;5452:6;5447:3;5440:4;5433:5;5429:16;5407:52;:::i;:::-;5484:29;5506:6;5484:29;:::i;:::-;5479:3;5475:39;5468:46;;5248:272;5156:364;;;;:::o;5526:366::-;5668:3;5689:67;5753:2;5748:3;5689:67;:::i;:::-;5682:74;;5765:93;5854:3;5765:93;:::i;:::-;5883:2;5878:3;5874:12;5867:19;;5526:366;;;:::o;5898:::-;6040:3;6061:67;6125:2;6120:3;6061:67;:::i;:::-;6054:74;;6137:93;6226:3;6137:93;:::i;:::-;6255:2;6250:3;6246:12;6239:19;;5898:366;;;:::o;6270:::-;6412:3;6433:67;6497:2;6492:3;6433:67;:::i;:::-;6426:74;;6509:93;6598:3;6509:93;:::i;:::-;6627:2;6622:3;6618:12;6611:19;;6270:366;;;:::o;6642:::-;6784:3;6805:67;6869:2;6864:3;6805:67;:::i;:::-;6798:74;;6881:93;6970:3;6881:93;:::i;:::-;6999:2;6994:3;6990:12;6983:19;;6642:366;;;:::o;7014:::-;7156:3;7177:67;7241:2;7236:3;7177:67;:::i;:::-;7170:74;;7253:93;7342:3;7253:93;:::i;:::-;7371:2;7366:3;7362:12;7355:19;;7014:366;;;:::o;7386:::-;7528:3;7549:67;7613:2;7608:3;7549:67;:::i;:::-;7542:74;;7625:93;7714:3;7625:93;:::i;:::-;7743:2;7738:3;7734:12;7727:19;;7386:366;;;:::o;7758:::-;7900:3;7921:67;7985:2;7980:3;7921:67;:::i;:::-;7914:74;;7997:93;8086:3;7997:93;:::i;:::-;8115:2;8110:3;8106:12;8099:19;;7758:366;;;:::o;8130:::-;8272:3;8293:67;8357:2;8352:3;8293:67;:::i;:::-;8286:74;;8369:93;8458:3;8369:93;:::i;:::-;8487:2;8482:3;8478:12;8471:19;;8130:366;;;:::o;8502:::-;8644:3;8665:67;8729:2;8724:3;8665:67;:::i;:::-;8658:74;;8741:93;8830:3;8741:93;:::i;:::-;8859:2;8854:3;8850:12;8843:19;;8502:366;;;:::o;8874:::-;9016:3;9037:67;9101:2;9096:3;9037:67;:::i;:::-;9030:74;;9113:93;9202:3;9113:93;:::i;:::-;9231:2;9226:3;9222:12;9215:19;;8874:366;;;:::o;9246:::-;9388:3;9409:67;9473:2;9468:3;9409:67;:::i;:::-;9402:74;;9485:93;9574:3;9485:93;:::i;:::-;9603:2;9598:3;9594:12;9587:19;;9246:366;;;:::o;9618:::-;9760:3;9781:67;9845:2;9840:3;9781:67;:::i;:::-;9774:74;;9857:93;9946:3;9857:93;:::i;:::-;9975:2;9970:3;9966:12;9959:19;;9618:366;;;:::o;9990:::-;10132:3;10153:67;10217:2;10212:3;10153:67;:::i;:::-;10146:74;;10229:93;10318:3;10229:93;:::i;:::-;10347:2;10342:3;10338:12;10331:19;;9990:366;;;:::o;10362:::-;10504:3;10525:67;10589:2;10584:3;10525:67;:::i;:::-;10518:74;;10601:93;10690:3;10601:93;:::i;:::-;10719:2;10714:3;10710:12;10703:19;;10362:366;;;:::o;10734:115::-;10819:23;10836:5;10819:23;:::i;:::-;10814:3;10807:36;10734:115;;:::o;10855:118::-;10942:24;10960:5;10942:24;:::i;:::-;10937:3;10930:37;10855:118;;:::o;10979:112::-;11062:22;11078:5;11062:22;:::i;:::-;11057:3;11050:35;10979:112;;:::o;11097:222::-;11190:4;11228:2;11217:9;11213:18;11205:26;;11241:71;11309:1;11298:9;11294:17;11285:6;11241:71;:::i;:::-;11097:222;;;;:::o;11325:332::-;11446:4;11484:2;11473:9;11469:18;11461:26;;11497:71;11565:1;11554:9;11550:17;11541:6;11497:71;:::i;:::-;11578:72;11646:2;11635:9;11631:18;11622:6;11578:72;:::i;:::-;11325:332;;;;;:::o;11663:210::-;11750:4;11788:2;11777:9;11773:18;11765:26;;11801:65;11863:1;11852:9;11848:17;11839:6;11801:65;:::i;:::-;11663:210;;;;:::o;11879:313::-;11992:4;12030:2;12019:9;12015:18;12007:26;;12079:9;12073:4;12069:20;12065:1;12054:9;12050:17;12043:47;12107:78;12180:4;12171:6;12107:78;:::i;:::-;12099:86;;11879:313;;;;:::o;12198:419::-;12364:4;12402:2;12391:9;12387:18;12379:26;;12451:9;12445:4;12441:20;12437:1;12426:9;12422:17;12415:47;12479:131;12605:4;12479:131;:::i;:::-;12471:139;;12198:419;;;:::o;12623:::-;12789:4;12827:2;12816:9;12812:18;12804:26;;12876:9;12870:4;12866:20;12862:1;12851:9;12847:17;12840:47;12904:131;13030:4;12904:131;:::i;:::-;12896:139;;12623:419;;;:::o;13048:::-;13214:4;13252:2;13241:9;13237:18;13229:26;;13301:9;13295:4;13291:20;13287:1;13276:9;13272:17;13265:47;13329:131;13455:4;13329:131;:::i;:::-;13321:139;;13048:419;;;:::o;13473:::-;13639:4;13677:2;13666:9;13662:18;13654:26;;13726:9;13720:4;13716:20;13712:1;13701:9;13697:17;13690:47;13754:131;13880:4;13754:131;:::i;:::-;13746:139;;13473:419;;;:::o;13898:::-;14064:4;14102:2;14091:9;14087:18;14079:26;;14151:9;14145:4;14141:20;14137:1;14126:9;14122:17;14115:47;14179:131;14305:4;14179:131;:::i;:::-;14171:139;;13898:419;;;:::o;14323:::-;14489:4;14527:2;14516:9;14512:18;14504:26;;14576:9;14570:4;14566:20;14562:1;14551:9;14547:17;14540:47;14604:131;14730:4;14604:131;:::i;:::-;14596:139;;14323:419;;;:::o;14748:::-;14914:4;14952:2;14941:9;14937:18;14929:26;;15001:9;14995:4;14991:20;14987:1;14976:9;14972:17;14965:47;15029:131;15155:4;15029:131;:::i;:::-;15021:139;;14748:419;;;:::o;15173:::-;15339:4;15377:2;15366:9;15362:18;15354:26;;15426:9;15420:4;15416:20;15412:1;15401:9;15397:17;15390:47;15454:131;15580:4;15454:131;:::i;:::-;15446:139;;15173:419;;;:::o;15598:::-;15764:4;15802:2;15791:9;15787:18;15779:26;;15851:9;15845:4;15841:20;15837:1;15826:9;15822:17;15815:47;15879:131;16005:4;15879:131;:::i;:::-;15871:139;;15598:419;;;:::o;16023:::-;16189:4;16227:2;16216:9;16212:18;16204:26;;16276:9;16270:4;16266:20;16262:1;16251:9;16247:17;16240:47;16304:131;16430:4;16304:131;:::i;:::-;16296:139;;16023:419;;;:::o;16448:::-;16614:4;16652:2;16641:9;16637:18;16629:26;;16701:9;16695:4;16691:20;16687:1;16676:9;16672:17;16665:47;16729:131;16855:4;16729:131;:::i;:::-;16721:139;;16448:419;;;:::o;16873:::-;17039:4;17077:2;17066:9;17062:18;17054:26;;17126:9;17120:4;17116:20;17112:1;17101:9;17097:17;17090:47;17154:131;17280:4;17154:131;:::i;:::-;17146:139;;16873:419;;;:::o;17298:::-;17464:4;17502:2;17491:9;17487:18;17479:26;;17551:9;17545:4;17541:20;17537:1;17526:9;17522:17;17515:47;17579:131;17705:4;17579:131;:::i;:::-;17571:139;;17298:419;;;:::o;17723:::-;17889:4;17927:2;17916:9;17912:18;17904:26;;17976:9;17970:4;17966:20;17962:1;17951:9;17947:17;17940:47;18004:131;18130:4;18004:131;:::i;:::-;17996:139;;17723:419;;;:::o;18148:218::-;18239:4;18277:2;18266:9;18262:18;18254:26;;18290:69;18356:1;18345:9;18341:17;18332:6;18290:69;:::i;:::-;18148:218;;;;:::o;18372:222::-;18465:4;18503:2;18492:9;18488:18;18480:26;;18516:71;18584:1;18573:9;18569:17;18560:6;18516:71;:::i;:::-;18372:222;;;;:::o;18600:831::-;18863:4;18901:3;18890:9;18886:19;18878:27;;18915:71;18983:1;18972:9;18968:17;18959:6;18915:71;:::i;:::-;18996:80;19072:2;19061:9;19057:18;19048:6;18996:80;:::i;:::-;19123:9;19117:4;19113:20;19108:2;19097:9;19093:18;19086:48;19151:108;19254:4;19245:6;19151:108;:::i;:::-;19143:116;;19269:72;19337:2;19326:9;19322:18;19313:6;19269:72;:::i;:::-;19351:73;19419:3;19408:9;19404:19;19395:6;19351:73;:::i;:::-;18600:831;;;;;;;;:::o;19437:214::-;19526:4;19564:2;19553:9;19549:18;19541:26;;19577:67;19641:1;19630:9;19626:17;19617:6;19577:67;:::i;:::-;19437:214;;;;:::o;19738:132::-;19805:4;19828:3;19820:11;;19858:4;19853:3;19849:14;19841:22;;19738:132;;;:::o;19876:114::-;19943:6;19977:5;19971:12;19961:22;;19876:114;;;:::o;19996:99::-;20048:6;20082:5;20076:12;20066:22;;19996:99;;;:::o;20101:113::-;20171:4;20203;20198:3;20194:14;20186:22;;20101:113;;;:::o;20220:184::-;20319:11;20353:6;20348:3;20341:19;20393:4;20388:3;20384:14;20369:29;;20220:184;;;;:::o;20410:169::-;20494:11;20528:6;20523:3;20516:19;20568:4;20563:3;20559:14;20544:29;;20410:169;;;;:::o;20585:305::-;20625:3;20644:20;20662:1;20644:20;:::i;:::-;20639:25;;20678:20;20696:1;20678:20;:::i;:::-;20673:25;;20832:1;20764:66;20760:74;20757:1;20754:81;20751:107;;;20838:18;;:::i;:::-;20751:107;20882:1;20879;20875:9;20868:16;;20585:305;;;;:::o;20896:185::-;20936:1;20953:20;20971:1;20953:20;:::i;:::-;20948:25;;20987:20;21005:1;20987:20;:::i;:::-;20982:25;;21026:1;21016:35;;21031:18;;:::i;:::-;21016:35;21073:1;21070;21066:9;21061:14;;20896:185;;;;:::o;21087:848::-;21148:5;21155:4;21179:6;21170:15;;21203:5;21194:14;;21217:712;21238:1;21228:8;21225:15;21217:712;;;21333:4;21328:3;21324:14;21318:4;21315:24;21312:50;;;21342:18;;:::i;:::-;21312:50;21392:1;21382:8;21378:16;21375:451;;;21807:4;21800:5;21796:16;21787:25;;21375:451;21857:4;21851;21847:15;21839:23;;21887:32;21910:8;21887:32;:::i;:::-;21875:44;;21217:712;;;21087:848;;;;;;;:::o;21941:281::-;21999:5;22023:23;22041:4;22023:23;:::i;:::-;22015:31;;22067:25;22083:8;22067:25;:::i;:::-;22055:37;;22111:104;22148:66;22138:8;22132:4;22111:104;:::i;:::-;22102:113;;21941:281;;;;:::o;22228:1073::-;22282:5;22473:8;22463:40;;22494:1;22485:10;;22496:5;;22463:40;22522:4;22512:36;;22539:1;22530:10;;22541:5;;22512:36;22608:4;22656:1;22651:27;;;;22692:1;22687:191;;;;22601:277;;22651:27;22669:1;22660:10;;22671:5;;;22687:191;22732:3;22722:8;22719:17;22716:43;;;22739:18;;:::i;:::-;22716:43;22788:8;22785:1;22781:16;22772:25;;22823:3;22816:5;22813:14;22810:40;;;22830:18;;:::i;:::-;22810:40;22863:5;;;22601:277;;22987:2;22977:8;22974:16;22968:3;22962:4;22959:13;22955:36;22937:2;22927:8;22924:16;22919:2;22913:4;22910:12;22906:35;22890:111;22887:246;;;23043:8;23037:4;23033:19;23024:28;;23078:3;23071:5;23068:14;23065:40;;;23085:18;;:::i;:::-;23065:40;23118:5;;22887:246;23158:42;23196:3;23186:8;23180:4;23177:1;23158:42;:::i;:::-;23143:57;;;;23232:4;23227:3;23223:14;23216:5;23213:25;23210:51;;;23241:18;;:::i;:::-;23210:51;23290:4;23283:5;23279:16;23270:25;;22228:1073;;;;;;:::o;23307:348::-;23347:7;23370:20;23388:1;23370:20;:::i;:::-;23365:25;;23404:20;23422:1;23404:20;:::i;:::-;23399:25;;23592:1;23524:66;23520:74;23517:1;23514:81;23509:1;23502:9;23495:17;23491:105;23488:131;;;23599:18;;:::i;:::-;23488:131;23647:1;23644;23640:9;23629:20;;23307:348;;;;:::o;23661:191::-;23701:4;23721:20;23739:1;23721:20;:::i;:::-;23716:25;;23755:20;23773:1;23755:20;:::i;:::-;23750:25;;23794:1;23791;23788:8;23785:34;;;23799:18;;:::i;:::-;23785:34;23844:1;23841;23837:9;23829:17;;23661:191;;;;:::o;23858:96::-;23895:7;23924:24;23942:5;23924:24;:::i;:::-;23913:35;;23858:96;;;:::o;23960:90::-;23994:7;24037:5;24030:13;24023:21;24012:32;;23960:90;;;:::o;24056:89::-;24092:7;24132:6;24125:5;24121:18;24110:29;;24056:89;;;:::o;24151:126::-;24188:7;24228:42;24221:5;24217:54;24206:65;;24151:126;;;:::o;24283:77::-;24320:7;24349:5;24338:16;;24283:77;;;:::o;24366:86::-;24401:7;24441:4;24434:5;24430:16;24419:27;;24366:86;;;:::o;24458:121::-;24516:9;24549:24;24567:5;24549:24;:::i;:::-;24536:37;;24458:121;;;:::o;24585:307::-;24653:1;24663:113;24677:6;24674:1;24671:13;24663:113;;;24762:1;24757:3;24753:11;24747:18;24743:1;24738:3;24734:11;24727:39;24699:2;24696:1;24692:10;24687:15;;24663:113;;;24794:6;24791:1;24788:13;24785:101;;;24874:1;24865:6;24860:3;24856:16;24849:27;24785:101;24634:258;24585:307;;;:::o;24898:180::-;24946:77;24943:1;24936:88;25043:4;25040:1;25033:15;25067:4;25064:1;25057:15;25084:180;25132:77;25129:1;25122:88;25229:4;25226:1;25219:15;25253:4;25250:1;25243:15;25270:180;25318:77;25315:1;25308:88;25415:4;25412:1;25405:15;25439:4;25436:1;25429:15;25456:180;25504:77;25501:1;25494:88;25601:4;25598:1;25591:15;25625:4;25622:1;25615:15;25765:117;25874:1;25871;25864:12;25888:102;25929:6;25980:2;25976:7;25971:2;25964:5;25960:14;25956:28;25946:38;;25888:102;;;:::o;25996:::-;26038:8;26085:5;26082:1;26078:13;26057:34;;25996:102;;;:::o;26104:222::-;26244:34;26240:1;26232:6;26228:14;26221:58;26313:5;26308:2;26300:6;26296:15;26289:30;26104:222;:::o;26332:175::-;26472:27;26468:1;26460:6;26456:14;26449:51;26332:175;:::o;26513:236::-;26653:34;26649:1;26641:6;26637:14;26630:58;26722:19;26717:2;26709:6;26705:15;26698:44;26513:236;:::o;26755:225::-;26895:34;26891:1;26883:6;26879:14;26872:58;26964:8;26959:2;26951:6;26947:15;26940:33;26755:225;:::o;26986:221::-;27126:34;27122:1;27114:6;27110:14;27103:58;27195:4;27190:2;27182:6;27178:15;27171:29;26986:221;:::o;27213:::-;27353:34;27349:1;27341:6;27337:14;27330:58;27422:4;27417:2;27409:6;27405:15;27398:29;27213:221;:::o;27440:227::-;27580:34;27576:1;27568:6;27564:14;27557:58;27649:10;27644:2;27636:6;27632:15;27625:35;27440:227;:::o;27673:182::-;27813:34;27809:1;27801:6;27797:14;27790:58;27673:182;:::o;27861:228::-;28001:34;27997:1;27989:6;27985:14;27978:58;28070:11;28065:2;28057:6;28053:15;28046:36;27861:228;:::o;28095:224::-;28235:34;28231:1;28223:6;28219:14;28212:58;28304:7;28299:2;28291:6;28287:15;28280:32;28095:224;:::o;28325:176::-;28465:28;28461:1;28453:6;28449:14;28442:52;28325:176;:::o;28507:223::-;28647:34;28643:1;28635:6;28631:14;28624:58;28716:6;28711:2;28703:6;28699:15;28692:31;28507:223;:::o;28736:173::-;28876:25;28872:1;28864:6;28860:14;28853:49;28736:173;:::o;28915:::-;29055:25;29051:1;29043:6;29039:14;29032:49;28915:173;:::o;29094:122::-;29167:24;29185:5;29167:24;:::i;:::-;29160:5;29157:35;29147:63;;29206:1;29203;29196:12;29147:63;29094:122;:::o;29222:116::-;29292:21;29307:5;29292:21;:::i;:::-;29285:5;29282:32;29272:60;;29328:1;29325;29318:12;29272:60;29222:116;:::o;29344:122::-;29417:24;29435:5;29417:24;:::i;:::-;29410:5;29407:35;29397:63;;29456:1;29453;29446:12;29397:63;29344:122;:::o

Swarm Source

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