ETH Price: $3,199.72 (-3.67%)

Token

(0x5ee06A297AB2B55fc5b01d6172209c03Cefc4010)
 

Overview

Max Total Supply

1,000,000,000,000 ERC-20 TOKEN*

Holders

35

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
2,208,665,013.597884606 ERC-20 TOKEN*

Value
$0.00
0xdeC2D0877aDfA3542a46a3960ECAa60Ef4b50E47
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:
SHIBARINGAN

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

//  .d8888b.  888    888 8888888 888888b.          d8888 8888888b.  8888888 888b    888  .d8888b.         d8888 888b    888 
// d88P  Y88b 888    888   888   888  "88b        d88888 888   Y88b   888   8888b   888 d88P  Y88b       d88888 8888b   888 
// Y88b.      888    888   888   888  .88P       d88P888 888    888   888   88888b  888 888    888      d88P888 88888b  888 
//  "Y888b.   8888888888   888   8888888K.      d88P 888 888   d88P   888   888Y88b 888 888            d88P 888 888Y88b 888 
//     "Y88b. 888    888   888   888  "Y88b    d88P  888 8888888P"    888   888 Y88b888 888  88888    d88P  888 888 Y88b888 
//       "888 888    888   888   888    888   d88P   888 888 T88b     888   888  Y88888 888    888   d88P   888 888  Y88888 
// Y88b  d88P 888    888   888   888   d88P  d8888888888 888  T88b    888   888   Y8888 Y88b  d88P  d8888888888 888   Y8888 
//  "Y8888P"  888    888 8888888 8888888P"  d88P     888 888   T88b 8888888 888    Y888  "Y8888P88 d88P     888 888    Y888 
// 01010011 01001000 01001001 01000010 01000001 01010010 01001001 01001110 01000111 01000001 01001110 
//
// telegram: https://t.me/shibaringan
// website: https://shibaringan.com
// twitter: https://twitter.com/shibaringan
//
// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.8.4;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

