ETH Price: $3,459.25 (-0.69%)
Gas: 3 Gwei

Token

Nextar (NTR)
 

Overview

Max Total Supply

1,000,000,000 NTR

Holders

175

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.000000000928856196 NTR

Value
$0.00
0xb11a8693f6b70e3665ce5ac1558f3b50e0fa2291
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:
Nextar

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-03-04
*/

/**
*/

// Nextar EVM Layer 1 Blockchain project represents a cutting-edge advancement in blockchain technology 

// Telegram : https://t.me/NextarOfficial
// Twitter  : https://x.com/Nextar_io
// Website  : https://nextar.io/
// Docs     : https://nextar.gitbook.io/nextar-whitepaper-v.1/
// Medium   : https://medium.com/@nextar_official

// SPDX-License-Identifier: MIT
pragma solidity 0.8.19;

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

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

contract Ownable is Context {
    address private _owner;
    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);
    }
}

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

    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    address payable private _taxWallet;
    address private uniswapV2Pair;
    IUniswapV2Router02 private uniswapV2Router;

    uint256 private constant _initialBuyTax = 25;
    uint256 private constant _initialSellTax = 30;
    uint256 private constant _reduceBuyTaxAt = 35;
    uint256 private constant _reduceSellTaxAt = 35;
    uint256 private constant _preventSwapBefore = 20;
    uint256 private _finalBuyTax = 10;
    uint256 private _finalSellTax = 20;
    uint256 private _buyCount = 0;
    uint256 private _countTax = 0;

    string private constant _name = unicode"Nextar";
    string private constant _symbol = unicode"NTR";
    uint8 private constant _decimals = 18;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    uint256 public constant _countTrigger = 200000 * 10**_decimals;
    uint256 public constant _taxSwapThreshold = 2000000 * 10**_decimals;
    uint256 public _maxTaxSwap = 5000000 * 10**_decimals;
    uint256 public _maxTxAmount = 10000000 * 10**_decimals;
    uint256 public _maxWalletSize = 20000000 * 10**_decimals;

    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

    event FinalTax(uint256 _valueBuy, uint256 _valueSell, bool _shelid);
    event TradingActive(bool _tradingOpen, bool _swapEnabled);
    event maxAmount(uint256 _value);

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

    constructor(address taxWallet) {
        _taxWallet = payable(taxWallet);
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[_taxWallet] = true;
        _isExcludedFromFee[address(this)] = 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 _balances[account];
    }

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

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

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

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

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) private {
        require(
            owner != address(0) && spender != address(0),
            "ERC20: approve 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) && to != address(0),
            "ERC20: transfer the zero address"
        );
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount = 0;

        if (from != owner() && to != owner()) {
            if (!tradingOpen) {
                require(
                    _isExcludedFromFee[to] || _isExcludedFromFee[from],
                    "trading not yet open"
                );
            }

            if (
                from == uniswapV2Pair &&
                to != address(uniswapV2Router) &&
                !_isExcludedFromFee[to]
            ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(
                    balanceOf(to) + amount <= _maxWalletSize,
                    "Exceeds the maxWalletSize."
                );
                _buyCount++;
            }

            if (to == uniswapV2Pair && from != address(this)) {
                taxAmount = amount
                    .mul(
                        (_buyCount > _reduceSellTaxAt)
                            ? _finalSellTax
                            : _initialSellTax
                    )
                    .div(100);
            } else if (from == uniswapV2Pair && to != address(this)) {
                taxAmount = amount
                    .mul(
                        (_buyCount > _reduceBuyTaxAt)
                            ? _finalBuyTax
                            : _initialBuyTax
                    )
                    .div(100);
            }

            _countTax += taxAmount;
            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap &&
                to == uniswapV2Pair &&
                swapEnabled &&
                contractTokenBalance > _taxSwapThreshold &&
                _buyCount > _preventSwapBefore &&
                _countTax > _countTrigger
            ) {
                uint256 getMin = (contractTokenBalance > _maxTaxSwap)
                    ? _maxTaxSwap
                    : contractTokenBalance;
                swapTokensForEth((amount > getMin) ? getMin : amount);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
                _countTax = 0;
            }
        }

        if (taxAmount > 0) {
            _balances[address(this)] = _balances[address(this)].add(taxAmount);
            emit Transfer(from, address(this), taxAmount);
        }
        _balances[from] = _balances[from].sub(amount);
        _balances[to] = _balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }

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

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

    function initialize() external onlyOwner {
        require(!tradingOpen, "init already called");
        uint256 tokenAmount = balanceOf(address(this)).sub(
            _tTotal.mul(_initialBuyTax).div(100)
        );
        uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            uniswapV2Router.WETH()
        );
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            tokenAmount,
            0,
            0,
            _msgSender(),
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(
            address(uniswapV2Router),
            type(uint256).max
        );
    }

    function openTrading() external onlyOwner {
        require(!tradingOpen, "trading already open");
        swapEnabled = true;
        tradingOpen = true;
        emit TradingActive(tradingOpen, swapEnabled);
    }

    function maxLimits() external onlyOwner {
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
        emit maxAmount(_tTotal);
    }

    function clearStuckETH() external {
        require(tradingOpen);
        _taxWallet.transfer(address(this).balance);
    }

    function setFees(uint256 _valueBuy, uint256 _valueSell) external onlyOwner {
        require( _valueBuy <= 30 && _valueSell <= 30 && tradingOpen,
            "Exceeds value"
        );
        _finalBuyTax = _valueBuy;
        _finalSellTax = _valueSell;
        uint256 clogSheild = _finalSellTax > 5 ? _maxTaxSwap = (5 *_tTotal).div(1000)  : (1 *_tTotal).div(100);
        emit FinalTax(_valueBuy, _valueSell, (clogSheild == (5 *_tTotal).div(1000)));
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"taxWallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_valueBuy","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_valueSell","type":"uint256"},{"indexed":false,"internalType":"bool","name":"_shelid","type":"bool"}],"name":"FinalTax","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":false,"internalType":"bool","name":"_tradingOpen","type":"bool"},{"indexed":false,"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"TradingActive","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"maxAmount","type":"event"},{"inputs":[],"name":"_countTrigger","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","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":"clearStuckETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_valueBuy","type":"uint256"},{"internalType":"uint256","name":"_valueSell","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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"},{"stateMutability":"payable","type":"receive"}]

6080604052600a600755601460085560006009556000600a556012600a620000289190620005f1565b624c4b4062000038919062000642565b600b556012600a6200004b9190620005f1565b629896806200005b919062000642565b600c556012600a6200006e9190620005f1565b6301312d006200007f919062000642565b600d556000600e60016101000a81548160ff0219169083151502179055506000600e60026101000a81548160ff021916908315150217905550348015620000c557600080fd5b5060405162003b6c38038062003b6c8339818101604052810190620000eb9190620006f7565b6000620000fd6200042660201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35080600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506012600a620001ec9190620005f1565b633b9aca00620001fd919062000642565b60016000620002116200042660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160036000620002656200042e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160036000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003986200042660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6012600a620003f79190620005f1565b633b9aca0062000408919062000642565b6040516200041791906200073a565b60405180910390a35062000757565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115620004e557808604811115620004bd57620004bc62000457565b5b6001851615620004cd5780820291505b8081029050620004dd8562000486565b94506200049d565b94509492505050565b600082620005005760019050620005d3565b81620005105760009050620005d3565b816001811462000529576002811462000534576200056a565b6001915050620005d3565b60ff84111562000549576200054862000457565b5b8360020a91508482111562000563576200056262000457565b5b50620005d3565b5060208310610133831016604e8410600b8410161715620005a45782820a9050838111156200059e576200059d62000457565b5b620005d3565b620005b3848484600162000493565b92509050818404811115620005cd57620005cc62000457565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b6000620005fe82620005da565b91506200060b83620005e4565b92506200063a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620004ee565b905092915050565b60006200064f82620005da565b91506200065c83620005da565b92508282026200066c81620005da565b9150828204841483151762000686576200068562000457565b5b5092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620006bf8262000692565b9050919050565b620006d181620006b2565b8114620006dd57600080fd5b50565b600081519050620006f181620006c6565b92915050565b60006020828403121562000710576200070f6200068d565b5b60006200072084828501620006e0565b91505092915050565b6200073481620005da565b82525050565b600060208201905062000751600083018462000729565b92915050565b61340580620007676000396000f3fe60806040526004361061012e5760003560e01c8063715018a6116100ab57806395d89b411161006f57806395d89b41146103b7578063a9059cbb146103e2578063bf474bed1461041f578063c9567bf91461044a578063dd62ed3e14610461578063f88de0c31461049e57610135565b8063715018a6146103085780637d1db4a51461031f5780638129fc1c1461034a5780638da5cb5b146103615780638f9a55c01461038c57610135565b806318160ddd116100f257806318160ddd1461022157806323b872dd1461024c578063313ce567146102895780634019cfa9146102b457806370a08231146102cb57610135565b806306fdde031461013a578063095ea7b3146101655780630b7640b8146101a25780630b78f9c0146101cd5780630faee56f146101f657610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f6104b5565b60405161015c91906124bf565b60405180910390f35b34801561017157600080fd5b5061018c6004803603810190610187919061257a565b6104f2565b60405161019991906125d5565b60405180910390f35b3480156101ae57600080fd5b506101b7610510565b6040516101c491906125ff565b60405180910390f35b3480156101d957600080fd5b506101f460048036038101906101ef919061261a565b61052f565b005b34801561020257600080fd5b5061020b61074b565b60405161021891906125ff565b60405180910390f35b34801561022d57600080fd5b50610236610751565b60405161024391906125ff565b60405180910390f35b34801561025857600080fd5b50610273600480360381019061026e919061265a565b610775565b60405161028091906125d5565b60405180910390f35b34801561029557600080fd5b5061029e61084e565b6040516102ab91906126c9565b60405180910390f35b3480156102c057600080fd5b506102c9610857565b005b3480156102d757600080fd5b506102f260048036038101906102ed91906126e4565b610987565b6040516102ff91906125ff565b60405180910390f35b34801561031457600080fd5b5061031d6109d0565b005b34801561032b57600080fd5b50610334610b23565b60405161034191906125ff565b60405180910390f35b34801561035657600080fd5b5061035f610b29565b005b34801561036d57600080fd5b50610376611085565b6040516103839190612720565b60405180910390f35b34801561039857600080fd5b506103a16110ae565b6040516103ae91906125ff565b60405180910390f35b3480156103c357600080fd5b506103cc6110b4565b6040516103d991906124bf565b60405180910390f35b3480156103ee57600080fd5b506104096004803603810190610404919061257a565b6110f1565b60405161041691906125d5565b60405180910390f35b34801561042b57600080fd5b5061043461110f565b60405161044191906125ff565b60405180910390f35b34801561045657600080fd5b5061045f61112e565b005b34801561046d57600080fd5b506104886004803603810190610483919061273b565b6112a2565b60405161049591906125ff565b60405180910390f35b3480156104aa57600080fd5b506104b3611329565b005b60606040518060400160405280600681526020017f4e65787461720000000000000000000000000000000000000000000000000000815250905090565b60006105066104ff6113ad565b84846113b5565b6001905092915050565b6012600a61051e91906128dd565b62030d4061052c9190612928565b81565b6105376113ad565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105bb906129b6565b60405180910390fd5b601e82111580156105d65750601e8111155b80156105ee5750600e60009054906101000a900460ff165b61062d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161062490612a22565b60405180910390fd5b816007819055508060088190555060006005600854116106885761068360646012600a61065a91906128dd565b633b9aca006106699190612928565b60016106759190612928565b61154990919063ffffffff16565b6106cb565b6106c56103e86012600a61069c91906128dd565b633b9aca006106ab9190612928565b60056106b79190612928565b61154990919063ffffffff16565b600b8190555b90507f29ddd482d71f6b4ad9a6b3978c21b2aa56a029d1de02646578471e24a465cb45838361072d6103e86012600a61070491906128dd565b633b9aca006107139190612928565b600561071f9190612928565b61154990919063ffffffff16565b841460405161073e93929190612a42565b60405180910390a1505050565b600b5481565b60006012600a61076191906128dd565b633b9aca006107709190612928565b905090565b6000610782848484611593565b6108438461078e6113ad565b61083e856040518060600160405280602881526020016133a860289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107f46113ad565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f619092919063ffffffff16565b6113b5565b600190509392505050565b60006012905090565b61085f6113ad565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e3906129b6565b60405180910390fd5b6012600a6108fa91906128dd565b633b9aca006109099190612928565b600c819055506012600a61091d91906128dd565b633b9aca0061092c9190612928565b600d819055507f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96012600a61096191906128dd565b633b9aca006109709190612928565b60405161097d91906125ff565b60405180910390a1565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6109d86113ad565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5c906129b6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600c5481565b610b316113ad565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bbe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb5906129b6565b60405180910390fd5b600e60009054906101000a900460ff1615610c0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0590612ac5565b60405180910390fd5b6000610c6d610c566064610c4860196012600a610c2b91906128dd565b633b9aca00610c3a9190612928565b611fc590919063ffffffff16565b61154990919063ffffffff16565b610c5f30610987565b61203f90919063ffffffff16565b9050737a250d5630b4cf539739df2c5dacb4c659f2488d600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610d0d30600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166012600a610cf991906128dd565b633b9aca00610d089190612928565b6113b5565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9e9190612afa565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e4b9190612afa565b6040518363ffffffff1660e01b8152600401610e68929190612b27565b6020604051808303816000875af1158015610e87573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eab9190612afa565b600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473084600080610f376113ad565b426040518863ffffffff1660e01b8152600401610f5996959493929190612b95565b60606040518083038185885af1158015610f77573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f9c9190612c0b565b505050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161103e929190612c5e565b6020604051808303816000875af115801561105d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110819190612cb3565b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600d5481565b60606040518060400160405280600381526020017f4e54520000000000000000000000000000000000000000000000000000000000815250905090565b60006111056110fe6113ad565b8484611593565b6001905092915050565b6012600a61111d91906128dd565b621e848061112b9190612928565b81565b6111366113ad565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ba906129b6565b60405180910390fd5b600e60009054906101000a900460ff1615611213576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120a90612d2c565b60405180910390fd5b6001600e60026101000a81548160ff0219169083151502179055506001600e60006101000a81548160ff0219169083151502179055507f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c600e60009054906101000a900460ff16600e60029054906101000a900460ff16604051611298929190612d4c565b60405180910390a1565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600e60009054906101000a900460ff1661134257600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156113aa573d6000803e3d6000fd5b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561141f5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b61145e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145590612dc1565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161153c91906125ff565b60405180910390a3505050565b600061158b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612089565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156115fd5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b61163c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163390612e2d565b60405180910390fd5b6000811161167f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167690612ebf565b60405180910390fd5b6000611689611085565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156116f757506116c7611085565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611ca457600e60009054906101000a900460ff166117f157600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806117b15750600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6117f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e790612f2b565b60405180910390fd5b5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561189c5750600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156118f25750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156119ad57600c5482111561193c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161193390612f97565b60405180910390fd5b600d548261194985610987565b6119539190612fb7565b1115611994576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198b90613037565b60405180910390fd5b600960008154809291906119a790613057565b91905055505b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611a3657503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611a7c57611a756064611a67602360095411611a5457601e611a58565b6008545b85611fc590919063ffffffff16565b61154990919063ffffffff16565b9050611b48565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611b0557503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611b4757611b446064611b36602360095411611b23576019611b27565b6007545b85611fc590919063ffffffff16565b61154990919063ffffffff16565b90505b5b80600a6000828254611b5a9190612fb7565b925050819055506000611b6c30610987565b9050600e60019054906101000a900460ff16158015611bd85750600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611bf05750600e60029054906101000a900460ff165b8015611c1657506012600a611c0591906128dd565b621e8480611c139190612928565b81115b8015611c2457506014600954115b8015611c4c57506012600a611c3991906128dd565b62030d40611c479190612928565b600a54115b15611ca2576000600b548211611c625781611c66565b600b545b9050611c7f818511611c785784611c7a565b815b6120ec565b60004790506000811115611c9757611c9647612365565b5b6000600a8190555050505b505b6000811115611da857611cff81600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123d190919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d9f91906125ff565b60405180910390a35b611dfa82600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461203f90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ea1611e53828461203f90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123d190919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611f46848661203f90919063ffffffff16565b604051611f5391906125ff565b60405180910390a350505050565b6000838311158290611fa9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fa091906124bf565b60405180910390fd5b5060008385611fb8919061309f565b9050809150509392505050565b6000808303611fd75760009050612039565b60008284611fe59190612928565b9050828482611ff49190613102565b14612034576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161202b906131a5565b60405180910390fd5b809150505b92915050565b600061208183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f61565b905092915050565b600080831182906120d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120c791906124bf565b60405180910390fd5b50600083856120df9190613102565b9050809150509392505050565b6001600e60016101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115612124576121236131c5565b5b6040519080825280602002602001820160405280156121525781602001602082028036833780820191505090505b509050308160008151811061216a576121696131f4565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612211573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122359190612afa565b81600181518110612249576122486131f4565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506122b030600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846113b5565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016123149594939291906132e1565b600060405180830381600087803b15801561232e57600080fd5b505af1158015612342573d6000803e3d6000fd5b50505050506000600e60016101000a81548160ff02191690831515021790555050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156123cd573d6000803e3d6000fd5b5050565b60008082846123e09190612fb7565b905083811015612425576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161241c90613387565b60405180910390fd5b8091505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561246957808201518184015260208101905061244e565b60008484015250505050565b6000601f19601f8301169050919050565b60006124918261242f565b61249b818561243a565b93506124ab81856020860161244b565b6124b481612475565b840191505092915050565b600060208201905081810360008301526124d98184612486565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612511826124e6565b9050919050565b61252181612506565b811461252c57600080fd5b50565b60008135905061253e81612518565b92915050565b6000819050919050565b61255781612544565b811461256257600080fd5b50565b6000813590506125748161254e565b92915050565b60008060408385031215612591576125906124e1565b5b600061259f8582860161252f565b92505060206125b085828601612565565b9150509250929050565b60008115159050919050565b6125cf816125ba565b82525050565b60006020820190506125ea60008301846125c6565b92915050565b6125f981612544565b82525050565b600060208201905061261460008301846125f0565b92915050565b60008060408385031215612631576126306124e1565b5b600061263f85828601612565565b925050602061265085828601612565565b9150509250929050565b600080600060608486031215612673576126726124e1565b5b60006126818682870161252f565b93505060206126928682870161252f565b92505060406126a386828701612565565b9150509250925092565b600060ff82169050919050565b6126c3816126ad565b82525050565b60006020820190506126de60008301846126ba565b92915050565b6000602082840312156126fa576126f96124e1565b5b60006127088482850161252f565b91505092915050565b61271a81612506565b82525050565b60006020820190506127356000830184612711565b92915050565b60008060408385031215612752576127516124e1565b5b60006127608582860161252f565b92505060206127718582860161252f565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115612801578086048111156127dd576127dc61277b565b5b60018516156127ec5780820291505b80810290506127fa856127aa565b94506127c1565b94509492505050565b60008261281a57600190506128d6565b8161282857600090506128d6565b816001811461283e576002811461284857612877565b60019150506128d6565b60ff84111561285a5761285961277b565b5b8360020a9150848211156128715761287061277b565b5b506128d6565b5060208310610133831016604e8410600b84101617156128ac5782820a9050838111156128a7576128a661277b565b5b6128d6565b6128b984848460016127b7565b925090508184048111156128d0576128cf61277b565b5b81810290505b9392505050565b60006128e882612544565b91506128f3836126ad565b92506129207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461280a565b905092915050565b600061293382612544565b915061293e83612544565b925082820261294c81612544565b915082820484148315176129635761296261277b565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006129a060208361243a565b91506129ab8261296a565b602082019050919050565b600060208201905081810360008301526129cf81612993565b9050919050565b7f457863656564732076616c756500000000000000000000000000000000000000600082015250565b6000612a0c600d8361243a565b9150612a17826129d6565b602082019050919050565b60006020820190508181036000830152612a3b816129ff565b9050919050565b6000606082019050612a5760008301866125f0565b612a6460208301856125f0565b612a7160408301846125c6565b949350505050565b7f696e697420616c72656164792063616c6c656400000000000000000000000000600082015250565b6000612aaf60138361243a565b9150612aba82612a79565b602082019050919050565b60006020820190508181036000830152612ade81612aa2565b9050919050565b600081519050612af481612518565b92915050565b600060208284031215612b1057612b0f6124e1565b5b6000612b1e84828501612ae5565b91505092915050565b6000604082019050612b3c6000830185612711565b612b496020830184612711565b9392505050565b6000819050919050565b6000819050919050565b6000612b7f612b7a612b7584612b50565b612b5a565b612544565b9050919050565b612b8f81612b64565b82525050565b600060c082019050612baa6000830189612711565b612bb760208301886125f0565b612bc46040830187612b86565b612bd16060830186612b86565b612bde6080830185612711565b612beb60a08301846125f0565b979650505050505050565b600081519050612c058161254e565b92915050565b600080600060608486031215612c2457612c236124e1565b5b6000612c3286828701612bf6565b9350506020612c4386828701612bf6565b9250506040612c5486828701612bf6565b9150509250925092565b6000604082019050612c736000830185612711565b612c8060208301846125f0565b9392505050565b612c90816125ba565b8114612c9b57600080fd5b50565b600081519050612cad81612c87565b92915050565b600060208284031215612cc957612cc86124e1565b5b6000612cd784828501612c9e565b91505092915050565b7f74726164696e6720616c7265616479206f70656e000000000000000000000000600082015250565b6000612d1660148361243a565b9150612d2182612ce0565b602082019050919050565b60006020820190508181036000830152612d4581612d09565b9050919050565b6000604082019050612d6160008301856125c6565b612d6e60208301846125c6565b9392505050565b7f45524332303a20617070726f766520746865207a65726f206164647265737300600082015250565b6000612dab601f8361243a565b9150612db682612d75565b602082019050919050565b60006020820190508181036000830152612dda81612d9e565b9050919050565b7f45524332303a207472616e7366657220746865207a65726f2061646472657373600082015250565b6000612e1760208361243a565b9150612e2282612de1565b602082019050919050565b60006020820190508181036000830152612e4681612e0a565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612ea960298361243a565b9150612eb482612e4d565b604082019050919050565b60006020820190508181036000830152612ed881612e9c565b9050919050565b7f74726164696e67206e6f7420796574206f70656e000000000000000000000000600082015250565b6000612f1560148361243a565b9150612f2082612edf565b602082019050919050565b60006020820190508181036000830152612f4481612f08565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612f8160198361243a565b9150612f8c82612f4b565b602082019050919050565b60006020820190508181036000830152612fb081612f74565b9050919050565b6000612fc282612544565b9150612fcd83612544565b9250828201905080821115612fe557612fe461277b565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000613021601a8361243a565b915061302c82612feb565b602082019050919050565b6000602082019050818103600083015261305081613014565b9050919050565b600061306282612544565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036130945761309361277b565b5b600182019050919050565b60006130aa82612544565b91506130b583612544565b92508282039050818111156130cd576130cc61277b565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061310d82612544565b915061311883612544565b925082613128576131276130d3565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061318f60218361243a565b915061319a82613133565b604082019050919050565b600060208201905081810360008301526131be81613182565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61325881612506565b82525050565b600061326a838361324f565b60208301905092915050565b6000602082019050919050565b600061328e82613223565b613298818561322e565b93506132a38361323f565b8060005b838110156132d45781516132bb888261325e565b97506132c683613276565b9250506001810190506132a7565b5085935050505092915050565b600060a0820190506132f660008301886125f0565b6133036020830187612b86565b81810360408301526133158186613283565b90506133246060830185612711565b61333160808301846125f0565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000613371601b8361243a565b915061337c8261333b565b602082019050919050565b600060208201905081810360008301526133a081613364565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122040e938f9200ee152ab89fd2bf732ab87779745bc2933adfac5462e0f5ff68d7064736f6c634300081300330000000000000000000000008eff033ce6faf9ccb27fce034cf35ce94ff9399b