contract SHIBARINGAN is Context, IERC20, Ownable {
    
    using SafeMath for uint256;

    string private constant _name = "SHIBARINGAN";
    string private constant _symbol = "SHINGA";
    uint8 private constant _decimals = 9;

    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    mapping (address => uint256) private _buyMap;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1e12 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    
    // Jeets out Fee
    uint256 private _redisFeeJeets = 5;
    uint256 private _taxFeeJeets = 20;

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

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

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

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

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

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_developmentAddress] = true;
        _isExcludedFromFee[deadAddress] = true;
        
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

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

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

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

    function developmentWallet() public view returns (address) {
        return _developmentAddress;
    }

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

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

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

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

    function tokenFromReflection(uint256 rAmount)
        private
        view
        returns (uint256)
    {
        require(
            rAmount <= _rTotal,
            "Amount must be less than total reflections"
        );
        uint256 currentRate = _getRate();
        return rAmount.div(currentRate);
    }

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

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

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");

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

            if (to != uniswapV2Pair && to != _developmentAddress && to != address(this) && to != deadAddress) {
                require(balanceOf(to) + amount < _maxWalletSize, "TOKEN: Balance exceeds wallet size!");
            }
            
            uint256 contractTokenBalance = balanceOf(address(this));
            bool canSwap = contractTokenBalance > _swapTokensAtAmount;
            
            if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
                uint256 burntAmount = 0;
                if (_burnFee > 0) {
                    burntAmount = contractTokenBalance.mul(_burnFee).div(10**2);
                    burnTokens(burntAmount);
                }
                swapTokensForEth(contractTokenBalance - burntAmount);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
        
        bool takeFee = true;

        // Transfer Tokens
        if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) {
            takeFee = false;
        } else {
            // Set Fee for Buys
            if(from == uniswapV2Pair && to != address(uniswapV2Router)) {
                    _buyMap[to] = block.timestamp;
                    _redisFee = _redisFeeOnBuy;
                    _taxFee = _taxFeeOnBuy;
            }
    
            // Set Fee for Sells
            // TAX SELLERS 25% WHO SELL WITHIN 48 HOURS (13% development + 12% holders redistribution)
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                if (_buyMap[from] != 0 && (_buyMap[from] + timeJeets >= block.timestamp)) {
                    _redisFee = _redisFeeJeets;
                    _taxFee = _taxFeeJeets;
                } else {
                    _redisFee = _redisFeeOnSell;
                    _taxFee = _taxFeeOnSell;
                }
            }
        }

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

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

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }
    
    // Set minimum tokens required to swap.
    function setMinSwapTokensThreshold(uint256 swapTokensAtAmount) external {
        require(_msgSender() == _developmentAddress);
        _swapTokensAtAmount = swapTokensAtAmount;
    }

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

    // Set trading on/off
    function setTrading(bool _tradingOpen) public onlyOwner {
        tradingOpen = _tradingOpen;
    }

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

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

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

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

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

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

    receive() external payable {}

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

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

        return (tTransferAmount, tFee, tTeam);
    }

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

        return (rAmount, rTransferAmount, rFee);
    }

    function _getRate() private view returns (uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();

        return rSupply.div(tSupply);
    }

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

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

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

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

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

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"developmentWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setBurnFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountRedisJeets","type":"uint256"},{"internalType":"uint256","name":"amountTaxJeets","type":"uint256"}],"name":"setJeetsFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"setMaxTxnAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletSize","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"swapTokensAtAmount","type":"uint256"}],"name":"setMinSwapTokensThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountRefBuy","type":"uint256"},{"internalType":"uint256","name":"amountRefSell","type":"uint256"}],"name":"setRefFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountBuy","type":"uint256"},{"internalType":"uint256","name":"amountSell","type":"uint256"}],"name":"setTaxFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"hoursTime","type":"uint256"}],"name":"setTimeJeets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_tradingOpen","type":"bool"}],"name":"setTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"timeJeets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052683635c9adc5dea000006000196200001d9190620007de565b6000196200002c919062000765565b60075560056009556014600a556002600b55600b600c556002600d55600b600e55600d54600f55600e546010556001601155600f546012556010546013556011546014557386c7da50bf7c39dab20859c748e180ea100799a3601660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506154606017556000601960156101000a81548160ff0219169083151502179055506001601960166101000a81548160ff021916908315150217905550678ac7230489e80000601a556801a055690d9db80000601b5564e8d4a51000601c553480156200013057600080fd5b506000620001436200067f60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35060075460026000620001f86200067f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620002d757600080fd5b505afa158015620002ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003129190620006c7565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200037557600080fd5b505afa1580156200038a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003b09190620006c7565b6040518363ffffffff1660e01b8152600401620003cf9291906200071b565b602060405180830381600087803b158015620003ea57600080fd5b505af1158015620003ff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004259190620006c7565b601960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600660006200047b6200068760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160066000601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016006600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620006086200067f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef683635c9adc5dea0000060405162000670919062000748565b60405180910390a35062000893565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081519050620006c18162000879565b92915050565b600060208284031215620006e057620006df62000874565b5b6000620006f084828501620006b0565b91505092915050565b6200070481620007a0565b82525050565b6200071581620007d4565b82525050565b6000604082019050620007326000830185620006f9565b620007416020830184620006f9565b9392505050565b60006020820190506200075f60008301846200070a565b92915050565b60006200077282620007d4565b91506200077f83620007d4565b92508282101562000795576200079462000816565b5b828203905092915050565b6000620007ad82620007b4565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b6000620007eb82620007d4565b9150620007f883620007d4565b9250826200080b576200080a62000845565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600080fd5b6200088481620007a0565b81146200089057600080fd5b50565b613ced80620008a36000396000f3fe6080604052600436106101e75760003560e01c80637d1db4a511610102578063a9059cbb11610095578063e0f9f6a011610064578063e0f9f6a0146106c7578063ea1644d5146106f0578063f2fde38b14610719578063fe72c3c114610742576101ee565b8063a9059cbb146105f9578063c04a541414610636578063c552849014610661578063dd62ed3e1461068a576101ee565b80638f9a55c0116100d15780638f9a55c01461055157806395d89b411461057c57806398a5c315146105a75780639ec350ed146105d0576101ee565b80637d1db4a5146104a9578063881dce60146104d45780638da5cb5b146104fd5780638f70ccf714610528576101ee565b806338eea22d1161017a5780636fc3eaec116101495780636fc3eaec1461041557806370a082311461042c578063715018a61461046957806374010ece14610480576101ee565b806338eea22d1461036f57806349bd5a5e146103985780634bf2c7c9146103c35780636d8aa8f8146103ec576101ee565b806323b872dd116101b657806323b872dd146102b157806327c8f835146102ee5780632fd689e314610319578063313ce56714610344576101ee565b806306fdde03146101f3578063095ea7b31461021e5780631694505e1461025b57806318160ddd14610286576101ee565b366101ee57005b600080fd5b3480156101ff57600080fd5b5061020861076d565b60405161021591906132c9565b60405180910390f35b34801561022a57600080fd5b5061024560048036038101906102409190612e79565b6107aa565b6040516102529190613293565b60405180910390f35b34801561026757600080fd5b506102706107c8565b60405161027d91906132ae565b60405180910390f35b34801561029257600080fd5b5061029b6107ee565b6040516102a891906134cb565b60405180910390f35b3480156102bd57600080fd5b506102d860048036038101906102d39190612e26565b6107ff565b6040516102e59190613293565b60405180910390f35b3480156102fa57600080fd5b506103036108d8565b6040516103109190613278565b60405180910390f35b34801561032557600080fd5b5061032e6108de565b60405161033b91906134cb565b60405180910390f35b34801561035057600080fd5b506103596108e4565b6040516103669190613540565b60405180910390f35b34801561037b57600080fd5b5061039660048036038101906103919190612f13565b6108ed565b005b3480156103a457600080fd5b506103ad610996565b6040516103ba9190613278565b60405180910390f35b3480156103cf57600080fd5b506103ea60048036038101906103e59190612ee6565b6109bc565b005b3480156103f857600080fd5b50610413600480360381019061040e9190612eb9565b610a42565b005b34801561042157600080fd5b5061042a610af4565b005b34801561043857600080fd5b50610453600480360381019061044e9190612d8c565b610b66565b60405161046091906134cb565b60405180910390f35b34801561047557600080fd5b5061047e610bb7565b005b34801561048c57600080fd5b506104a760048036038101906104a29190612ee6565b610d0a565b005b3480156104b557600080fd5b506104be610dc0565b6040516104cb91906134cb565b60405180910390f35b3480156104e057600080fd5b506104fb60048036038101906104f69190612ee6565b610dc6565b005b34801561050957600080fd5b50610512610e8a565b60405161051f9190613278565b60405180910390f35b34801561053457600080fd5b5061054f600480360381019061054a9190612eb9565b610eb3565b005b34801561055d57600080fd5b50610566610f65565b60405161057391906134cb565b60405180910390f35b34801561058857600080fd5b50610591610f6b565b60405161059e91906132c9565b60405180910390f35b3480156105b357600080fd5b506105ce60048036038101906105c99190612ee6565b610fa8565b005b3480156105dc57600080fd5b506105f760048036038101906105f29190612f13565b611013565b005b34801561060557600080fd5b50610620600480360381019061061b9190612e79565b6110bc565b60405161062d9190613293565b60405180910390f35b34801561064257600080fd5b5061064b6110da565b6040516106589190613278565b60405180910390f35b34801561066d57600080fd5b5061068860048036038101906106839190612f13565b611104565b005b34801561069657600080fd5b506106b160048036038101906106ac9190612de6565b6111ad565b6040516106be91906134cb565b60405180910390f35b3480156106d357600080fd5b506106ee60048036038101906106e99190612ee6565b611234565b005b3480156106fc57600080fd5b5061071760048036038101906107129190612ee6565b6112c7565b005b34801561072557600080fd5b50610740600480360381019061073b9190612d8c565b611332565b005b34801561074e57600080fd5b506107576114f4565b60405161076491906134cb565b60405180910390f35b60606040518060400160405280600b81526020017f534849424152494e47414e000000000000000000000000000000000000000000815250905090565b60006107be6107b76114fa565b8484611502565b6001905092915050565b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000683635c9adc5dea00000905090565b600061080c8484846116cd565b6108cd846108186114fa565b6108c885604051806060016040528060288152602001613c9060289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061087e6114fa565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546122109092919063ffffffff16565b611502565b600190509392505050565b61dead81565b601c5481565b60006009905090565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661092e6114fa565b73ffffffffffffffffffffffffffffffffffffffff161461094e57600080fd5b600082101580156109605750601e8211155b61096957600080fd5b6000811015801561097b5750601e8111155b61098457600080fd5b81600b8190555080600d819055505050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109fd6114fa565b73ffffffffffffffffffffffffffffffffffffffff1614610a1d57600080fd5b60008110158015610a2f5750601e8111155b610a3857600080fd5b8060118190555050565b610a4a6114fa565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ad7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ace9061340b565b60405180910390fd5b80601960166101000a81548160ff02191690831515021790555050565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b356114fa565b73ffffffffffffffffffffffffffffffffffffffff1614610b5557600080fd5b6000479050610b6381612274565b50565b6000610bb0600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546122e0565b9050919050565b610bbf6114fa565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c439061340b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d4b6114fa565b73ffffffffffffffffffffffffffffffffffffffff1614610d6b57600080fd5b670de0b6b3a7640000811015610db6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dad906133cb565b60405180910390fd5b80601a8190555050565b601a5481565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610e076114fa565b73ffffffffffffffffffffffffffffffffffffffff1614610e2757600080fd5b610e3030610b66565b8111158015610e3f5750600081115b610e7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e75906134ab565b60405180910390fd5b610e878161234e565b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610ebb6114fa565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f48576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f3f9061340b565b60405180910390fd5b80601960146101000a81548160ff02191690831515021790555050565b601b5481565b60606040518060400160405280600681526020017f5348494e47410000000000000000000000000000000000000000000000000000815250905090565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610fe96114fa565b73ffffffffffffffffffffffffffffffffffffffff161461100957600080fd5b80601c8190555050565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166110546114fa565b73ffffffffffffffffffffffffffffffffffffffff161461107457600080fd5b600082101580156110865750601e8211155b61108f57600080fd5b600081101580156110a15750601e8111155b6110aa57600080fd5b8160098190555080600a819055505050565b60006110d06110c96114fa565b84846116cd565b6001905092915050565b6000601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166111456114fa565b73ffffffffffffffffffffffffffffffffffffffff161461116557600080fd5b600082101580156111775750601e8211155b61118057600080fd5b600081101580156111925750601e8111155b61119b57600080fd5b81600c8190555080600e819055505050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166112756114fa565b73ffffffffffffffffffffffffffffffffffffffff161461129557600080fd5b600081101580156112a7575060c88111155b6112b057600080fd5b610e10816112be9190613637565b60178190555050565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166113086114fa565b73ffffffffffffffffffffffffffffffffffffffff161461132857600080fd5b80601b8190555050565b61133a6114fa565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113be9061340b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611437576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142e9061336b565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60175481565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611572576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115699061348b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d99061338b565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516116c091906134cb565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561173d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117349061344b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156117ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117a4906132eb565b60405180910390fd5b600081116117f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e79061342b565b60405180910390fd5b6117f8610e8a565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156118665750611836610e8a565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611e1257601960149054906101000a900460ff166118ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118b19061330b565b60405180910390fd5b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480156119655750601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611ad2573073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156119d257503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611a2c5750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611a865750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611ad157601a54811115611ad0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac79061334b565b60405180910390fd5b5b5b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614158015611b7e5750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611bb657503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611bf0575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611c4d57601b5481611c0284610b66565b611c0c91906135b0565b10611c4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c439061346b565b60405180910390fd5b5b6000611c5830610b66565b90506000601c5482119050808015611c7d5750601960159054906101000a900460ff16155b8015611cd75750601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b8015611cef5750601960169054906101000a900460ff165b8015611d455750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611d9b5750600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611e0f576000806011541115611de057611dd46064611dc6601154866125d690919063ffffffff16565b61265190919063ffffffff16565b9050611ddf8161269b565b5b611df48184611def9190613691565b61234e565b60004790506000811115611e0c57611e0b47612274565b5b50505b50505b600060019050600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611eb95750600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80611f6c5750601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611f6b5750601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b15611f7a57600090506121fe565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156120255750601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156120815742600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600b54600f81905550600c546010819055505b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561212c5750601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156121fd576000600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054141580156121cd575042601754600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121ca91906135b0565b10155b156121e957600954600f81905550600a546010819055506121fc565b600d54600f81905550600e546010819055505b5b5b61220a848484846126ab565b50505050565b6000838311158290612258576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161224f91906132c9565b60405180910390fd5b50600083856122679190613691565b9050809150509392505050565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156122dc573d6000803e3d6000fd5b5050565b6000600754821115612327576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161231e9061332b565b60405180910390fd5b60006123316126d8565b9050612346818461265190919063ffffffff16565b915050919050565b6001601960156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561238657612385613822565b5b6040519080825280602002602001820160405280156123b45781602001602082028036833780820191505090505b50905030816000815181106123cc576123cb6137f3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561246e57600080fd5b505afa158015612482573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124a69190612db9565b816001815181106124ba576124b96137f3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061252130601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611502565b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016125859594939291906134e6565b600060405180830381600087803b15801561259f57600080fd5b505af11580156125b3573d6000803e3d6000fd5b50505050506000601960156101000a81548160ff02191690831515021790555050565b6000808314156125e9576000905061264b565b600082846125f79190613637565b90508284826126069190613606565b14612646576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161263d906133eb565b60405180910390fd5b809150505b92915050565b600061269383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612703565b905092915050565b6126a83061dead836116cd565b50565b806126b9576126b8612766565b5b6126c48484846127c8565b806126d2576126d1612993565b5b50505050565b60008060006126e56129b0565b915091506126fc818361265190919063ffffffff16565b9250505090565b6000808311829061274a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161274191906132c9565b60405180910390fd5b50600083856127599190613606565b9050809150509392505050565b6000600f5414801561277a57506000601054145b801561278857506000601154145b15612792576127c6565b600f546012819055506010546013819055506011546014819055506000600f81905550600060108190555060006011819055505b565b6000806000806000806127da87612a12565b95509550955095509550955061283886600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612a7a90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506128cd85600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612ac490919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061291981612b22565b6129238483612bdf565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161298091906134cb565b60405180910390a3505050505050505050565b601254600f81905550601354601081905550601454601181905550565b600080600060075490506000683635c9adc5dea0000090506129e6683635c9adc5dea0000060075461265190919063ffffffff16565b821015612a0557600754683635c9adc5dea00000935093505050612a0e565b81819350935050505b9091565b6000806000806000806000806000612a2f8a600f54601054612c19565b9250925092506000612a3f6126d8565b90506000806000612a528e878787612caf565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b6000612abc83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612210565b905092915050565b6000808284612ad391906135b0565b905083811015612b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b0f906133ab565b60405180910390fd5b8091505092915050565b6000612b2c6126d8565b90506000612b4382846125d690919063ffffffff16565b9050612b9781600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612ac490919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b612bf482600754612a7a90919063ffffffff16565b600781905550612c0f81600854612ac490919063ffffffff16565b6008819055505050565b600080600080612c456064612c37888a6125d690919063ffffffff16565b61265190919063ffffffff16565b90506000612c6f6064612c61888b6125d690919063ffffffff16565b61265190919063ffffffff16565b90506000612c9882612c8a858c612a7a90919063ffffffff16565b612a7a90919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080612cc885896125d690919063ffffffff16565b90506000612cdf86896125d690919063ffffffff16565b90506000612cf687896125d690919063ffffffff16565b90506000612d1f82612d118587612a7a90919063ffffffff16565b612a7a90919063ffffffff16565b9050838184965096509650505050509450945094915050565b600081359050612d4781613c4a565b92915050565b600081519050612d5c81613c4a565b92915050565b600081359050612d7181613c61565b92915050565b600081359050612d8681613c78565b92915050565b600060208284031215612da257612da1613851565b5b6000612db084828501612d38565b91505092915050565b600060208284031215612dcf57612dce613851565b5b6000612ddd84828501612d4d565b91505092915050565b60008060408385031215612dfd57612dfc613851565b5b6000612e0b85828601612d38565b9250506020612e1c85828601612d38565b9150509250929050565b600080600060608486031215612e3f57612e3e613851565b5b6000612e4d86828701612d38565b9350506020612e5e86828701612d38565b9250506040612e6f86828701612d77565b9150509250925092565b60008060408385031215612e9057612e8f613851565b5b6000612e9e85828601612d38565b9250506020612eaf85828601612d77565b9150509250929050565b600060208284031215612ecf57612ece613851565b5b6000612edd84828501612d62565b91505092915050565b600060208284031215612efc57612efb613851565b5b6000612f0a84828501612d77565b91505092915050565b60008060408385031215612f2a57612f29613851565b5b6000612f3885828601612d77565b9250506020612f4985828601612d77565b9150509250929050565b6000612f5f8383612f6b565b60208301905092915050565b612f74816136c5565b82525050565b612f83816136c5565b82525050565b6000612f948261356b565b612f9e818561358e565b9350612fa98361355b565b8060005b83811015612fda578151612fc18882612f53565b9750612fcc83613581565b925050600181019050612fad565b5085935050505092915050565b612ff0816136d7565b82525050565b612fff8161371a565b82525050565b61300e8161372c565b82525050565b600061301f82613576565b613029818561359f565b9350613039818560208601613762565b61304281613856565b840191505092915050565b600061305a60238361359f565b915061306582613867565b604082019050919050565b600061307d60188361359f565b9150613088826138b6565b602082019050919050565b60006130a0602a8361359f565b91506130ab826138df565b604082019050919050565b60006130c3601c8361359f565b91506130ce8261392e565b602082019050919050565b60006130e660268361359f565b91506130f182613957565b604082019050919050565b600061310960228361359f565b9150613114826139a6565b604082019050919050565b600061312c601b8361359f565b9150613137826139f5565b602082019050919050565b600061314f60348361359f565b915061315a82613a1e565b604082019050919050565b600061317260218361359f565b915061317d82613a6d565b604082019050919050565b600061319560208361359f565b91506131a082613abc565b602082019050919050565b60006131b860298361359f565b91506131c382613ae5565b604082019050919050565b60006131db60258361359f565b91506131e682613b34565b604082019050919050565b60006131fe60238361359f565b915061320982613b83565b604082019050919050565b600061322160248361359f565b915061322c82613bd2565b604082019050919050565b6000613244600c8361359f565b915061324f82613c21565b602082019050919050565b61326381613703565b82525050565b6132728161370d565b82525050565b600060208201905061328d6000830184612f7a565b92915050565b60006020820190506132a86000830184612fe7565b92915050565b60006020820190506132c36000830184612ff6565b92915050565b600060208201905081810360008301526132e38184613014565b905092915050565b600060208201905081810360008301526133048161304d565b9050919050565b6000602082019050818103600083015261332481613070565b9050919050565b6000602082019050818103600083015261334481613093565b9050919050565b60006020820190508181036000830152613364816130b6565b9050919050565b60006020820190508181036000830152613384816130d9565b9050919050565b600060208201905081810360008301526133a4816130fc565b9050919050565b600060208201905081810360008301526133c48161311f565b9050919050565b600060208201905081810360008301526133e481613142565b9050919050565b6000602082019050818103600083015261340481613165565b9050919050565b6000602082019050818103600083015261342481613188565b9050919050565b60006020820190508181036000830152613444816131ab565b9050919050565b60006020820190508181036000830152613464816131ce565b9050919050565b60006020820190508181036000830152613484816131f1565b9050919050565b600060208201905081810360008301526134a481613214565b9050919050565b600060208201905081810360008301526134c481613237565b9050919050565b60006020820190506134e0600083018461325a565b92915050565b600060a0820190506134fb600083018861325a565b6135086020830187613005565b818103604083015261351a8186612f89565b90506135296060830185612f7a565b613536608083018461325a565b9695505050505050565b60006020820190506135556000830184613269565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006135bb82613703565b91506135c683613703565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156135fb576135fa613795565b5b828201905092915050565b600061361182613703565b915061361c83613703565b92508261362c5761362b6137c4565b5b828204905092915050565b600061364282613703565b915061364d83613703565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561368657613685613795565b5b828202905092915050565b600061369c82613703565b91506136a783613703565b9250828210156136ba576136b9613795565b5b828203905092915050565b60006136d0826136e3565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006137258261373e565b9050919050565b600061373782613703565b9050919050565b600061374982613750565b9050919050565b600061375b826136e3565b9050919050565b60005b83811015613780578082015181840152602081019050613765565b8381111561378f576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f54726164696e67206e6f742079657420656e61626c6564210000000000000000600082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f4d6178696d756d207472616e73616374696f6e20616d6f756e74206d7573742060008201527f62652067726561746572207468616e20302e3125000000000000000000000000602082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a2042616c616e636520657863656564732077616c6c657420736960008201527f7a65210000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f57726f6e6720616d6f756e740000000000000000000000000000000000000000600082015250565b613c53816136c5565b8114613c5e57600080fd5b50565b613c6a816136d7565b8114613c7557600080fd5b50565b613c8181613703565b8114613c8c57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122092f722153e25e55528987f7bd09abff1c64c3a2f1c0a171b1bce942f9fd1cd7d64736f6c63430008070033

Deployed Bytecode

0x6080604052600436106101e75760003560e01c80637d1db4a511610102578063a9059cbb11610095578063e0f9f6a011610064578063e0f9f6a0146106c7578063ea1644d5146106f0578063f2fde38b14610719578063fe72c3c114610742576101ee565b8063a9059cbb146105f9578063c04a541414610636578063c552849014610661578063dd62ed3e1461068a576101ee565b80638f9a55c0116100d15780638f9a55c01461055157806395d89b411461057c57806398a5c315146105a75780639ec350ed146105d0576101ee565b80637d1db4a5146104a9578063881dce60146104d45780638da5cb5b146104fd5780638f70ccf714610528576101ee565b806338eea22d1161017a5780636fc3eaec116101495780636fc3eaec1461041557806370a082311461042c578063715018a61461046957806374010ece14610480576101ee565b806338eea22d1461036f57806349bd5a5e146103985780634bf2c7c9146103c35780636d8aa8f8146103ec576101ee565b806323b872dd116101b657806323b872dd146102b157806327c8f835146102ee5780632fd689e314610319578063313ce56714610344576101ee565b806306fdde03146101f3578063095ea7b31461021e5780631694505e1461025b57806318160ddd14610286576101ee565b366101ee57005b600080fd5b3480156101ff57600080fd5b5061020861076d565b60405161021591906132c9565b60405180910390f35b34801561022a57600080fd5b5061024560048036038101906102409190612e79565b6107aa565b6040516102529190613293565b60405180910390f35b34801561026757600080fd5b506102706107c8565b60405161027d91906132ae565b60405180910390f35b34801561029257600080fd5b5061029b6107ee565b6040516102a891906134cb565b60405180910390f35b3480156102bd57600080fd5b506102d860048036038101906102d39190612e26565b6107ff565b6040516102e59190613293565b60405180910390f35b3480156102fa57600080fd5b506103036108d8565b6040516103109190613278565b60405180910390f35b34801561032557600080fd5b5061032e6108de565b60405161033b91906134cb565b60405180910390f35b34801561035057600080fd5b506103596108e4565b6040516103669190613540565b60405180910390f35b34801561037b57600080fd5b5061039660048036038101906103919190612f13565b6108ed565b005b3480156103a457600080fd5b506103ad610996565b6040516103ba9190613278565b60405180910390f35b3480156103cf57600080fd5b506103ea60048036038101906103e59190612ee6565b6109bc565b005b3480156103f857600080fd5b50610413600480360381019061040e9190612eb9565b610a42565b005b34801561042157600080fd5b5061042a610af4565b005b34801561043857600080fd5b50610453600480360381019061044e9190612d8c565b610b66565b60405161046091906134cb565b60405180910390f35b34801561047557600080fd5b5061047e610bb7565b005b34801561048c57600080fd5b506104a760048036038101906104a29190612ee6565b610d0a565b005b3480156104b557600080fd5b506104be610dc0565b6040516104cb91906134cb565b60405180910390f35b3480156104e057600080fd5b506104fb60048036038101906104f69190612ee6565b610dc6565b005b34801561050957600080fd5b50610512610e8a565b60405161051f9190613278565b60405180910390f35b34801561053457600080fd5b5061054f600480360381019061054a9190612eb9565b610eb3565b005b34801561055d57600080fd5b50610566610f65565b60405161057391906134cb565b60405180910390f35b34801561058857600080fd5b50610591610f6b565b60405161059e91906132c9565b60405180910390f35b3480156105b357600080fd5b506105ce60048036038101906105c99190612ee6565b610fa8565b005b3480156105dc57600080fd5b506105f760048036038101906105f29190612f13565b611013565b005b34801561060557600080fd5b50610620600480360381019061061b9190612e79565b6110bc565b60405161062d9190613293565b60405180910390f35b34801561064257600080fd5b5061064b6110da565b6040516106589190613278565b60405180910390f35b34801561066d57600080fd5b5061068860048036038101906106839190612f13565b611104565b005b34801561069657600080fd5b506106b160048036038101906106ac9190612de6565b6111ad565b6040516106be91906134cb565b60405180910390f35b3480156106d357600080fd5b506106ee60048036038101906106e99190612ee6565b611234565b005b3480156106fc57600080fd5b5061071760048036038101906107129190612ee6565b6112c7565b005b34801561072557600080fd5b50610740600480360381019061073b9190612d8c565b611332565b005b34801561074e57600080fd5b506107576114f4565b60405161076491906134cb565b60405180910390f35b60606040518060400160405280600b81526020017f534849424152494e47414e000000000000000000000000000000000000000000815250905090565b60006107be6107b76114fa565b8484611502565b6001905092915050565b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000683635c9adc5dea00000905090565b600061080c8484846116cd565b6108cd846108186114fa565b6108c885604051806060016040528060288152602001613c9060289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061087e6114fa565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546122109092919063ffffffff16565b611502565b600190509392505050565b61dead81565b601c5481565b60006009905090565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661092e6114fa565b73ffffffffffffffffffffffffffffffffffffffff161461094e57600080fd5b600082101580156109605750601e8211155b61096957600080fd5b6000811015801561097b5750601e8111155b61098457600080fd5b81600b8190555080600d819055505050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109fd6114fa565b73ffffffffffffffffffffffffffffffffffffffff1614610a1d57600080fd5b60008110158015610a2f5750601e8111155b610a3857600080fd5b8060118190555050565b610a4a6114fa565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ad7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ace9061340b565b60405180910390fd5b80601960166101000a81548160ff02191690831515021790555050565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b356114fa565b73ffffffffffffffffffffffffffffffffffffffff1614610b5557600080fd5b6000479050610b6381612274565b50565b6000610bb0600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546122e0565b9050919050565b610bbf6114fa565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c439061340b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d4b6114fa565b73ffffffffffffffffffffffffffffffffffffffff1614610d6b57600080fd5b670de0b6b3a7640000811015610db6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dad906133cb565b60405180910390fd5b80601a8190555050565b601a5481565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610e076114fa565b73ffffffffffffffffffffffffffffffffffffffff1614610e2757600080fd5b610e3030610b66565b8111158015610e3f5750600081115b610e7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e75906134ab565b60405180910390fd5b610e878161234e565b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610ebb6114fa565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f48576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f3f9061340b565b60405180910390fd5b80601960146101000a81548160ff02191690831515021790555050565b601b5481565b60606040518060400160405280600681526020017f5348494e47410000000000000000000000000000000000000000000000000000815250905090565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610fe96114fa565b73ffffffffffffffffffffffffffffffffffffffff161461100957600080fd5b80601c8190555050565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166110546114fa565b73ffffffffffffffffffffffffffffffffffffffff161461107457600080fd5b600082101580156110865750601e8211155b61108f57600080fd5b600081101580156110a15750601e8111155b6110aa57600080fd5b8160098190555080600a819055505050565b60006110d06110c96114fa565b84846116cd565b6001905092915050565b6000601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166111456114fa565b73ffffffffffffffffffffffffffffffffffffffff161461116557600080fd5b600082101580156111775750601e8211155b61118057600080fd5b600081101580156111925750601e8111155b61119b57600080fd5b81600c8190555080600e819055505050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166112756114fa565b73ffffffffffffffffffffffffffffffffffffffff161461129557600080fd5b600081101580156112a7575060c88111155b6112b057600080fd5b610e10816112be9190613637565b60178190555050565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166113086114fa565b73ffffffffffffffffffffffffffffffffffffffff161461132857600080fd5b80601b8190555050565b61133a6114fa565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113be9061340b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611437576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142e9061336b565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60175481565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611572576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115699061348b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d99061338b565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516116c091906134cb565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561173d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117349061344b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156117ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117a4906132eb565b60405180910390fd5b600081116117f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e79061342b565b60405180910390fd5b6117f8610e8a565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156118665750611836610e8a565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611e1257601960149054906101000a900460ff166118ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118b19061330b565b60405180910390fd5b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480156119655750601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611ad2573073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156119d257503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611a2c5750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611a865750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611ad157601a54811115611ad0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac79061334b565b60405180910390fd5b5b5b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614158015611b7e5750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611bb657503073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611bf0575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611c4d57601b5481611c0284610b66565b611c0c91906135b0565b10611c4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c439061346b565b60405180910390fd5b5b6000611c5830610b66565b90506000601c5482119050808015611c7d5750601960159054906101000a900460ff16155b8015611cd75750601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b8015611cef5750601960169054906101000a900460ff165b8015611d455750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611d9b5750600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611e0f576000806011541115611de057611dd46064611dc6601154866125d690919063ffffffff16565b61265190919063ffffffff16565b9050611ddf8161269b565b5b611df48184611def9190613691565b61234e565b60004790506000811115611e0c57611e0b47612274565b5b50505b50505b600060019050600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611eb95750600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80611f6c5750601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611f6b5750601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b15611f7a57600090506121fe565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156120255750601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156120815742600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600b54600f81905550600c546010819055505b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561212c5750601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156121fd576000600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054141580156121cd575042601754600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121ca91906135b0565b10155b156121e957600954600f81905550600a546010819055506121fc565b600d54600f81905550600e546010819055505b5b5b61220a848484846126ab565b50505050565b6000838311158290612258576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161224f91906132c9565b60405180910390fd5b50600083856122679190613691565b9050809150509392505050565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156122dc573d6000803e3d6000fd5b5050565b6000600754821115612327576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161231e9061332b565b60405180910390fd5b60006123316126d8565b9050612346818461265190919063ffffffff16565b915050919050565b6001601960156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561238657612385613822565b5b6040519080825280602002602001820160405280156123b45781602001602082028036833780820191505090505b50905030816000815181106123cc576123cb6137f3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561246e57600080fd5b505afa158015612482573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124a69190612db9565b816001815181106124ba576124b96137f3565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061252130601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611502565b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016125859594939291906134e6565b600060405180830381600087803b15801561259f57600080fd5b505af11580156125b3573d6000803e3d6000fd5b50505050506000601960156101000a81548160ff02191690831515021790555050565b6000808314156125e9576000905061264b565b600082846125f79190613637565b90508284826126069190613606565b14612646576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161263d906133eb565b60405180910390fd5b809150505b92915050565b600061269383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612703565b905092915050565b6126a83061dead836116cd565b50565b806126b9576126b8612766565b5b6126c48484846127c8565b806126d2576126d1612993565b5b50505050565b60008060006126e56129b0565b915091506126fc818361265190919063ffffffff16565b9250505090565b6000808311829061274a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161274191906132c9565b60405180910390fd5b50600083856127599190613606565b9050809150509392505050565b6000600f5414801561277a57506000601054145b801561278857506000601154145b15612792576127c6565b600f546012819055506010546013819055506011546014819055506000600f81905550600060108190555060006011819055505b565b6000806000806000806127da87612a12565b95509550955095509550955061283886600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612a7a90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506128cd85600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612ac490919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061291981612b22565b6129238483612bdf565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161298091906134cb565b60405180910390a3505050505050505050565b601254600f81905550601354601081905550601454601181905550565b600080600060075490506000683635c9adc5dea0000090506129e6683635c9adc5dea0000060075461265190919063ffffffff16565b821015612a0557600754683635c9adc5dea00000935093505050612a0e565b81819350935050505b9091565b6000806000806000806000806000612a2f8a600f54601054612c19565b9250925092506000612a3f6126d8565b90506000806000612a528e878787612caf565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b6000612abc83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612210565b905092915050565b6000808284612ad391906135b0565b905083811015612b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b0f906133ab565b60405180910390fd5b8091505092915050565b6000612b2c6126d8565b90506000612b4382846125d690919063ffffffff16565b9050612b9781600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612ac490919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b612bf482600754612a7a90919063ffffffff16565b600781905550612c0f81600854612ac490919063ffffffff16565b6008819055505050565b600080600080612c456064612c37888a6125d690919063ffffffff16565b61265190919063ffffffff16565b90506000612c6f6064612c61888b6125d690919063ffffffff16565b61265190919063ffffffff16565b90506000612c9882612c8a858c612a7a90919063ffffffff16565b612a7a90919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080612cc885896125d690919063ffffffff16565b90506000612cdf86896125d690919063ffffffff16565b90506000612cf687896125d690919063ffffffff16565b90506000612d1f82612d118587612a7a90919063ffffffff16565b612a7a90919063ffffffff16565b9050838184965096509650505050509450945094915050565b600081359050612d4781613c4a565b92915050565b600081519050612d5c81613c4a565b92915050565b600081359050612d7181613c61565b92915050565b600081359050612d8681613c78565b92915050565b600060208284031215612da257612da1613851565b5b6000612db084828501612d38565b91505092915050565b600060208284031215612dcf57612dce613851565b5b6000612ddd84828501612d4d565b91505092915050565b60008060408385031215612dfd57612dfc613851565b5b6000612e0b85828601612d38565b9250506020612e1c85828601612d38565b9150509250929050565b600080600060608486031215612e3f57612e3e613851565b5b6000612e4d86828701612d38565b9350506020612e5e86828701612d38565b9250506040612e6f86828701612d77565b9150509250925092565b60008060408385031215612e9057612e8f613851565b5b6000612e9e85828601612d38565b9250506020612eaf85828601612d77565b9150509250929050565b600060208284031215612ecf57612ece613851565b5b6000612edd84828501612d62565b91505092915050565b600060208284031215612efc57612efb613851565b5b6000612f0a84828501612d77565b91505092915050565b60008060408385031215612f2a57612f29613851565b5b6000612f3885828601612d77565b9250506020612f4985828601612d77565b9150509250929050565b6000612f5f8383612f6b565b60208301905092915050565b612f74816136c5565b82525050565b612f83816136c5565b82525050565b6000612f948261356b565b612f9e818561358e565b9350612fa98361355b565b8060005b83811015612fda578151612fc18882612f53565b9750612fcc83613581565b925050600181019050612fad565b5085935050505092915050565b612ff0816136d7565b82525050565b612fff8161371a565b82525050565b61300e8161372c565b82525050565b600061301f82613576565b613029818561359f565b9350613039818560208601613762565b61304281613856565b840191505092915050565b600061305a60238361359f565b915061306582613867565b604082019050919050565b600061307d60188361359f565b9150613088826138b6565b602082019050919050565b60006130a0602a8361359f565b91506130ab826138df565b604082019050919050565b60006130c3601c8361359f565b91506130ce8261392e565b602082019050919050565b60006130e660268361359f565b91506130f182613957565b604082019050919050565b600061310960228361359f565b9150613114826139a6565b604082019050919050565b600061312c601b8361359f565b9150613137826139f5565b602082019050919050565b600061314f60348361359f565b915061315a82613a1e565b604082019050919050565b600061317260218361359f565b915061317d82613a6d565b604082019050919050565b600061319560208361359f565b91506131a082613abc565b602082019050919050565b60006131b860298361359f565b91506131c382613ae5565b604082019050919050565b60006131db60258361359f565b91506131e682613b34565b604082019050919050565b60006131fe60238361359f565b915061320982613b83565b604082019050919050565b600061322160248361359f565b915061322c82613bd2565b604082019050919050565b6000613244600c8361359f565b915061324f82613c21565b602082019050919050565b61326381613703565b82525050565b6132728161370d565b82525050565b600060208201905061328d6000830184612f7a565b92915050565b60006020820190506132a86000830184612fe7565b92915050565b60006020820190506132c36000830184612ff6565b92915050565b600060208201905081810360008301526132e38184613014565b905092915050565b600060208201905081810360008301526133048161304d565b9050919050565b6000602082019050818103600083015261332481613070565b9050919050565b6000602082019050818103600083015261334481613093565b9050919050565b60006020820190508181036000830152613364816130b6565b9050919050565b60006020820190508181036000830152613384816130d9565b9050919050565b600060208201905081810360008301526133a4816130fc565b9050919050565b600060208201905081810360008301526133c48161311f565b9050919050565b600060208201905081810360008301526133e481613142565b9050919050565b6000602082019050818103600083015261340481613165565b9050919050565b6000602082019050818103600083015261342481613188565b9050919050565b60006020820190508181036000830152613444816131ab565b9050919050565b60006020820190508181036000830152613464816131ce565b9050919050565b60006020820190508181036000830152613484816131f1565b9050919050565b600060208201905081810360008301526134a481613214565b9050919050565b600060208201905081810360008301526134c481613237565b9050919050565b60006020820190506134e0600083018461325a565b92915050565b600060a0820190506134fb600083018861325a565b6135086020830187613005565b818103604083015261351a8186612f89565b90506135296060830185612f7a565b613536608083018461325a565b9695505050505050565b60006020820190506135556000830184613269565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006135bb82613703565b91506135c683613703565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156135fb576135fa613795565b5b828201905092915050565b600061361182613703565b915061361c83613703565b92508261362c5761362b6137c4565b5b828204905092915050565b600061364282613703565b915061364d83613703565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561368657613685613795565b5b828202905092915050565b600061369c82613703565b91506136a783613703565b9250828210156136ba576136b9613795565b5b828203905092915050565b60006136d0826136e3565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006137258261373e565b9050919050565b600061373782613703565b9050919050565b600061374982613750565b9050919050565b600061375b826136e3565b9050919050565b60005b83811015613780578082015181840152602081019050613765565b8381111561378f576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f54726164696e67206e6f742079657420656e61626c6564210000000000000000600082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f4d6178696d756d207472616e73616374696f6e20616d6f756e74206d7573742060008201527f62652067726561746572207468616e20302e3125000000000000000000000000602082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a2042616c616e636520657863656564732077616c6c657420736960008201527f7a65210000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f57726f6e6720616d6f756e740000000000000000000000000000000000000000600082015250565b613c53816136c5565b8114613c5e57600080fd5b50565b613c6a816136d7565b8114613c7557600080fd5b50565b613c8181613703565b8114613c8c57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122092f722153e25e55528987f7bd09abff1c64c3a2f1c0a171b1bce942f9fd1cd7d64736f6c63430008070033