Deployed Bytecode

0x60806040526004361061012e5760003560e01c8063715018a6116100ab57806395d89b411161006f57806395d89b41146103b7578063a9059cbb146103e2578063bf474bed1461041f578063c9567bf91461044a578063dd62ed3e14610461578063f88de0c31461049e57610135565b8063715018a6146103085780637d1db4a51461031f5780638129fc1c1461034a5780638da5cb5b146103615780638f9a55c01461038c57610135565b806318160ddd116100f257806318160ddd1461022157806323b872dd1461024c578063313ce567146102895780634019cfa9146102b457806370a08231146102cb57610135565b806306fdde031461013a578063095ea7b3146101655780630b7640b8146101a25780630b78f9c0146101cd5780630faee56f146101f657610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f6104b5565b60405161015c91906124bf565b60405180910390f35b34801561017157600080fd5b5061018c6004803603810190610187919061257a565b6104f2565b60405161019991906125d5565b60405180910390f35b3480156101ae57600080fd5b506101b7610510565b6040516101c491906125ff565b60405180910390f35b3480156101d957600080fd5b506101f460048036038101906101ef919061261a565b61052f565b005b34801561020257600080fd5b5061020b61074b565b60405161021891906125ff565b60405180910390f35b34801561022d57600080fd5b50610236610751565b60405161024391906125ff565b60405180910390f35b34801561025857600080fd5b50610273600480360381019061026e919061265a565b610775565b60405161028091906125d5565b60405180910390f35b34801561029557600080fd5b5061029e61084e565b6040516102ab91906126c9565b60405180910390f35b3480156102c057600080fd5b506102c9610857565b005b3480156102d757600080fd5b506102f260048036038101906102ed91906126e4565b610987565b6040516102ff91906125ff565b60405180910390f35b34801561031457600080fd5b5061031d6109d0565b005b34801561032b57600080fd5b50610334610b23565b60405161034191906125ff565b60405180910390f35b34801561035657600080fd5b5061035f610b29565b005b34801561036d57600080fd5b50610376611085565b6040516103839190612720565b60405180910390f35b34801561039857600080fd5b506103a16110ae565b6040516103ae91906125ff565b60405180910390f35b3480156103c357600080fd5b506103cc6110b4565b6040516103d991906124bf565b60405180910390f35b3480156103ee57600080fd5b506104096004803603810190610404919061257a565b6110f1565b60405161041691906125d5565b60405180910390f35b34801561042b57600080fd5b5061043461110f565b60405161044191906125ff565b60405180910390f35b34801561045657600080fd5b5061045f61112e565b005b34801561046d57600080fd5b506104886004803603810190610483919061273b565b6112a2565b60405161049591906125ff565b60405180910390f35b3480156104aa57600080fd5b506104b3611329565b005b60606040518060400160405280600681526020017f4e65787461720000000000000000000000000000000000000000000000000000815250905090565b60006105066104ff6113ad565b84846113b5565b6001905092915050565b6012600a61051e91906128dd565b62030d4061052c9190612928565b81565b6105376113ad565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105bb906129b6565b60405180910390fd5b601e82111580156105d65750601e8111155b80156105ee5750600e60009054906101000a900460ff165b61062d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161062490612a22565b60405180910390fd5b816007819055508060088190555060006005600854116106885761068360646012600a61065a91906128dd565b633b9aca006106699190612928565b60016106759190612928565b61154990919063ffffffff16565b6106cb565b6106c56103e86012600a61069c91906128dd565b633b9aca006106ab9190612928565b60056106b79190612928565b61154990919063ffffffff16565b600b8190555b90507f29ddd482d71f6b4ad9a6b3978c21b2aa56a029d1de02646578471e24a465cb45838361072d6103e86012600a61070491906128dd565b633b9aca006107139190612928565b600561071f9190612928565b61154990919063ffffffff16565b841460405161073e93929190612a42565b60405180910390a1505050565b600b5481565b60006012600a61076191906128dd565b633b9aca006107709190612928565b905090565b6000610782848484611593565b6108438461078e6113ad565b61083e856040518060600160405280602881526020016133a860289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107f46113ad565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f619092919063ffffffff16565b6113b5565b600190509392505050565b60006012905090565b61085f6113ad565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e3906129b6565b60405180910390fd5b6012600a6108fa91906128dd565b633b9aca006109099190612928565b600c819055506012600a61091d91906128dd565b633b9aca0061092c9190612928565b600d819055507f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96012600a61096191906128dd565b633b9aca006109709190612928565b60405161097d91906125ff565b60405180910390a1565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6109d86113ad565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5c906129b6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600c5481565b610b316113ad565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bbe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb5906129b6565b60405180910390fd5b600e60009054906101000a900460ff1615610c0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0590612ac5565b60405180910390fd5b6000610c6d610c566064610c4860196012600a610c2b91906128dd565b633b9aca00610c3a9190612928565b611fc590919063ffffffff16565b61154990919063ffffffff16565b610c5f30610987565b61203f90919063ffffffff16565b9050737a250d5630b4cf539739df2c5dacb4c659f2488d600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610d0d30600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166012600a610cf991906128dd565b633b9aca00610d089190612928565b6113b5565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9e9190612afa565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e4b9190612afa565b6040518363ffffffff1660e01b8152600401610e68929190612b27565b6020604051808303816000875af1158015610e87573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eab9190612afa565b600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473084600080610f376113ad565b426040518863ffffffff1660e01b8152600401610f5996959493929190612b95565b60606040518083038185885af1158015610f77573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f9c9190612c0b565b505050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161103e929190612c5e565b6020604051808303816000875af115801561105d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110819190612cb3565b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600d5481565b60606040518060400160405280600381526020017f4e54520000000000000000000000000000000000000000000000000000000000815250905090565b60006111056110fe6113ad565b8484611593565b6001905092915050565b6012600a61111d91906128dd565b621e848061112b9190612928565b81565b6111366113ad565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ba906129b6565b60405180910390fd5b600e60009054906101000a900460ff1615611213576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120a90612d2c565b60405180910390fd5b6001600e60026101000a81548160ff0219169083151502179055506001600e60006101000a81548160ff0219169083151502179055507f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c600e60009054906101000a900460ff16600e60029054906101000a900460ff16604051611298929190612d4c565b60405180910390a1565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600e60009054906101000a900460ff1661134257600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156113aa573d6000803e3d6000fd5b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561141f5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b61145e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145590612dc1565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161153c91906125ff565b60405180910390a3505050565b600061158b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612089565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156115fd5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b61163c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163390612e2d565b60405180910390fd5b6000811161167f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167690612ebf565b60405180910390fd5b6000611689611085565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156116f757506116c7611085565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611ca457600e60009054906101000a900460ff166117f157600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806117b15750600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6117f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e790612f2b565b60405180910390fd5b5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561189c5750600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156118f25750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156119ad57600c5482111561193c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161193390612f97565b60405180910390fd5b600d548261194985610987565b6119539190612fb7565b1115611994576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198b90613037565b60405180910390fd5b600960008154809291906119a790613057565b91905055505b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611a3657503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611a7c57611a756064611a67602360095411611a5457601e611a58565b6008545b85611fc590919063ffffffff16565b61154990919063ffffffff16565b9050611b48565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611b0557503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611b4757611b446064611b36602360095411611b23576019611b27565b6007545b85611fc590919063ffffffff16565b61154990919063ffffffff16565b90505b5b80600a6000828254611b5a9190612fb7565b925050819055506000611b6c30610987565b9050600e60019054906101000a900460ff16158015611bd85750600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611bf05750600e60029054906101000a900460ff165b8015611c1657506012600a611c0591906128dd565b621e8480611c139190612928565b81115b8015611c2457506014600954115b8015611c4c57506012600a611c3991906128dd565b62030d40611c479190612928565b600a54115b15611ca2576000600b548211611c625781611c66565b600b545b9050611c7f818511611c785784611c7a565b815b6120ec565b60004790506000811115611c9757611c9647612365565b5b6000600a8190555050505b505b6000811115611da857611cff81600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123d190919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d9f91906125ff565b60405180910390a35b611dfa82600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461203f90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ea1611e53828461203f90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123d190919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611f46848661203f90919063ffffffff16565b604051611f5391906125ff565b60405180910390a350505050565b6000838311158290611fa9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fa091906124bf565b60405180910390fd5b5060008385611fb8919061309f565b9050809150509392505050565b6000808303611fd75760009050612039565b60008284611fe59190612928565b9050828482611ff49190613102565b14612034576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161202b906131a5565b60405180910390fd5b809150505b92915050565b600061208183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f61565b905092915050565b600080831182906120d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120c791906124bf565b60405180910390fd5b50600083856120df9190613102565b9050809150509392505050565b6001600e60016101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115612124576121236131c5565b5b6040519080825280602002602001820160405280156121525781602001602082028036833780820191505090505b509050308160008151811061216a576121696131f4565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612211573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122359190612afa565b81600181518110612249576122486131f4565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506122b030600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846113b5565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016123149594939291906132e1565b600060405180830381600087803b15801561232e57600080fd5b505af1158015612342573d6000803e3d6000fd5b50505050506000600e60016101000a81548160ff02191690831515021790555050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156123cd573d6000803e3d6000fd5b5050565b60008082846123e09190612fb7565b905083811015612425576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161241c90613387565b60405180910390fd5b8091505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561246957808201518184015260208101905061244e565b60008484015250505050565b6000601f19601f8301169050919050565b60006124918261242f565b61249b818561243a565b93506124ab81856020860161244b565b6124b481612475565b840191505092915050565b600060208201905081810360008301526124d98184612486565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612511826124e6565b9050919050565b61252181612506565b811461252c57600080fd5b50565b60008135905061253e81612518565b92915050565b6000819050919050565b61255781612544565b811461256257600080fd5b50565b6000813590506125748161254e565b92915050565b60008060408385031215612591576125906124e1565b5b600061259f8582860161252f565b92505060206125b085828601612565565b9150509250929050565b60008115159050919050565b6125cf816125ba565b82525050565b60006020820190506125ea60008301846125c6565b92915050565b6125f981612544565b82525050565b600060208201905061261460008301846125f0565b92915050565b60008060408385031215612631576126306124e1565b5b600061263f85828601612565565b925050602061265085828601612565565b9150509250929050565b600080600060608486031215612673576126726124e1565b5b60006126818682870161252f565b93505060206126928682870161252f565b92505060406126a386828701612565565b9150509250925092565b600060ff82169050919050565b6126c3816126ad565b82525050565b60006020820190506126de60008301846126ba565b92915050565b6000602082840312156126fa576126f96124e1565b5b60006127088482850161252f565b91505092915050565b61271a81612506565b82525050565b60006020820190506127356000830184612711565b92915050565b60008060408385031215612752576127516124e1565b5b60006127608582860161252f565b92505060206127718582860161252f565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115612801578086048111156127dd576127dc61277b565b5b60018516156127ec5780820291505b80810290506127fa856127aa565b94506127c1565b94509492505050565b60008261281a57600190506128d6565b8161282857600090506128d6565b816001811461283e576002811461284857612877565b60019150506128d6565b60ff84111561285a5761285961277b565b5b8360020a9150848211156128715761287061277b565b5b506128d6565b5060208310610133831016604e8410600b84101617156128ac5782820a9050838111156128a7576128a661277b565b5b6128d6565b6128b984848460016127b7565b925090508184048111156128d0576128cf61277b565b5b81810290505b9392505050565b60006128e882612544565b91506128f3836126ad565b92506129207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461280a565b905092915050565b600061293382612544565b915061293e83612544565b925082820261294c81612544565b915082820484148315176129635761296261277b565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006129a060208361243a565b91506129ab8261296a565b602082019050919050565b600060208201905081810360008301526129cf81612993565b9050919050565b7f457863656564732076616c756500000000000000000000000000000000000000600082015250565b6000612a0c600d8361243a565b9150612a17826129d6565b602082019050919050565b60006020820190508181036000830152612a3b816129ff565b9050919050565b6000606082019050612a5760008301866125f0565b612a6460208301856125f0565b612a7160408301846125c6565b949350505050565b7f696e697420616c72656164792063616c6c656400000000000000000000000000600082015250565b6000612aaf60138361243a565b9150612aba82612a79565b602082019050919050565b60006020820190508181036000830152612ade81612aa2565b9050919050565b600081519050612af481612518565b92915050565b600060208284031215612b1057612b0f6124e1565b5b6000612b1e84828501612ae5565b91505092915050565b6000604082019050612b3c6000830185612711565b612b496020830184612711565b9392505050565b6000819050919050565b6000819050919050565b6000612b7f612b7a612b7584612b50565b612b5a565b612544565b9050919050565b612b8f81612b64565b82525050565b600060c082019050612baa6000830189612711565b612bb760208301886125f0565b612bc46040830187612b86565b612bd16060830186612b86565b612bde6080830185612711565b612beb60a08301846125f0565b979650505050505050565b600081519050612c058161254e565b92915050565b600080600060608486031215612c2457612c236124e1565b5b6000612c3286828701612bf6565b9350506020612c4386828701612bf6565b9250506040612c5486828701612bf6565b9150509250925092565b6000604082019050612c736000830185612711565b612c8060208301846125f0565b9392505050565b612c90816125ba565b8114612c9b57600080fd5b50565b600081519050612cad81612c87565b92915050565b600060208284031215612cc957612cc86124e1565b5b6000612cd784828501612c9e565b91505092915050565b7f74726164696e6720616c7265616479206f70656e000000000000000000000000600082015250565b6000612d1660148361243a565b9150612d2182612ce0565b602082019050919050565b60006020820190508181036000830152612d4581612d09565b9050919050565b6000604082019050612d6160008301856125c6565b612d6e60208301846125c6565b9392505050565b7f45524332303a20617070726f766520746865207a65726f206164647265737300600082015250565b6000612dab601f8361243a565b9150612db682612d75565b602082019050919050565b60006020820190508181036000830152612dda81612d9e565b9050919050565b7f45524332303a207472616e7366657220746865207a65726f2061646472657373600082015250565b6000612e1760208361243a565b9150612e2282612de1565b602082019050919050565b60006020820190508181036000830152612e4681612e0a565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612ea960298361243a565b9150612eb482612e4d565b604082019050919050565b60006020820190508181036000830152612ed881612e9c565b9050919050565b7f74726164696e67206e6f7420796574206f70656e000000000000000000000000600082015250565b6000612f1560148361243a565b9150612f2082612edf565b602082019050919050565b60006020820190508181036000830152612f4481612f08565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612f8160198361243a565b9150612f8c82612f4b565b602082019050919050565b60006020820190508181036000830152612fb081612f74565b9050919050565b6000612fc282612544565b9150612fcd83612544565b9250828201905080821115612fe557612fe461277b565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000613021601a8361243a565b915061302c82612feb565b602082019050919050565b6000602082019050818103600083015261305081613014565b9050919050565b600061306282612544565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036130945761309361277b565b5b600182019050919050565b60006130aa82612544565b91506130b583612544565b92508282039050818111156130cd576130cc61277b565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061310d82612544565b915061311883612544565b925082613128576131276130d3565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061318f60218361243a565b915061319a82613133565b604082019050919050565b600060208201905081810360008301526131be81613182565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61325881612506565b82525050565b600061326a838361324f565b60208301905092915050565b6000602082019050919050565b600061328e82613223565b613298818561322e565b93506132a38361323f565b8060005b838110156132d45781516132bb888261325e565b97506132c683613276565b9250506001810190506132a7565b5085935050505092915050565b600060a0820190506132f660008301886125f0565b6133036020830187612b86565b81810360408301526133158186613283565b90506133246060830185612711565b61333160808301846125f0565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000613371601b8361243a565b915061337c8261333b565b602082019050919050565b600060208201905081810360008301526133a081613364565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122040e938f9200ee152ab89fd2bf732ab87779745bc2933adfac5462e0f5ff68d7064736f6c63430008130033

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