Deployed Bytecode Sourcemap

5319:15754:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8148:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9185:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6958:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8425:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9386:446;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6828:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7280:49;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8334:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20732:338;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7006:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20323:183;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19084:101;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15458:198;;;;;;;;;;;;;:::i;:::-;;8528:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2798:148;;;;;;;;;;;;;:::i;:::-;;19197:257;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7156:42;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15223:227;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2584:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15114:101;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7224:44;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8239:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14784:186;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19954:357;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8786:199;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8674:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19636:310;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8993:184;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20515:209;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19466:162;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2958:244;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6917:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8148:83;8185:13;8218:5;;;;;;;;;;;;;;;;;8211:12;;8148:83;:::o;9185:193::-;9287:4;9309:39;9318:12;:10;:12::i;:::-;9332:7;9341:6;9309:8;:39::i;:::-;9366:4;9359:11;;9185:193;;;;:::o;6958:41::-;;;;;;;;;;;;;:::o;8425:95::-;8478:7;5929:12;8498:14;;8425:95;:::o;9386:446::-;9518:4;9535:36;9545:6;9553:9;9564:6;9535:9;:36::i;:::-;9582:220;9605:6;9626:12;:10;:12::i;:::-;9653:138;9709:6;9653:138;;;;;;;;;;;;;;;;;:11;:19;9665:6;9653:19;;;;;;;;;;;;;;;:33;9673:12;:10;:12::i;:::-;9653:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;9582:8;:220::i;:::-;9820:4;9813:11;;9386:446;;;;;:::o;6828:80::-;6866:42;6828:80;:::o;7280:49::-;;;;:::o;8334:83::-;8375:5;5552:1;8393:16;;8334:83;:::o;20732:338::-;20840:19;;;;;;;;;;;20824:35;;:12;:10;:12::i;:::-;:35;;;20816:44;;;;;;20895:1;20879:12;:17;;:39;;;;;20916:2;20900:12;:18;;20879:39;20871:48;;;;;;20955:1;20938:13;:18;;:41;;;;;20977:2;20960:13;:19;;20938:41;20930:50;;;;;;21008:12;20991:14;:29;;;;21049:13;21031:15;:31;;;;20732:338;;:::o;7006:28::-;;;;;;;;;;;;;:::o;20323:183::-;20403:19;;;;;;;;;;;20387:35;;:12;:10;:12::i;:::-;:35;;;20379:44;;;;;;20452:1;20442:6;:11;;:27;;;;;20467:2;20457:6;:12;;20442:27;20434:36;;;;;;20492:6;20481:8;:17;;;;20323:183;:::o;19084:101::-;2721:12;:10;:12::i;:::-;2711:22;;:6;;;;;;;;;;:22;;;2703:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;19165:12:::1;19151:11;;:26;;;;;;;;;;;;;;;;;;19084:101:::0;:::o;15458:198::-;15524:19;;;;;;;;;;;15508:35;;:12;:10;:12::i;:::-;:35;;;15500:44;;;;;;15555:26;15584:21;15555:50;;15616:32;15629:18;15616:12;:32::i;:::-;15489:167;15458:198::o;8528:138::-;8594:7;8621:37;8641:7;:16;8649:7;8641:16;;;;;;;;;;;;;;;;8621:19;:37::i;:::-;8614:44;;8528:138;;;:::o;2798:148::-;2721:12;:10;:12::i;:::-;2711:22;;:6;;;;;;;;;;:22;;;2703:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2905:1:::1;2868:40;;2889:6;::::0;::::1;;;;;;;;2868:40;;;;;;;;;;;;2936:1;2919:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2798:148::o:0;19197:257::-;19287:19;;;;;;;;;;;19271:35;;:12;:10;:12::i;:::-;:35;;;19263:44;;;;;;19341:11;19326;:26;;19318:91;;;;;;;;;;;;:::i;:::-;;;;;;;;;19435:11;19420:12;:26;;;;19197:257;:::o;7156:42::-;;;;:::o;15223:227::-;15303:19;;;;;;;;;;;15287:35;;:12;:10;:12::i;:::-;:35;;;15279:44;;;;;;15352:24;15370:4;15352:9;:24::i;:::-;15342:6;:34;;:48;;;;;15389:1;15380:6;:10;15342:48;15334:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;15418:24;15435:6;15418:16;:24::i;:::-;15223:227;:::o;2584:79::-;2622:7;2649:6;;;;;;;;;;;2642:13;;2584:79;:::o;15114:101::-;2721:12;:10;:12::i;:::-;2711:22;;:6;;;;;;;;;;:22;;;2703:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15195:12:::1;15181:11;;:26;;;;;;;;;;;;;;;;;;15114:101:::0;:::o;7224:44::-;;;;:::o;8239:87::-;8278:13;8311:7;;;;;;;;;;;;;;;;;8304:14;;8239:87;:::o;14784:186::-;14891:19;;;;;;;;;;;14875:35;;:12;:10;:12::i;:::-;:35;;;14867:44;;;;;;14944:18;14922:19;:40;;;;14784:186;:::o;19954:357::-;20069:19;;;;;;;;;;;20053:35;;:12;:10;:12::i;:::-;:35;;;20045:44;;;;;;20128:1;20108:16;:21;;:47;;;;;20153:2;20133:16;:22;;20108:47;20100:56;;;;;;20193:1;20175:14;:19;;:43;;;;;20216:2;20198:14;:20;;20175:43;20167:52;;;;;;20247:16;20230:14;:33;;;;20289:14;20274:12;:29;;;;19954:357;;:::o;8786:199::-;8891:4;8913:42;8923:12;:10;:12::i;:::-;8937:9;8948:6;8913:9;:42::i;:::-;8973:4;8966:11;;8786:199;;;;:::o;8674:104::-;8724:7;8751:19;;;;;;;;;;;8744:26;;8674:104;:::o;19636:310::-;19738:19;;;;;;;;;;;19722:35;;:12;:10;:12::i;:::-;:35;;;19714:44;;;;;;19790:1;19777:9;:14;;:33;;;;;19808:2;19795:9;:15;;19777:33;19769:42;;;;;;19844:1;19830:10;:15;;:35;;;;;19863:2;19849:10;:16;;19830:35;19822:44;;;;;;19892:9;19877:12;:24;;;;19928:10;19912:13;:26;;;;19636:310;;:::o;8993:184::-;9110:7;9142:11;:18;9154:5;9142:18;;;;;;;;;;;;;;;:27;9161:7;9142:27;;;;;;;;;;;;;;;;9135:34;;8993:184;;;;:::o;20515:209::-;20600:19;;;;;;;;;;;20584:35;;:12;:10;:12::i;:::-;:35;;;20576:44;;;;;;20652:1;20639:9;:14;;:34;;;;;20670:3;20657:9;:16;;20639:34;20631:43;;;;;;20709:7;20697:9;:19;;;;:::i;:::-;20685:9;:31;;;;20515:209;:::o;19466:162::-;19559:19;;;;;;;;;;;19543:35;;:12;:10;:12::i;:::-;:35;;;19535:44;;;;;;19607:13;19590:14;:30;;;;19466:162;:::o;2958:244::-;2721:12;:10;:12::i;:::-;2711:22;;:6;;;;;;;;;;:22;;;2703:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3067:1:::1;3047:22;;:8;:22;;;;3039:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;3157:8;3128:38;;3149:6;::::0;::::1;;;;;;;;3128:38;;;;;;;;;;;;3186:8;3177:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;2958:244:::0;:::o;6917:34::-;;;;:::o;1343:98::-;1396:7;1423:10;1416:17;;1343:98;:::o;10651:369::-;10795:1;10778:19;;:5;:19;;;;10770:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10876:1;10857:21;;:7;:21;;;;10849:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10958:6;10928:11;:18;10940:5;10928:18;;;;;;;;;;;;;;;:27;10947:7;10928:27;;;;;;;;;;;;;;;:36;;;;10996:7;10980:32;;10989:5;10980:32;;;11005:6;10980:32;;;;;;:::i;:::-;;;;;;;;10651:369;;;:::o;11028:3082::-;11166:1;11150:18;;:4;:18;;;;11142:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;11243:1;11229:16;;:2;:16;;;;11221:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;11313:1;11304:6;:10;11296:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;11385:7;:5;:7::i;:::-;11377:15;;:4;:15;;;;:32;;;;;11402:7;:5;:7::i;:::-;11396:13;;:2;:13;;;;11377:32;11373:1596;;;11479:11;;;;;;;;;;;11474:99;;11511:34;;;;;;;;;;:::i;:::-;;;;;;;;11474:99;11611:13;;;;;;;;;;;11605:19;;:2;:19;;;:55;;;;;11644:15;;;;;;;;;;;11628:32;;:4;:32;;;;11605:55;11601:311;;;11699:4;11685:19;;:2;:19;;;;:44;;;;;11724:4;11708:21;;:4;:21;;;;11685:44;:73;;;;;11739:19;;;;;;;;;;;11733:25;;:2;:25;;;;11685:73;:104;;;;;11770:19;;;;;;;;;;;11762:27;;:4;:27;;;;11685:104;11681:216;;;11832:12;;11822:6;:22;;11814:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;11681:216;11601:311;11938:13;;;;;;;;;;;11932:19;;:2;:19;;;;:48;;;;;11961:19;;;;;;;;;;;11955:25;;:2;:25;;;;11932:48;:71;;;;;11998:4;11984:19;;:2;:19;;;;11932:71;:92;;;;;6866:42;12007:17;;:2;:17;;;;11932:92;11928:220;;;12078:14;;12069:6;12053:13;12063:2;12053:9;:13::i;:::-;:22;;;;:::i;:::-;:39;12045:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;11928:220;12176:28;12207:24;12225:4;12207:9;:24::i;:::-;12176:55;;12246:12;12284:19;;12261:20;:42;12246:57;;12336:7;:18;;;;;12348:6;;;;;;;;;;;12347:7;12336:18;:43;;;;;12366:13;;;;;;;;;;;12358:21;;:4;:21;;;;12336:43;:58;;;;;12383:11;;;;;;;;;;;12336:58;:87;;;;;12399:18;:24;12418:4;12399:24;;;;;;;;;;;;;;;;;;;;;;;;;12398:25;12336:87;:114;;;;;12428:18;:22;12447:2;12428:22;;;;;;;;;;;;;;;;;;;;;;;;;12427:23;12336:114;12332:626;;;12471:19;12528:1;12517:8;;:12;12513:166;;;12568:45;12607:5;12568:34;12593:8;;12568:20;:24;;:34;;;;:::i;:::-;:38;;:45;;;;:::i;:::-;12554:59;;12636:23;12647:11;12636:10;:23::i;:::-;12513:166;12697:52;12737:11;12714:20;:34;;;;:::i;:::-;12697:16;:52::i;:::-;12768:26;12797:21;12768:50;;12862:1;12841:18;:22;12837:106;;;12888:35;12901:21;12888:12;:35::i;:::-;12837:106;12452:506;;12332:626;11411:1558;;11373:1596;12989:12;13004:4;12989:19;;13054:18;:24;13073:4;13054:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;13082:18;:22;13101:2;13082:22;;;;;;;;;;;;;;;;;;;;;;;;;13054:50;13053:102;;;;13118:13;;;;;;;;;;;13110:21;;:4;:21;;;;:44;;;;;13141:13;;;;;;;;;;;13135:19;;:2;:19;;;;13110:44;13053:102;13049:1000;;;13182:5;13172:15;;13049:1000;;;13264:13;;;;;;;;;;;13256:21;;:4;:21;;;:55;;;;;13295:15;;;;;;;;;;;13281:30;;:2;:30;;;;13256:55;13253:222;;;13350:15;13336:7;:11;13344:2;13336:11;;;;;;;;;;;;;;;:29;;;;13400:14;;13388:9;:26;;;;13447:12;;13437:7;:22;;;;13253:222;13643:13;;;;;;;;;;;13637:19;;:2;:19;;;:55;;;;;13676:15;;;;;;;;;;;13660:32;;:4;:32;;;;13637:55;13633:405;;;13734:1;13717:7;:13;13725:4;13717:13;;;;;;;;;;;;;;;;:18;;:68;;;;;13769:15;13756:9;;13740:7;:13;13748:4;13740:13;;;;;;;;;;;;;;;;:25;;;;:::i;:::-;:44;;13717:68;13713:310;;;13822:14;;13810:9;:26;;;;13869:12;;13859:7;:22;;;;13713:310;;;13942:15;;13930:9;:27;;;;13990:13;;13980:7;:23;;;;13713:310;13633:405;13049:1000;14061:41;14076:4;14082:2;14086:6;14094:7;14061:14;:41::i;:::-;11131:2979;11028:3082;;;:::o;3570:224::-;3690:7;3723:1;3718;:6;;3726:12;3710:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3750:9;3766:1;3762;:5;;;;:::i;:::-;3750:17;;3785:1;3778:8;;;3570:224;;;;;:::o;14978:101::-;15035:19;;;;;;;;;;;:28;;:36;15064:6;15035:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14978:101;:::o;9840:323::-;9935:7;9993;;9982;:18;;9960:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;10081:19;10103:10;:8;:10::i;:::-;10081:32;;10131:24;10143:11;10131:7;:11;;:24;;;;:::i;:::-;10124:31;;;9840:323;;;:::o;14244:483::-;7433:4;7424:6;;:13;;;;;;;;;;;;;;;;;;14322:21:::1;14360:1;14346:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14322:40;;14391:4;14373;14378:1;14373:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;14417:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14407:4;14412:1;14407:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;14450:62;14467:4;14482:15;;;;;;;;;;;14500:11;14450:8;:62::i;:::-;14523:15;;;;;;;;;;;:66;;;14604:11;14630:1;14646:4;14673;14693:15;14523:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;14311:416;7469:5:::0;7460:6;;:14;;;;;;;;;;;;;;;;;;14244:483;:::o;3802:246::-;3860:7;3889:1;3884;:6;3880:47;;;3914:1;3907:8;;;;3880:47;3937:9;3953:1;3949;:5;;;;:::i;:::-;3937:17;;3982:1;3977;3973;:5;;;;:::i;:::-;:10;3965:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;4039:1;4032:8;;;3802:246;;;;;:::o;4056:132::-;4114:7;4141:39;4145:1;4148;4141:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;4134:46;;4056:132;;;;:::o;14118:118::-;14178:50;14196:4;6866:42;14216:11;14178:9;:50::i;:::-;14118:118;:::o;15664:282::-;15820:7;15815:28;;15829:14;:12;:14::i;:::-;15815:28;15854:44;15872:6;15880:9;15891:6;15854:17;:44::i;:::-;15914:7;15909:29;;15923:15;:13;:15::i;:::-;15909:29;15664:282;;;;:::o;18639:166::-;18681:7;18702:15;18719;18738:19;:17;:19::i;:::-;18701:56;;;;18777:20;18789:7;18777;:11;;:20;;;;:::i;:::-;18770:27;;;;18639:166;:::o;4196:223::-;4316:7;4348:1;4344;:5;4351:12;4336:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;4375:9;4391:1;4387;:5;;;;:::i;:::-;4375:17;;4410:1;4403:8;;;4196:223;;;;;:::o;10171:309::-;10231:1;10218:9;;:14;:30;;;;;10247:1;10236:7;;:12;10218:30;:47;;;;;10264:1;10252:8;;:13;10218:47;10214:60;;;10267:7;;10214:60;10310:9;;10290:17;:29;;;;10348:7;;10330:15;:25;;;;10385:8;;10366:16;:27;;;;10426:1;10414:9;:13;;;;10448:1;10438:7;:11;;;;10471:1;10460:8;:12;;;;10171:309;:::o;15954:610::-;16101:15;16131:23;16169:12;16196:23;16234:12;16261:13;16288:19;16299:7;16288:10;:19::i;:::-;16086:221;;;;;;;;;;;;16336:28;16356:7;16336;:15;16344:6;16336:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;16318:7;:15;16326:6;16318:15;;;;;;;;;;;;;;;:46;;;;16396:39;16419:15;16396:7;:18;16404:9;16396:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;16375:7;:18;16383:9;16375:18;;;;;;;;;;;;;;;:60;;;;16446:16;16456:5;16446:9;:16::i;:::-;16473:23;16485:4;16491;16473:11;:23::i;:::-;16529:9;16512:44;;16521:6;16512:44;;;16540:15;16512:44;;;;;;:::i;:::-;;;;;;;;16075:489;;;;;;15954:610;;;:::o;10488:155::-;10544:17;;10532:9;:29;;;;10582:15;;10572:7;:25;;;;10619:16;;10608:8;:27;;;;10488:155::o;18813:263::-;18864:7;18873;18893:15;18911:7;;18893:25;;18929:15;5929:12;18929:25;;18979:20;5929:12;18979:7;;:11;;:20;;;;:::i;:::-;18969:7;:30;18965:61;;;19009:7;;5929:12;19001:25;;;;;;;;18965:61;19051:7;19060;19043:25;;;;;;18813:263;;;:::o;16983:625::-;17083:7;17105;17127;17149;17171;17193;17229:23;17254:12;17268:13;17298:40;17310:7;17319:9;;17330:7;;17298:11;:40::i;:::-;17228:110;;;;;;17349:19;17371:10;:8;:10::i;:::-;17349:32;;17393:15;17410:23;17435:12;17464:46;17476:7;17485:4;17491:5;17498:11;17464;:46::i;:::-;17392:118;;;;;;17539:7;17548:15;17565:4;17571:15;17588:4;17594:5;17531:69;;;;;;;;;;;;;;;;;;;16983:625;;;;;;;:::o;3426:136::-;3484:7;3511:43;3515:1;3518;3511:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;3504:50;;3426:136;;;;:::o;3239:179::-;3297:7;3317:9;3333:1;3329;:5;;;;:::i;:::-;3317:17;;3358:1;3353;:6;;3345:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;3409:1;3402:8;;;3239:179;;;;:::o;16572:211::-;16625:19;16647:10;:8;:10::i;:::-;16625:32;;16668:13;16684:22;16694:11;16684:5;:9;;:22;;;;:::i;:::-;16668:38;;16742:33;16769:5;16742:7;:22;16758:4;16742:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;16717:7;:22;16733:4;16717:22;;;;;;;;;;;;;;;:58;;;;16614:169;;16572:211;:::o;16791:147::-;16869:17;16881:4;16869:7;;:11;;:17;;;;:::i;:::-;16859:7;:27;;;;16910:20;16925:4;16910:10;;:14;;:20;;;;:::i;:::-;16897:10;:33;;;;16791:147;;:::o;17616:471::-;17785:7;17807;17829;17864:12;17879:30;17905:3;17879:21;17891:8;17879:7;:11;;:21;;;;:::i;:::-;:25;;:30;;;;:::i;:::-;17864:45;;17920:13;17936:28;17960:3;17936:19;17948:6;17936:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;17920:44;;17975:23;18001:28;18023:5;18001:17;18013:4;18001:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;17975:54;;18050:15;18067:4;18073:5;18042:37;;;;;;;;;17616:471;;;;;;;:::o;18095:536::-;18289:7;18311;18333;18368:15;18386:24;18398:11;18386:7;:11;;:24;;;;:::i;:::-;18368:42;;18421:12;18436:21;18445:11;18436:4;:8;;:21;;;;:::i;:::-;18421:36;;18468:13;18484:22;18494:11;18484:5;:9;;:22;;;;:::i;:::-;18468:38;;18517:23;18543:28;18565:5;18543:17;18555:4;18543:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;18517:54;;18592:7;18601:15;18618:4;18584:39;;;;;;;;;;18095:536;;;;;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:143::-;209:5;240:6;234:13;225:22;;256:33;283:5;256:33;:::i;:::-;152:143;;;;:::o;301:133::-;344:5;382:6;369:20;360:29;;398:30;422:5;398:30;:::i;:::-;301:133;;;;:::o;440:139::-;486:5;524:6;511:20;502:29;;540:33;567:5;540:33;:::i;:::-;440:139;;;;:::o;585:329::-;644:6;693:2;681:9;672:7;668:23;664:32;661:119;;;699:79;;:::i;:::-;661:119;819:1;844:53;889:7;880:6;869:9;865:22;844:53;:::i;:::-;834:63;;790:117;585:329;;;;:::o;920:351::-;990:6;1039:2;1027:9;1018:7;1014:23;1010:32;1007:119;;;1045:79;;:::i;:::-;1007:119;1165:1;1190:64;1246:7;1237:6;1226:9;1222:22;1190:64;:::i;:::-;1180:74;;1136:128;920:351;;;;:::o;1277:474::-;1345:6;1353;1402:2;1390:9;1381:7;1377:23;1373:32;1370:119;;;1408:79;;:::i;:::-;1370:119;1528:1;1553:53;1598:7;1589:6;1578:9;1574:22;1553:53;:::i;:::-;1543:63;;1499:117;1655:2;1681:53;1726:7;1717:6;1706:9;1702:22;1681:53;:::i;:::-;1671:63;;1626:118;1277:474;;;;;:::o;1757:619::-;1834:6;1842;1850;1899:2;1887:9;1878:7;1874:23;1870:32;1867:119;;;1905:79;;:::i;:::-;1867:119;2025:1;2050:53;2095:7;2086:6;2075:9;2071:22;2050:53;:::i;:::-;2040:63;;1996:117;2152:2;2178:53;2223:7;2214:6;2203:9;2199:22;2178:53;:::i;:::-;2168:63;;2123:118;2280:2;2306:53;2351:7;2342:6;2331:9;2327:22;2306:53;:::i;:::-;2296:63;;2251:118;1757:619;;;;;:::o;2382:474::-;2450:6;2458;2507:2;2495:9;2486:7;2482:23;2478:32;2475:119;;;2513:79;;:::i;:::-;2475:119;2633:1;2658:53;2703:7;2694:6;2683:9;2679:22;2658:53;:::i;:::-;2648:63;;2604:117;2760:2;2786:53;2831:7;2822:6;2811:9;2807:22;2786:53;:::i;:::-;2776:63;;2731:118;2382:474;;;;;:::o;2862:323::-;2918:6;2967:2;2955:9;2946:7;2942:23;2938:32;2935:119;;;2973:79;;:::i;:::-;2935:119;3093:1;3118:50;3160:7;3151:6;3140:9;3136:22;3118:50;:::i;:::-;3108:60;;3064:114;2862:323;;;;:::o;3191:329::-;3250:6;3299:2;3287:9;3278:7;3274:23;3270:32;3267:119;;;3305:79;;:::i;:::-;3267:119;3425:1;3450:53;3495:7;3486:6;3475:9;3471:22;3450:53;:::i;:::-;3440:63;;3396:117;3191:329;;;;:::o;3526:474::-;3594:6;3602;3651:2;3639:9;3630:7;3626:23;3622:32;3619:119;;;3657:79;;:::i;:::-;3619:119;3777:1;3802:53;3847:7;3838:6;3827:9;3823:22;3802:53;:::i;:::-;3792:63;;3748:117;3904:2;3930:53;3975:7;3966:6;3955:9;3951:22;3930:53;:::i;:::-;3920:63;;3875:118;3526:474;;;;;:::o;4006:179::-;4075:10;4096:46;4138:3;4130:6;4096:46;:::i;:::-;4174:4;4169:3;4165:14;4151:28;;4006:179;;;;:::o;4191:108::-;4268:24;4286:5;4268:24;:::i;:::-;4263:3;4256:37;4191:108;;:::o;4305:118::-;4392:24;4410:5;4392:24;:::i;:::-;4387:3;4380:37;4305:118;;:::o;4459:732::-;4578:3;4607:54;4655:5;4607:54;:::i;:::-;4677:86;4756:6;4751:3;4677:86;:::i;:::-;4670:93;;4787:56;4837:5;4787:56;:::i;:::-;4866:7;4897:1;4882:284;4907:6;4904:1;4901:13;4882:284;;;4983:6;4977:13;5010:63;5069:3;5054:13;5010:63;:::i;:::-;5003:70;;5096:60;5149:6;5096:60;:::i;:::-;5086:70;;4942:224;4929:1;4926;4922:9;4917:14;;4882:284;;;4886:14;5182:3;5175:10;;4583:608;;;4459:732;;;;:::o;5197:109::-;5278:21;5293:5;5278:21;:::i;:::-;5273:3;5266:34;5197:109;;:::o;5312:183::-;5425:63;5482:5;5425:63;:::i;:::-;5420:3;5413:76;5312:183;;:::o;5501:147::-;5596:45;5635:5;5596:45;:::i;:::-;5591:3;5584:58;5501:147;;:::o;5654:364::-;5742:3;5770:39;5803:5;5770:39;:::i;:::-;5825:71;5889:6;5884:3;5825:71;:::i;:::-;5818:78;;5905:52;5950:6;5945:3;5938:4;5931:5;5927:16;5905:52;:::i;:::-;5982:29;6004:6;5982:29;:::i;:::-;5977:3;5973:39;5966:46;;5746:272;5654:364;;;;:::o;6024:366::-;6166:3;6187:67;6251:2;6246:3;6187:67;:::i;:::-;6180:74;;6263:93;6352:3;6263:93;:::i;:::-;6381:2;6376:3;6372:12;6365:19;;6024:366;;;:::o;6396:::-;6538:3;6559:67;6623:2;6618:3;6559:67;:::i;:::-;6552:74;;6635:93;6724:3;6635:93;:::i;:::-;6753:2;6748:3;6744:12;6737:19;;6396:366;;;:::o;6768:::-;6910:3;6931:67;6995:2;6990:3;6931:67;:::i;:::-;6924:74;;7007:93;7096:3;7007:93;:::i;:::-;7125:2;7120:3;7116:12;7109:19;;6768:366;;;:::o;7140:::-;7282:3;7303:67;7367:2;7362:3;7303:67;:::i;:::-;7296:74;;7379:93;7468:3;7379:93;:::i;:::-;7497:2;7492:3;7488:12;7481:19;;7140:366;;;:::o;7512:::-;7654:3;7675:67;7739:2;7734:3;7675:67;:::i;:::-;7668:74;;7751:93;7840:3;7751:93;:::i;:::-;7869:2;7864:3;7860:12;7853:19;;7512:366;;;:::o;7884:::-;8026:3;8047:67;8111:2;8106:3;8047:67;:::i;:::-;8040:74;;8123:93;8212:3;8123:93;:::i;:::-;8241:2;8236:3;8232:12;8225:19;;7884:366;;;:::o;8256:::-;8398:3;8419:67;8483:2;8478:3;8419:67;:::i;:::-;8412:74;;8495:93;8584:3;8495:93;:::i;:::-;8613:2;8608:3;8604:12;8597:19;;8256:366;;;:::o;8628:::-;8770:3;8791:67;8855:2;8850:3;8791:67;:::i;:::-;8784:74;;8867:93;8956:3;8867:93;:::i;:::-;8985:2;8980:3;8976:12;8969:19;;8628:366;;;:::o;9000:::-;9142:3;9163:67;9227:2;9222:3;9163:67;:::i;:::-;9156:74;;9239:93;9328:3;9239:93;:::i;:::-;9357:2;9352:3;9348:12;9341:19;;9000:366;;;:::o;9372:::-;9514:3;9535:67;9599:2;9594:3;9535:67;:::i;:::-;9528:74;;9611:93;9700:3;9611:93;:::i;:::-;9729:2;9724:3;9720:12;9713:19;;9372:366;;;:::o;9744:::-;9886:3;9907:67;9971:2;9966:3;9907:67;:::i;:::-;9900:74;;9983:93;10072:3;9983:93;:::i;:::-;10101:2;10096:3;10092:12;10085:19;;9744:366;;;:::o;10116:::-;10258:3;10279:67;10343:2;10338:3;10279:67;:::i;:::-;10272:74;;10355:93;10444:3;10355:93;:::i;:::-;10473:2;10468:3;10464:12;10457:19;;10116:366;;;:::o;10488:::-;10630:3;10651:67;10715:2;10710:3;10651:67;:::i;:::-;10644:74;;10727:93;10816:3;10727:93;:::i;:::-;10845:2;10840:3;10836:12;10829:19;;10488:366;;;:::o;10860:::-;11002:3;11023:67;11087:2;11082:3;11023:67;:::i;:::-;11016:74;;11099:93;11188:3;11099:93;:::i;:::-;11217:2;11212:3;11208:12;11201:19;;10860:366;;;:::o;11232:::-;11374:3;11395:67;11459:2;11454:3;11395:67;:::i;:::-;11388:74;;11471:93;11560:3;11471:93;:::i;:::-;11589:2;11584:3;11580:12;11573:19;;11232:366;;;:::o;11604:118::-;11691:24;11709:5;11691:24;:::i;:::-;11686:3;11679:37;11604:118;;:::o;11728:112::-;11811:22;11827:5;11811:22;:::i;:::-;11806:3;11799:35;11728:112;;:::o;11846:222::-;11939:4;11977:2;11966:9;11962:18;11954:26;;11990:71;12058:1;12047:9;12043:17;12034:6;11990:71;:::i;:::-;11846:222;;;;:::o;12074:210::-;12161:4;12199:2;12188:9;12184:18;12176:26;;12212:65;12274:1;12263:9;12259:17;12250:6;12212:65;:::i;:::-;12074:210;;;;:::o;12290:274::-;12409:4;12447:2;12436:9;12432:18;12424:26;;12460:97;12554:1;12543:9;12539:17;12530:6;12460:97;:::i;:::-;12290:274;;;;:::o;12570:313::-;12683:4;12721:2;12710:9;12706:18;12698:26;;12770:9;12764:4;12760:20;12756:1;12745:9;12741:17;12734:47;12798:78;12871:4;12862:6;12798:78;:::i;:::-;12790:86;;12570:313;;;;:::o;12889:419::-;13055:4;13093:2;13082:9;13078:18;13070:26;;13142:9;13136:4;13132:20;13128:1;13117:9;13113:17;13106:47;13170:131;13296:4;13170:131;:::i;:::-;13162:139;;12889:419;;;:::o;13314:::-;13480:4;13518:2;13507:9;13503:18;13495:26;;13567:9;13561:4;13557:20;13553:1;13542:9;13538:17;13531:47;13595:131;13721:4;13595:131;:::i;:::-;13587:139;;13314:419;;;:::o;13739:::-;13905:4;13943:2;13932:9;13928:18;13920:26;;13992:9;13986:4;13982:20;13978:1;13967:9;13963:17;13956:47;14020:131;14146:4;14020:131;:::i;:::-;14012:139;;13739:419;;;:::o;14164:::-;14330:4;14368:2;14357:9;14353:18;14345:26;;14417:9;14411:4;14407:20;14403:1;14392:9;14388:17;14381:47;14445:131;14571:4;14445:131;:::i;:::-;14437:139;;14164:419;;;:::o;14589:::-;14755:4;14793:2;14782:9;14778:18;14770:26;;14842:9;14836:4;14832:20;14828:1;14817:9;14813:17;14806:47;14870:131;14996:4;14870:131;:::i;:::-;14862:139;;14589:419;;;:::o;15014:::-;15180:4;15218:2;15207:9;15203:18;15195:26;;15267:9;15261:4;15257:20;15253:1;15242:9;15238:17;15231:47;15295:131;15421:4;15295:131;:::i;:::-;15287:139;;15014:419;;;:::o;15439:::-;15605:4;15643:2;15632:9;15628:18;15620:26;;15692:9;15686:4;15682:20;15678:1;15667:9;15663:17;15656:47;15720:131;15846:4;15720:131;:::i;:::-;15712:139;;15439:419;;;:::o;15864:::-;16030:4;16068:2;16057:9;16053:18;16045:26;;16117:9;16111:4;16107:20;16103:1;16092:9;16088:17;16081:47;16145:131;16271:4;16145:131;:::i;:::-;16137:139;;15864:419;;;:::o;16289:::-;16455:4;16493:2;16482:9;16478:18;16470:26;;16542:9;16536:4;16532:20;16528:1;16517:9;16513:17;16506:47;16570:131;16696:4;16570:131;:::i;:::-;16562:139;;16289:419;;;:::o;16714:::-;16880:4;16918:2;16907:9;16903:18;16895:26;;16967:9;16961:4;16957:20;16953:1;16942:9;16938:17;16931:47;16995:131;17121:4;16995:131;:::i;:::-;16987:139;;16714:419;;;:::o;17139:::-;17305:4;17343:2;17332:9;17328:18;17320:26;;17392:9;17386:4;17382:20;17378:1;17367:9;17363:17;17356:47;17420:131;17546:4;17420:131;:::i;:::-;17412:139;;17139:419;;;:::o;17564:::-;17730:4;17768:2;17757:9;17753:18;17745:26;;17817:9;17811:4;17807:20;17803:1;17792:9;17788:17;17781:47;17845:131;17971:4;17845:131;:::i;:::-;17837:139;;17564:419;;;:::o;17989:::-;18155:4;18193:2;18182:9;18178:18;18170:26;;18242:9;18236:4;18232:20;18228:1;18217:9;18213:17;18206:47;18270:131;18396:4;18270:131;:::i;:::-;18262:139;;17989:419;;;:::o;18414:::-;18580:4;18618:2;18607:9;18603:18;18595:26;;18667:9;18661:4;18657:20;18653:1;18642:9;18638:17;18631:47;18695:131;18821:4;18695:131;:::i;:::-;18687:139;;18414:419;;;:::o;18839:::-;19005:4;19043:2;19032:9;19028:18;19020:26;;19092:9;19086:4;19082:20;19078:1;19067:9;19063:17;19056:47;19120:131;19246:4;19120:131;:::i;:::-;19112:139;;18839:419;;;:::o;19264:222::-;19357:4;19395:2;19384:9;19380:18;19372:26;;19408:71;19476:1;19465:9;19461:17;19452:6;19408:71;:::i;:::-;19264:222;;;;:::o;19492:831::-;19755:4;19793:3;19782:9;19778:19;19770:27;;19807:71;19875:1;19864:9;19860:17;19851:6;19807:71;:::i;:::-;19888:80;19964:2;19953:9;19949:18;19940:6;19888:80;:::i;:::-;20015:9;20009:4;20005:20;20000:2;19989:9;19985:18;19978:48;20043:108;20146:4;20137:6;20043:108;:::i;:::-;20035:116;;20161:72;20229:2;20218:9;20214:18;20205:6;20161:72;:::i;:::-;20243:73;20311:3;20300:9;20296:19;20287:6;20243:73;:::i;:::-;19492:831;;;;;;;;:::o;20329:214::-;20418:4;20456:2;20445:9;20441:18;20433:26;;20469:67;20533:1;20522:9;20518:17;20509:6;20469:67;:::i;:::-;20329:214;;;;:::o;20630:132::-;20697:4;20720:3;20712:11;;20750:4;20745:3;20741:14;20733:22;;20630:132;;;:::o;20768:114::-;20835:6;20869:5;20863:12;20853:22;;20768:114;;;:::o;20888:99::-;20940:6;20974:5;20968:12;20958:22;;20888:99;;;:::o;20993:113::-;21063:4;21095;21090:3;21086:14;21078:22;;20993:113;;;:::o;21112:184::-;21211:11;21245:6;21240:3;21233:19;21285:4;21280:3;21276:14;21261:29;;21112:184;;;;:::o;21302:169::-;21386:11;21420:6;21415:3;21408:19;21460:4;21455:3;21451:14;21436:29;;21302:169;;;;:::o;21477:305::-;21517:3;21536:20;21554:1;21536:20;:::i;:::-;21531:25;;21570:20;21588:1;21570:20;:::i;:::-;21565:25;;21724:1;21656:66;21652:74;21649:1;21646:81;21643:107;;;21730:18;;:::i;:::-;21643:107;21774:1;21771;21767:9;21760:16;;21477:305;;;;:::o;21788:185::-;21828:1;21845:20;21863:1;21845:20;:::i;:::-;21840:25;;21879:20;21897:1;21879:20;:::i;:::-;21874:25;;21918:1;21908:35;;21923:18;;:::i;:::-;21908:35;21965:1;21962;21958:9;21953:14;;21788:185;;;;:::o;21979:348::-;22019:7;22042:20;22060:1;22042:20;:::i;:::-;22037:25;;22076:20;22094:1;22076:20;:::i;:::-;22071:25;;22264:1;22196:66;22192:74;22189:1;22186:81;22181:1;22174:9;22167:17;22163:105;22160:131;;;22271:18;;:::i;:::-;22160:131;22319:1;22316;22312:9;22301:20;;21979:348;;;;:::o;22333:191::-;22373:4;22393:20;22411:1;22393:20;:::i;:::-;22388:25;;22427:20;22445:1;22427:20;:::i;:::-;22422:25;;22466:1;22463;22460:8;22457:34;;;22471:18;;:::i;:::-;22457:34;22516:1;22513;22509:9;22501:17;;22333:191;;;;:::o;22530:96::-;22567:7;22596:24;22614:5;22596:24;:::i;:::-;22585:35;;22530:96;;;:::o;22632:90::-;22666:7;22709:5;22702:13;22695:21;22684:32;;22632:90;;;:::o;22728:126::-;22765:7;22805:42;22798:5;22794:54;22783:65;;22728:126;;;:::o;22860:77::-;22897:7;22926:5;22915:16;;22860:77;;;:::o;22943:86::-;22978:7;23018:4;23011:5;23007:16;22996:27;;22943:86;;;:::o;23035:152::-;23111:9;23144:37;23175:5;23144:37;:::i;:::-;23131:50;;23035:152;;;:::o;23193:121::-;23251:9;23284:24;23302:5;23284:24;:::i;:::-;23271:37;;23193:121;;;:::o;23320:126::-;23370:9;23403:37;23434:5;23403:37;:::i;:::-;23390:50;;23320:126;;;:::o;23452:113::-;23502:9;23535:24;23553:5;23535:24;:::i;:::-;23522:37;;23452:113;;;:::o;23571:307::-;23639:1;23649:113;23663:6;23660:1;23657:13;23649:113;;;23748:1;23743:3;23739:11;23733:18;23729:1;23724:3;23720:11;23713:39;23685:2;23682:1;23678:10;23673:15;;23649:113;;;23780:6;23777:1;23774:13;23771:101;;;23860:1;23851:6;23846:3;23842:16;23835:27;23771:101;23620:258;23571:307;;;:::o;23884:180::-;23932:77;23929:1;23922:88;24029:4;24026:1;24019:15;24053:4;24050:1;24043:15;24070:180;24118:77;24115:1;24108:88;24215:4;24212:1;24205:15;24239:4;24236:1;24229:15;24256:180;24304:77;24301:1;24294:88;24401:4;24398:1;24391:15;24425:4;24422:1;24415:15;24442:180;24490:77;24487:1;24480:88;24587:4;24584:1;24577:15;24611:4;24608:1;24601:15;24751:117;24860:1;24857;24850:12;24874:102;24915:6;24966:2;24962:7;24957:2;24950:5;24946:14;24942:28;24932:38;;24874:102;;;:::o;24982:222::-;25122:34;25118:1;25110:6;25106:14;25099:58;25191:5;25186:2;25178:6;25174:15;25167:30;24982:222;:::o;25210:174::-;25350:26;25346:1;25338:6;25334:14;25327:50;25210:174;:::o;25390:229::-;25530:34;25526:1;25518:6;25514:14;25507:58;25599:12;25594:2;25586:6;25582:15;25575:37;25390:229;:::o;25625:178::-;25765:30;25761:1;25753:6;25749:14;25742:54;25625:178;:::o;25809:225::-;25949:34;25945:1;25937:6;25933:14;25926:58;26018:8;26013:2;26005:6;26001:15;25994:33;25809:225;:::o;26040:221::-;26180:34;26176:1;26168:6;26164:14;26157:58;26249:4;26244:2;26236:6;26232:15;26225:29;26040:221;:::o;26267:177::-;26407:29;26403:1;26395:6;26391:14;26384:53;26267:177;:::o;26450:239::-;26590:34;26586:1;26578:6;26574:14;26567:58;26659:22;26654:2;26646:6;26642:15;26635:47;26450:239;:::o;26695:220::-;26835:34;26831:1;26823:6;26819:14;26812:58;26904:3;26899:2;26891:6;26887:15;26880:28;26695:220;:::o;26921:182::-;27061:34;27057:1;27049:6;27045:14;27038:58;26921:182;:::o;27109:228::-;27249:34;27245:1;27237:6;27233:14;27226:58;27318:11;27313:2;27305:6;27301:15;27294:36;27109:228;:::o;27343:224::-;27483:34;27479:1;27471:6;27467:14;27460:58;27552:7;27547:2;27539:6;27535:15;27528:32;27343:224;:::o;27573:222::-;27713:34;27709:1;27701:6;27697:14;27690:58;27782:5;27777:2;27769:6;27765:15;27758:30;27573:222;:::o;27801:223::-;27941:34;27937:1;27929:6;27925:14;27918:58;28010:6;28005:2;27997:6;27993:15;27986:31;27801:223;:::o;28030:162::-;28170:14;28166:1;28158:6;28154:14;28147:38;28030:162;:::o;28198:122::-;28271:24;28289:5;28271:24;:::i;:::-;28264:5;28261:35;28251:63;;28310:1;28307;28300:12;28251:63;28198:122;:::o;28326:116::-;28396:21;28411:5;28396:21;:::i;:::-;28389:5;28386:32;28376:60;;28432:1;28429;28422:12;28376:60;28326:116;:::o;28448:122::-;28521:24;28539:5;28521:24;:::i;:::-;28514:5;28511:35;28501:63;;28560:1;28557;28550:12;28501:63;28448:122;:::o

Swarm Source

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