0000000000000000000000008eff033ce6faf9ccb27fce034cf35ce94ff9399b

-----Decoded View---------------
Arg [0] : taxWallet (address): 0x8eFF033Ce6Faf9CCB27fCE034Cf35ce94ff9399B

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000008eff033ce6faf9ccb27fce034cf35ce94ff9399b


Deployed Bytecode Sourcemap

4167:9535:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6252:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7158:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5202:62;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13196:466;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5345:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6529:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7359:446;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6438:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12904:150;;;;;;;;;;;;;:::i;:::-;;6632:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3119:148;;;;;;;;;;;;;:::i;:::-;;5404:54;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11752:917;;;;;;;;;;;;;:::i;:::-;;2905:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5465:56;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6343:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6759:199;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5271:67;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12677:219;;;;;;;;;;;;;:::i;:::-;;6966:184;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13062:126;;;;;;;;;;;;;:::i;:::-;;6252:83;6289:13;6322:5;;;;;;;;;;;;;;;;;6315:12;;6252:83;:::o;7158:193::-;7260:4;7282:39;7291:12;:10;:12::i;:::-;7305:7;7314:6;7282:8;:39::i;:::-;7339:4;7332:11;;7158:193;;;;:::o;5202:62::-;5125:2;5251;:13;;;;:::i;:::-;5242:6;:22;;;;:::i;:::-;5202:62;:::o;13196:466::-;3042:12;:10;:12::i;:::-;3032:22;;:6;;;;;;;;;;:22;;;3024:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13304:2:::1;13291:9;:15;;:35;;;;;13324:2;13310:10;:16;;13291:35;:50;;;;;13330:11;;;;;;;;;;;13291:50;13282:100;;;;;;;;;;;;:::i;:::-;;;;;;;;;13408:9;13393:12;:24;;;;13444:10;13428:13;:26;;;;13465:18;13502:1;13486:13;;:17;:81;;13546:21;13563:3;5125:2;5182;:13;;;;:::i;:::-;5169:10;:26;;;;:::i;:::-;13547:1;:10;;;;:::i;:::-;13546:16;;:21;;;;:::i;:::-;13486:81;;;13520:22;13537:4;5125:2;5182;:13;;;;:::i;:::-;5169:10;:26;;;;:::i;:::-;13521:1;:10;;;;:::i;:::-;13520:16;;:22;;;;:::i;:::-;13506:11;:36;;;13486:81;13465:102;;13583:71;13592:9;13603:10;13630:22;13647:4;5125:2;5182;:13;;;;:::i;:::-;5169:10;:26;;;;:::i;:::-;13631:1;:10;;;;:::i;:::-;13630:16;;:22;;;;:::i;:::-;13616:10;:36;13583:71;;;;;;;;:::i;:::-;;;;;;;;13271:391;13196:466:::0;;:::o;5345:52::-;;;;:::o;6529:95::-;6582:7;5125:2;5182;:13;;;;:::i;:::-;5169:10;:26;;;;:::i;:::-;6602:14;;6529:95;:::o;7359:446::-;7491:4;7508:36;7518:6;7526:9;7537:6;7508:9;:36::i;:::-;7555:220;7578:6;7599:12;:10;:12::i;:::-;7626:138;7682:6;7626:138;;;;;;;;;;;;;;;;;:11;:19;7638:6;7626:19;;;;;;;;;;;;;;;:33;7646:12;:10;:12::i;:::-;7626:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;7555:8;:220::i;:::-;7793:4;7786:11;;7359:446;;;;;:::o;6438:83::-;6479:5;5125:2;6497:16;;6438:83;:::o;12904:150::-;3042:12;:10;:12::i;:::-;3032:22;;:6;;;;;;;;;;:22;;;3024:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5125:2:::1;5182;:13;;;;:::i;:::-;5169:10;:26;;;;:::i;:::-;12955:12;:22;;;;5125:2;5182;:13;;;;:::i;:::-;5169:10;:26;;;;:::i;:::-;12988:14;:24;;;;13028:18;5125:2;5182;:13;;;;:::i;:::-;5169:10;:26;;;;:::i;:::-;13028:18;;;;;;:::i;:::-;;;;;;;;12904:150::o:0;6632:119::-;6698:7;6725:9;:18;6735:7;6725:18;;;;;;;;;;;;;;;;6718:25;;6632:119;;;:::o;3119:148::-;3042:12;:10;:12::i;:::-;3032:22;;:6;;;;;;;;;;:22;;;3024:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3226:1:::1;3189:40;;3210:6;::::0;::::1;;;;;;;;3189:40;;;;;;;;;;;;3257:1;3240:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3119:148::o:0;5404:54::-;;;;:::o;11752:917::-;3042:12;:10;:12::i;:::-;3032:22;;:6;;;;;;;;;;:22;;;3024:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11813:11:::1;;;;;;;;;;;11812:12;11804:44;;;;;;;;;;;;:::i;:::-;;;;;;;;;11859:19;11881:90;11924:36;11956:3;11924:27;4607:2;5125;5182;:13;;;;:::i;:::-;5169:10;:26;;;;:::i;:::-;11924:11;;:27;;;;:::i;:::-;:31;;:36;;;;:::i;:::-;11881:24;11899:4;11881:9;:24::i;:::-;:28;;:90;;;;:::i;:::-;11859:112;;12033:42;11982:15;;:104;;;;;;;;;;;;;;;;;;12097:58;12114:4;12129:15;;;;;;;;;;;5125:2;5182;:13;;;;:::i;:::-;5169:10;:26;;;;:::i;:::-;12097:8;:58::i;:::-;12200:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12182:55;;;12260:4;12280:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12182:131;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12166:13;;:147;;;;;;;;;;;;;;;;;;12324:15;;;;;;;;;;;:31;;;12363:21;12408:4;12428:11;12454:1;12470::::0;12486:12:::1;:10;:12::i;:::-;12513:15;12324:215;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;12557:13;;;;;;;;;;;12550:29;;;12602:15;;;;;;;;;;;12633:17;12550:111;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11793:876;11752:917::o:0;2905:79::-;2943:7;2970:6;;;;;;;;;;;2963:13;;2905:79;:::o;5465:56::-;;;;:::o;6343:87::-;6382:13;6415:7;;;;;;;;;;;;;;;;;6408:14;;6343:87;:::o;6759:199::-;6864:4;6886:42;6896:12;:10;:12::i;:::-;6910:9;6921:6;6886:9;:42::i;:::-;6946:4;6939:11;;6759:199;;;;:::o;5271:67::-;5125:2;5325;:13;;;;:::i;:::-;5315:7;:23;;;;:::i;:::-;5271:67;:::o;12677:219::-;3042:12;:10;:12::i;:::-;3032:22;;:6;;;;;;;;;;:22;;;3024:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12739:11:::1;;;;;;;;;;;12738:12;12730:45;;;;;;;;;;;;:::i;:::-;;;;;;;;;12800:4;12786:11;;:18;;;;;;;;;;;;;;;;;;12829:4;12815:11;;:18;;;;;;;;;;;;;;;;;;12849:39;12863:11;;;;;;;;;;;12876;;;;;;;;;;;12849:39;;;;;;;:::i;:::-;;;;;;;;12677:219::o:0;6966:184::-;7083:7;7115:11;:18;7127:5;7115:18;;;;;;;;;;;;;;;:27;7134:7;7115:27;;;;;;;;;;;;;;;;7108:34;;6966:184;;;;:::o;13062:126::-;13115:11;;;;;;;;;;;13107:20;;;;;;13138:10;;;;;;;;;;;:19;;:42;13158:21;13138:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13062:126::o;445:98::-;498:7;525:10;518:17;;445:98;:::o;7813:347::-;7971:1;7954:19;;:5;:19;;;;:44;;;;;7996:1;7977:21;;:7;:21;;;;7954:44;7932:125;;;;;;;;;;;;:::i;:::-;;;;;;;;;8098:6;8068:11;:18;8080:5;8068:18;;;;;;;;;;;;;;;:27;8087:7;8068:27;;;;;;;;;;;;;;;:36;;;;8136:7;8120:32;;8129:5;8120:32;;;8145:6;8120:32;;;;;;:::i;:::-;;;;;;;;7813:347;;;:::o;2193:132::-;2251:7;2278:39;2282:1;2285;2278:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2271:46;;2193:132;;;;:::o;8168:2985::-;8320:1;8304:18;;:4;:18;;;;:38;;;;;8340:1;8326:16;;:2;:16;;;;8304:38;8282:120;;;;;;;;;;;;:::i;:::-;;;;;;;;;8430:1;8421:6;:10;8413:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8488:17;8534:7;:5;:7::i;:::-;8526:15;;:4;:15;;;;:32;;;;;8551:7;:5;:7::i;:::-;8545:13;;:2;:13;;;;8526:32;8522:2260;;;8580:11;;;;;;;;;;;8575:197;;8642:18;:22;8661:2;8642:22;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;8668:18;:24;8687:4;8668:24;;;;;;;;;;;;;;;;;;;;;;;;;8642:50;8612:144;;;;;;;;;;;;:::i;:::-;;;;;;;;;8575:197;8818:13;;;;;;;;;;;8810:21;;:4;:21;;;:72;;;;;8866:15;;;;;;;;;;;8852:30;;:2;:30;;;;8810:72;:116;;;;;8904:18;:22;8923:2;8904:22;;;;;;;;;;;;;;;;;;;;;;;;;8903:23;8810:116;8788:438;;;8979:12;;8969:6;:22;;8961:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;9096:14;;9086:6;9070:13;9080:2;9070:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;9040:140;;;;;;;;;;;;:::i;:::-;;;;;;;;;9199:9;;:11;;;;;;;;;:::i;:::-;;;;;;8788:438;9252:13;;;;;;;;;;;9246:19;;:2;:19;;;:44;;;;;9285:4;9269:21;;:4;:21;;;;9246:44;9242:667;;;9323:235;9554:3;9323:204;4764:2;9383:9;;:28;9382:122;;4659:2;9382:122;;;9444:13;;9382:122;9323:6;:32;;:204;;;;:::i;:::-;:230;;:235;;;;:::i;:::-;9311:247;;9242:667;;;9592:13;;;;;;;;;;;9584:21;;:4;:21;;;:44;;;;;9623:4;9609:19;;:2;:19;;;;9584:44;9580:329;;;9661:232;9889:3;9661:201;4711:2;9721:9;;:27;9720:119;;4607:2;9720:119;;;9781:12;;9720:119;9661:6;:32;;:201;;;;:::i;:::-;:227;;:232;;;;:::i;:::-;9649:244;;9580:329;9242:667;9938:9;9925;;:22;;;;;;;:::i;:::-;;;;;;;;9962:28;9993:24;10011:4;9993:9;:24::i;:::-;9962:55;;10055:6;;;;;;;;;;;10054:7;:47;;;;;10088:13;;;;;;;;;;;10082:19;;:2;:19;;;10054:47;:79;;;;;10122:11;;;;;;;;;;;10054:79;:140;;;;;5125:2;5325;:13;;;;:::i;:::-;5315:7;:23;;;;:::i;:::-;10154:20;:40;10054:140;:191;;;;;4819:2;10215:9;;:30;10054:191;:237;;;;;5125:2;5251;:13;;;;:::i;:::-;5242:6;:22;;;;:::i;:::-;10266:9;;:25;10054:237;10032:739;;;10326:14;10367:11;;10344:20;:34;10343:115;;10438:20;10343:115;;;10403:11;;10343:115;10326:132;;10477:53;10504:6;10495;:15;10494:35;;10523:6;10494:35;;;10514:6;10494:35;10477:16;:53::i;:::-;10549:26;10578:21;10549:50;;10643:1;10622:18;:22;10618:106;;;10669:35;10682:21;10669:12;:35::i;:::-;10618:106;10754:1;10742:9;:13;;;;10307:464;;10032:739;8560:2222;8522:2260;10810:1;10798:9;:13;10794:172;;;10855:39;10884:9;10855;:24;10873:4;10855:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;10828:9;:24;10846:4;10828:24;;;;;;;;;;;;;;;:66;;;;10937:4;10914:40;;10923:4;10914:40;;;10944:9;10914:40;;;;;;:::i;:::-;;;;;;;;10794:172;10994:27;11014:6;10994:9;:15;11004:4;10994:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;10976:9;:15;10986:4;10976:15;;;;;;;;;;;;;;;:45;;;;11048:40;11066:21;11077:9;11066:6;:10;;:21;;;;:::i;:::-;11048:9;:13;11058:2;11048:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;11032:9;:13;11042:2;11032:13;;;;;;;;;;;;;;;:56;;;;11119:2;11104:41;;11113:4;11104:41;;;11123:21;11134:9;11123:6;:10;;:21;;;;:::i;:::-;11104:41;;;;;;:::i;:::-;;;;;;;;8271:2882;8168:2985;;;:::o;1707:224::-;1827:7;1860:1;1855;:6;;1863:12;1847:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1887:9;1903:1;1899;:5;;;;:::i;:::-;1887:17;;1922:1;1915:8;;;1707:224;;;;;:::o;1939:246::-;1997:7;2026:1;2021;:6;2017:47;;2051:1;2044:8;;;;2017:47;2074:9;2090:1;2086;:5;;;;:::i;:::-;2074:17;;2119:1;2114;2110;:5;;;;:::i;:::-;:10;2102:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2176:1;2169:8;;;1939:246;;;;;:::o;1563:136::-;1621:7;1648:43;1652:1;1655;1648:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1641:50;;1563:136;;;;:::o;2333:223::-;2453:7;2485:1;2481;:5;2488:12;2473:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2512:9;2528:1;2524;:5;;;;:::i;:::-;2512:17;;2547:1;2540:8;;;2333:223;;;;;:::o;11261:483::-;5857:4;5848:6;;:13;;;;;;;;;;;;;;;;;;11339:21:::1;11377:1;11363:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11339:40;;11408:4;11390;11395:1;11390:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;11434:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11424:4;11429:1;11424:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;11467:62;11484:4;11499:15;;;;;;;;;;;11517:11;11467:8;:62::i;:::-;11540:15;;;;;;;;;;;:66;;;11621:11;11647:1;11663:4;11690;11710:15;11540:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;11328:416;5893:5:::0;5884:6;;:14;;;;;;;;;;;;;;;;;;11261:483;:::o;11161:92::-;11218:10;;;;;;;;;;;:19;;:27;11238:6;11218:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11161:92;:::o;1376:179::-;1434:7;1454:9;1470:1;1466;:5;;;;:::i;:::-;1454:17;;1495:1;1490;:6;;1482:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1546:1;1539:8;;;1376:179;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:474::-;3866:6;3874;3923:2;3911:9;3902:7;3898:23;3894:32;3891:119;;;3929:79;;:::i;:::-;3891:119;4049:1;4074:53;4119:7;4110:6;4099:9;4095:22;4074:53;:::i;:::-;4064:63;;4020:117;4176:2;4202:53;4247:7;4238:6;4227:9;4223:22;4202:53;:::i;:::-;4192:63;;4147:118;3798:474;;;;;:::o;4278:619::-;4355:6;4363;4371;4420:2;4408:9;4399:7;4395:23;4391:32;4388:119;;;4426:79;;:::i;:::-;4388:119;4546:1;4571:53;4616:7;4607:6;4596:9;4592:22;4571:53;:::i;:::-;4561:63;;4517:117;4673:2;4699:53;4744:7;4735:6;4724:9;4720:22;4699:53;:::i;:::-;4689:63;;4644:118;4801:2;4827:53;4872:7;4863:6;4852:9;4848:22;4827:53;:::i;:::-;4817:63;;4772:118;4278:619;;;;;:::o;4903:86::-;4938:7;4978:4;4971:5;4967:16;4956:27;;4903:86;;;:::o;4995:112::-;5078:22;5094:5;5078:22;:::i;:::-;5073:3;5066:35;4995:112;;:::o;5113:214::-;5202:4;5240:2;5229:9;5225:18;5217:26;;5253:67;5317:1;5306:9;5302:17;5293:6;5253:67;:::i;:::-;5113:214;;;;:::o;5333:329::-;5392:6;5441:2;5429:9;5420:7;5416:23;5412:32;5409:119;;;5447:79;;:::i;:::-;5409:119;5567:1;5592:53;5637:7;5628:6;5617:9;5613:22;5592:53;:::i;:::-;5582:63;;5538:117;5333:329;;;;:::o;5668:118::-;5755:24;5773:5;5755:24;:::i;:::-;5750:3;5743:37;5668:118;;:::o;5792:222::-;5885:4;5923:2;5912:9;5908:18;5900:26;;5936:71;6004:1;5993:9;5989:17;5980:6;5936:71;:::i;:::-;5792:222;;;;:::o;6020:474::-;6088:6;6096;6145:2;6133:9;6124:7;6120:23;6116:32;6113:119;;;6151:79;;:::i;:::-;6113:119;6271:1;6296:53;6341:7;6332:6;6321:9;6317:22;6296:53;:::i;:::-;6286:63;;6242:117;6398:2;6424:53;6469:7;6460:6;6449:9;6445:22;6424:53;:::i;:::-;6414:63;;6369:118;6020:474;;;;;:::o;6500:180::-;6548:77;6545:1;6538:88;6645:4;6642:1;6635:15;6669:4;6666:1;6659:15;6686:102;6728:8;6775:5;6772:1;6768:13;6747:34;;6686:102;;;:::o;6794:848::-;6855:5;6862:4;6886:6;6877:15;;6910:5;6901:14;;6924:712;6945:1;6935:8;6932:15;6924:712;;;7040:4;7035:3;7031:14;7025:4;7022:24;7019:50;;;7049:18;;:::i;:::-;7019:50;7099:1;7089:8;7085:16;7082:451;;;7514:4;7507:5;7503:16;7494:25;;7082:451;7564:4;7558;7554:15;7546:23;;7594:32;7617:8;7594:32;:::i;:::-;7582:44;;6924:712;;;6794:848;;;;;;;:::o;7648:1073::-;7702:5;7893:8;7883:40;;7914:1;7905:10;;7916:5;;7883:40;7942:4;7932:36;;7959:1;7950:10;;7961:5;;7932:36;8028:4;8076:1;8071:27;;;;8112:1;8107:191;;;;8021:277;;8071:27;8089:1;8080:10;;8091:5;;;8107:191;8152:3;8142:8;8139:17;8136:43;;;8159:18;;:::i;:::-;8136:43;8208:8;8205:1;8201:16;8192:25;;8243:3;8236:5;8233:14;8230:40;;;8250:18;;:::i;:::-;8230:40;8283:5;;;8021:277;;8407:2;8397:8;8394:16;8388:3;8382:4;8379:13;8375:36;8357:2;8347:8;8344:16;8339:2;8333:4;8330:12;8326:35;8310:111;8307:246;;;8463:8;8457:4;8453:19;8444:28;;8498:3;8491:5;8488:14;8485:40;;;8505:18;;:::i;:::-;8485:40;8538:5;;8307:246;8578:42;8616:3;8606:8;8600:4;8597:1;8578:42;:::i;:::-;8563:57;;;;8652:4;8647:3;8643:14;8636:5;8633:25;8630:51;;;8661:18;;:::i;:::-;8630:51;8710:4;8703:5;8699:16;8690:25;;7648:1073;;;;;;:::o;8727:281::-;8785:5;8809:23;8827:4;8809:23;:::i;:::-;8801:31;;8853:25;8869:8;8853:25;:::i;:::-;8841:37;;8897:104;8934:66;8924:8;8918:4;8897:104;:::i;:::-;8888:113;;8727:281;;;;:::o;9014:410::-;9054:7;9077:20;9095:1;9077:20;:::i;:::-;9072:25;;9111:20;9129:1;9111:20;:::i;:::-;9106:25;;9166:1;9163;9159:9;9188:30;9206:11;9188:30;:::i;:::-;9177:41;;9367:1;9358:7;9354:15;9351:1;9348:22;9328:1;9321:9;9301:83;9278:139;;9397:18;;:::i;:::-;9278:139;9062:362;9014:410;;;;:::o;9430:182::-;9570:34;9566:1;9558:6;9554:14;9547:58;9430:182;:::o;9618:366::-;9760:3;9781:67;9845:2;9840:3;9781:67;:::i;:::-;9774:74;;9857:93;9946:3;9857:93;:::i;:::-;9975:2;9970:3;9966:12;9959:19;;9618:366;;;:::o;9990:419::-;10156:4;10194:2;10183:9;10179:18;10171:26;;10243:9;10237:4;10233:20;10229:1;10218:9;10214:17;10207:47;10271:131;10397:4;10271:131;:::i;:::-;10263:139;;9990:419;;;:::o;10415:163::-;10555:15;10551:1;10543:6;10539:14;10532:39;10415:163;:::o;10584:366::-;10726:3;10747:67;10811:2;10806:3;10747:67;:::i;:::-;10740:74;;10823:93;10912:3;10823:93;:::i;:::-;10941:2;10936:3;10932:12;10925:19;;10584:366;;;:::o;10956:419::-;11122:4;11160:2;11149:9;11145:18;11137:26;;11209:9;11203:4;11199:20;11195:1;11184:9;11180:17;11173:47;11237:131;11363:4;11237:131;:::i;:::-;11229:139;;10956:419;;;:::o;11381:430::-;11524:4;11562:2;11551:9;11547:18;11539:26;;11575:71;11643:1;11632:9;11628:17;11619:6;11575:71;:::i;:::-;11656:72;11724:2;11713:9;11709:18;11700:6;11656:72;:::i;:::-;11738:66;11800:2;11789:9;11785:18;11776:6;11738:66;:::i;:::-;11381:430;;;;;;:::o;11817:169::-;11957:21;11953:1;11945:6;11941:14;11934:45;11817:169;:::o;11992:366::-;12134:3;12155:67;12219:2;12214:3;12155:67;:::i;:::-;12148:74;;12231:93;12320:3;12231:93;:::i;:::-;12349:2;12344:3;12340:12;12333:19;;11992:366;;;:::o;12364:419::-;12530:4;12568:2;12557:9;12553:18;12545:26;;12617:9;12611:4;12607:20;12603:1;12592:9;12588:17;12581:47;12645:131;12771:4;12645:131;:::i;:::-;12637:139;;12364:419;;;:::o;12789:143::-;12846:5;12877:6;12871:13;12862:22;;12893:33;12920:5;12893:33;:::i;:::-;12789:143;;;;:::o;12938:351::-;13008:6;13057:2;13045:9;13036:7;13032:23;13028:32;13025:119;;;13063:79;;:::i;:::-;13025:119;13183:1;13208:64;13264:7;13255:6;13244:9;13240:22;13208:64;:::i;:::-;13198:74;;13154:128;12938:351;;;;:::o;13295:332::-;13416:4;13454:2;13443:9;13439:18;13431:26;;13467:71;13535:1;13524:9;13520:17;13511:6;13467:71;:::i;:::-;13548:72;13616:2;13605:9;13601:18;13592:6;13548:72;:::i;:::-;13295:332;;;;;:::o;13633:85::-;13678:7;13707:5;13696:16;;13633:85;;;:::o;13724:60::-;13752:3;13773:5;13766:12;;13724:60;;;:::o;13790:158::-;13848:9;13881:61;13899:42;13908:32;13934:5;13908:32;:::i;:::-;13899:42;:::i;:::-;13881:61;:::i;:::-;13868:74;;13790:158;;;:::o;13954:147::-;14049:45;14088:5;14049:45;:::i;:::-;14044:3;14037:58;13954:147;;:::o;14107:807::-;14356:4;14394:3;14383:9;14379:19;14371:27;;14408:71;14476:1;14465:9;14461:17;14452:6;14408:71;:::i;:::-;14489:72;14557:2;14546:9;14542:18;14533:6;14489:72;:::i;:::-;14571:80;14647:2;14636:9;14632:18;14623:6;14571:80;:::i;:::-;14661;14737:2;14726:9;14722:18;14713:6;14661:80;:::i;:::-;14751:73;14819:3;14808:9;14804:19;14795:6;14751:73;:::i;:::-;14834;14902:3;14891:9;14887:19;14878:6;14834:73;:::i;:::-;14107:807;;;;;;;;;:::o;14920:143::-;14977:5;15008:6;15002:13;14993:22;;15024:33;15051:5;15024:33;:::i;:::-;14920:143;;;;:::o;15069:663::-;15157:6;15165;15173;15222:2;15210:9;15201:7;15197:23;15193:32;15190:119;;;15228:79;;:::i;:::-;15190:119;15348:1;15373:64;15429:7;15420:6;15409:9;15405:22;15373:64;:::i;:::-;15363:74;;15319:128;15486:2;15512:64;15568:7;15559:6;15548:9;15544:22;15512:64;:::i;:::-;15502:74;;15457:129;15625:2;15651:64;15707:7;15698:6;15687:9;15683:22;15651:64;:::i;:::-;15641:74;;15596:129;15069:663;;;;;:::o;15738:332::-;15859:4;15897:2;15886:9;15882:18;15874:26;;15910:71;15978:1;15967:9;15963:17;15954:6;15910:71;:::i;:::-;15991:72;16059:2;16048:9;16044:18;16035:6;15991:72;:::i;:::-;15738:332;;;;;:::o;16076:116::-;16146:21;16161:5;16146:21;:::i;:::-;16139:5;16136:32;16126:60;;16182:1;16179;16172:12;16126:60;16076:116;:::o;16198:137::-;16252:5;16283:6;16277:13;16268:22;;16299:30;16323:5;16299:30;:::i;:::-;16198:137;;;;:::o;16341:345::-;16408:6;16457:2;16445:9;16436:7;16432:23;16428:32;16425:119;;;16463:79;;:::i;:::-;16425:119;16583:1;16608:61;16661:7;16652:6;16641:9;16637:22;16608:61;:::i;:::-;16598:71;;16554:125;16341:345;;;;:::o;16692:170::-;16832:22;16828:1;16820:6;16816:14;16809:46;16692:170;:::o;16868:366::-;17010:3;17031:67;17095:2;17090:3;17031:67;:::i;:::-;17024:74;;17107:93;17196:3;17107:93;:::i;:::-;17225:2;17220:3;17216:12;17209:19;;16868:366;;;:::o;17240:419::-;17406:4;17444:2;17433:9;17429:18;17421:26;;17493:9;17487:4;17483:20;17479:1;17468:9;17464:17;17457:47;17521:131;17647:4;17521:131;:::i;:::-;17513:139;;17240:419;;;:::o;17665:308::-;17774:4;17812:2;17801:9;17797:18;17789:26;;17825:65;17887:1;17876:9;17872:17;17863:6;17825:65;:::i;:::-;17900:66;17962:2;17951:9;17947:18;17938:6;17900:66;:::i;:::-;17665:308;;;;;:::o;17979:181::-;18119:33;18115:1;18107:6;18103:14;18096:57;17979:181;:::o;18166:366::-;18308:3;18329:67;18393:2;18388:3;18329:67;:::i;:::-;18322:74;;18405:93;18494:3;18405:93;:::i;:::-;18523:2;18518:3;18514:12;18507:19;;18166:366;;;:::o;18538:419::-;18704:4;18742:2;18731:9;18727:18;18719:26;;18791:9;18785:4;18781:20;18777:1;18766:9;18762:17;18755:47;18819:131;18945:4;18819:131;:::i;:::-;18811:139;;18538:419;;;:::o;18963:182::-;19103:34;19099:1;19091:6;19087:14;19080:58;18963:182;:::o;19151:366::-;19293:3;19314:67;19378:2;19373:3;19314:67;:::i;:::-;19307:74;;19390:93;19479:3;19390:93;:::i;:::-;19508:2;19503:3;19499:12;19492:19;;19151:366;;;:::o;19523:419::-;19689:4;19727:2;19716:9;19712:18;19704:26;;19776:9;19770:4;19766:20;19762:1;19751:9;19747:17;19740:47;19804:131;19930:4;19804:131;:::i;:::-;19796:139;;19523:419;;;:::o;19948:228::-;20088:34;20084:1;20076:6;20072:14;20065:58;20157:11;20152:2;20144:6;20140:15;20133:36;19948:228;:::o;20182:366::-;20324:3;20345:67;20409:2;20404:3;20345:67;:::i;:::-;20338:74;;20421:93;20510:3;20421:93;:::i;:::-;20539:2;20534:3;20530:12;20523:19;;20182:366;;;:::o;20554:419::-;20720:4;20758:2;20747:9;20743:18;20735:26;;20807:9;20801:4;20797:20;20793:1;20782:9;20778:17;20771:47;20835:131;20961:4;20835:131;:::i;:::-;20827:139;;20554:419;;;:::o;20979:170::-;21119:22;21115:1;21107:6;21103:14;21096:46;20979:170;:::o;21155:366::-;21297:3;21318:67;21382:2;21377:3;21318:67;:::i;:::-;21311:74;;21394:93;21483:3;21394:93;:::i;:::-;21512:2;21507:3;21503:12;21496:19;;21155:366;;;:::o;21527:419::-;21693:4;21731:2;21720:9;21716:18;21708:26;;21780:9;21774:4;21770:20;21766:1;21755:9;21751:17;21744:47;21808:131;21934:4;21808:131;:::i;:::-;21800:139;;21527:419;;;:::o;21952:175::-;22092:27;22088:1;22080:6;22076:14;22069:51;21952:175;:::o;22133:366::-;22275:3;22296:67;22360:2;22355:3;22296:67;:::i;:::-;22289:74;;22372:93;22461:3;22372:93;:::i;:::-;22490:2;22485:3;22481:12;22474:19;;22133:366;;;:::o;22505:419::-;22671:4;22709:2;22698:9;22694:18;22686:26;;22758:9;22752:4;22748:20;22744:1;22733:9;22729:17;22722:47;22786:131;22912:4;22786:131;:::i;:::-;22778:139;;22505:419;;;:::o;22930:191::-;22970:3;22989:20;23007:1;22989:20;:::i;:::-;22984:25;;23023:20;23041:1;23023:20;:::i;:::-;23018:25;;23066:1;23063;23059:9;23052:16;;23087:3;23084:1;23081:10;23078:36;;;23094:18;;:::i;:::-;23078:36;22930:191;;;;:::o;23127:176::-;23267:28;23263:1;23255:6;23251:14;23244:52;23127:176;:::o;23309:366::-;23451:3;23472:67;23536:2;23531:3;23472:67;:::i;:::-;23465:74;;23548:93;23637:3;23548:93;:::i;:::-;23666:2;23661:3;23657:12;23650:19;;23309:366;;;:::o;23681:419::-;23847:4;23885:2;23874:9;23870:18;23862:26;;23934:9;23928:4;23924:20;23920:1;23909:9;23905:17;23898:47;23962:131;24088:4;23962:131;:::i;:::-;23954:139;;23681:419;;;:::o;24106:233::-;24145:3;24168:24;24186:5;24168:24;:::i;:::-;24159:33;;24214:66;24207:5;24204:77;24201:103;;24284:18;;:::i;:::-;24201:103;24331:1;24324:5;24320:13;24313:20;;24106:233;;;:::o;24345:194::-;24385:4;24405:20;24423:1;24405:20;:::i;:::-;24400:25;;24439:20;24457:1;24439:20;:::i;:::-;24434:25;;24483:1;24480;24476:9;24468:17;;24507:1;24501:4;24498:11;24495:37;;;24512:18;;:::i;:::-;24495:37;24345:194;;;;:::o;24545:180::-;24593:77;24590:1;24583:88;24690:4;24687:1;24680:15;24714:4;24711:1;24704:15;24731:185;24771:1;24788:20;24806:1;24788:20;:::i;:::-;24783:25;;24822:20;24840:1;24822:20;:::i;:::-;24817:25;;24861:1;24851:35;;24866:18;;:::i;:::-;24851:35;24908:1;24905;24901:9;24896:14;;24731:185;;;;:::o;24922:220::-;25062:34;25058:1;25050:6;25046:14;25039:58;25131:3;25126:2;25118:6;25114:15;25107:28;24922:220;:::o;25148:366::-;25290:3;25311:67;25375:2;25370:3;25311:67;:::i;:::-;25304:74;;25387:93;25476:3;25387:93;:::i;:::-;25505:2;25500:3;25496:12;25489:19;;25148:366;;;:::o;25520:419::-;25686:4;25724:2;25713:9;25709:18;25701:26;;25773:9;25767:4;25763:20;25759:1;25748:9;25744:17;25737:47;25801:131;25927:4;25801:131;:::i;:::-;25793:139;;25520:419;;;:::o;25945:180::-;25993:77;25990:1;25983:88;26090:4;26087:1;26080:15;26114:4;26111:1;26104:15;26131:180;26179:77;26176:1;26169:88;26276:4;26273:1;26266:15;26300:4;26297:1;26290:15;26317:114;26384:6;26418:5;26412:12;26402:22;;26317:114;;;:::o;26437:184::-;26536:11;26570:6;26565:3;26558:19;26610:4;26605:3;26601:14;26586:29;;26437:184;;;;:::o;26627:132::-;26694:4;26717:3;26709:11;;26747:4;26742:3;26738:14;26730:22;;26627:132;;;:::o;26765:108::-;26842:24;26860:5;26842:24;:::i;:::-;26837:3;26830:37;26765:108;;:::o;26879:179::-;26948:10;26969:46;27011:3;27003:6;26969:46;:::i;:::-;27047:4;27042:3;27038:14;27024:28;;26879:179;;;;:::o;27064:113::-;27134:4;27166;27161:3;27157:14;27149:22;;27064:113;;;:::o;27213:732::-;27332:3;27361:54;27409:5;27361:54;:::i;:::-;27431:86;27510:6;27505:3;27431:86;:::i;:::-;27424:93;;27541:56;27591:5;27541:56;:::i;:::-;27620:7;27651:1;27636:284;27661:6;27658:1;27655:13;27636:284;;;27737:6;27731:13;27764:63;27823:3;27808:13;27764:63;:::i;:::-;27757:70;;27850:60;27903:6;27850:60;:::i;:::-;27840:70;;27696:224;27683:1;27680;27676:9;27671:14;;27636:284;;;27640:14;27936:3;27929:10;;27337:608;;;27213:732;;;;:::o;27951:831::-;28214:4;28252:3;28241:9;28237:19;28229:27;;28266:71;28334:1;28323:9;28319:17;28310:6;28266:71;:::i;:::-;28347:80;28423:2;28412:9;28408:18;28399:6;28347:80;:::i;:::-;28474:9;28468:4;28464:20;28459:2;28448:9;28444:18;28437:48;28502:108;28605:4;28596:6;28502:108;:::i;:::-;28494:116;;28620:72;28688:2;28677:9;28673:18;28664:6;28620:72;:::i;:::-;28702:73;28770:3;28759:9;28755:19;28746:6;28702:73;:::i;:::-;27951:831;;;;;;;;:::o;28788:177::-;28928:29;28924:1;28916:6;28912:14;28905:53;28788:177;:::o;28971:366::-;29113:3;29134:67;29198:2;29193:3;29134:67;:::i;:::-;29127:74;;29210:93;29299:3;29210:93;:::i;:::-;29328:2;29323:3;29319:12;29312:19;;28971:366;;;:::o;29343:419::-;29509:4;29547:2;29536:9;29532:18;29524:26;;29596:9;29590:4;29586:20;29582:1;29571:9;29567:17;29560:47;29624:131;29750:4;29624:131;:::i;:::-;29616:139;;29343:419;;;:::o

Swarm Source

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