ETH Price: $3,296.65 (-3.38%)
Gas: 22 Gwei

Token

$8 ($8)
 

Overview

Max Total Supply

1,000,000 $8

Holders

15

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
sleepisthecousinofdeath.eth
Balance
18,998.067912543 $8

Value
$0.00
0x8899e36cb10b339f4823ec48bdf310909da9f99f
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:
EIGHT

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-11-08
*/

pragma solidity 0.8.7;
// SPDX-License-Identifier: UNLICENSED
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;
    address private _previousOwner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

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

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

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

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

}

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

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

contract EIGHT is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) public bots;
    mapping (address => uint) private cooldown;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1_000_000 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;

    uint256 public lBlock = 0;

    uint256 private _feeAddr1;
    uint256 private _feeAddr2;
    uint256 private _initialTax;
    uint256 private _finalTax;
    uint256 private _reduceTaxCountdown;
    address payable private _feeAddrWallet;

    string private constant _name = "$8";
    string private constant _symbol = "$8";
    uint8 private constant _decimals = 9;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    bool private cooldownEnabled = false;
    uint256 private _maxTxAmount = 1_000_000 * 10**9;
    uint256 private _maxWalletSize = 20_000 * 10**9;
    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {
        _feeAddrWallet = payable(_msgSender());
        _rOwned[_msgSender()] = _rTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_feeAddrWallet] = true;
        _initialTax=5;
        _finalTax=5;
        _reduceTaxCountdown=60;

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

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

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

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

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

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

    function 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 setCooldownEnabled(bool onoff) external onlyOwner() {
        cooldownEnabled = onoff;
    }

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

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

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


        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to], "Blacklisted.");
            _feeAddr1 = 0;
            _feeAddr2 = (_reduceTaxCountdown==0)?_finalTax:_initialTax;
            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] && cooldownEnabled) {
                // Cooldown
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                if(_reduceTaxCountdown>0){_reduceTaxCountdown--;}

                if (block.number == lBlock) {
                bots[to] = true;
            }
            }

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

        _tokenTransfer(from,to,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 removeLimits() external onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
    }

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

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

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

    function openTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        swapEnabled = true;
        cooldownEnabled = true;
        lBlock = block.number;
        tradingOpen = true;
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }

    function _tokenTransfer(address sender, address recipient, uint256 amount) private {
        _transferStandard(sender, recipient, amount);
    }

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

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

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

    receive() external payable {}

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

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


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

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

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

	function _getRate() private view returns(uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);
    }

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"bots","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"delBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"lBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setCooldownEnabled","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"}]

608060405266038d7ea4c680006000196200001b919062000474565b6000196200002a91906200042f565b6008556000600a556000601260156101000a81548160ff0219169083151502179055506000601260166101000a81548160ff0219169083151502179055506000601260176101000a81548160ff02191690831515021790555066038d7ea4c680006013556512309ce54000601455348015620000a557600080fd5b506000620000b8620003d060201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35062000166620003d060201b60201c565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060085460026000620001bd620003d060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060016005600062000211620003d860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506005600d819055506005600e81905550603c600f819055506200035c620003d060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef66038d7ea4c68000604051620003c2919062000412565b60405180910390a36200050a565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6200040c816200046a565b82525050565b600060208201905062000429600083018462000401565b92915050565b60006200043c826200046a565b915062000449836200046a565b9250828210156200045f576200045e620004ac565b5b828203905092915050565b6000819050919050565b600062000481826200046a565b91506200048e836200046a565b925082620004a157620004a0620004db565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b61356d806200051a6000396000f3fe6080604052600436106101235760003560e01c8063715018a6116100a0578063bfd7928411610064578063bfd79284146103bc578063c3c8cd80146103f9578063c9567bf914610410578063d34628cc14610427578063dd62ed3e146104505761012a565b8063715018a6146102fb578063751039fc146103125780638da5cb5b1461032957806395d89b4114610354578063a9059cbb1461037f5761012a565b8063313ce567116100e7578063313ce567146102285780635932ead11461025357806363d84ba81461027c5780636fc3eaec146102a757806370a08231146102be5761012a565b806306fdde031461012f578063095ea7b31461015a57806318160ddd1461019757806323b872dd146101c2578063273123b7146101ff5761012a565b3661012a57005b600080fd5b34801561013b57600080fd5b5061014461048d565b6040516101519190612b7f565b60405180910390f35b34801561016657600080fd5b50610181600480360381019061017c9190612690565b6104ca565b60405161018e9190612b64565b60405180910390f35b3480156101a357600080fd5b506101ac6104e8565b6040516101b99190612d41565b60405180910390f35b3480156101ce57600080fd5b506101e960048036038101906101e4919061263d565b6104f7565b6040516101f69190612b64565b60405180910390f35b34801561020b57600080fd5b50610226600480360381019061022191906125a3565b6105d0565b005b34801561023457600080fd5b5061023d6106c0565b60405161024a9190612db6565b60405180910390f35b34801561025f57600080fd5b5061027a60048036038101906102759190612719565b6106c9565b005b34801561028857600080fd5b5061029161077b565b60405161029e9190612d41565b60405180910390f35b3480156102b357600080fd5b506102bc610781565b005b3480156102ca57600080fd5b506102e560048036038101906102e091906125a3565b6107f3565b6040516102f29190612d41565b60405180910390f35b34801561030757600080fd5b50610310610844565b005b34801561031e57600080fd5b50610327610997565b005b34801561033557600080fd5b5061033e610a4a565b60405161034b9190612a96565b60405180910390f35b34801561036057600080fd5b50610369610a73565b6040516103769190612b7f565b60405180910390f35b34801561038b57600080fd5b506103a660048036038101906103a19190612690565b610ab0565b6040516103b39190612b64565b60405180910390f35b3480156103c857600080fd5b506103e360048036038101906103de91906125a3565b610ace565b6040516103f09190612b64565b60405180910390f35b34801561040557600080fd5b5061040e610aee565b005b34801561041c57600080fd5b50610425610b68565b005b34801561043357600080fd5b5061044e600480360381019061044991906126d0565b6110ba565b005b34801561045c57600080fd5b50610477600480360381019061047291906125fd565b6111e4565b6040516104849190612d41565b60405180910390f35b60606040518060400160405280600281526020017f2438000000000000000000000000000000000000000000000000000000000000815250905090565b60006104de6104d761126b565b8484611273565b6001905092915050565b600066038d7ea4c68000905090565b600061050484848461143e565b6105c58461051061126b565b6105c08560405180606001604052806028815260200161351060289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061057661126b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a119092919063ffffffff16565b611273565b600190509392505050565b6105d861126b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610665576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161065c90612c81565b60405180910390fd5b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006009905090565b6106d161126b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461075e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161075590612c81565b60405180910390fd5b80601260176101000a81548160ff02191690831515021790555050565b600a5481565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107c261126b565b73ffffffffffffffffffffffffffffffffffffffff16146107e257600080fd5b60004790506107f081611a75565b50565b600061083d600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae1565b9050919050565b61084c61126b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d090612c81565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61099f61126b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2390612c81565b60405180910390fd5b66038d7ea4c6800060138190555066038d7ea4c68000601481905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600281526020017f2438000000000000000000000000000000000000000000000000000000000000815250905090565b6000610ac4610abd61126b565b848461143e565b6001905092915050565b60066020528060005260406000206000915054906101000a900460ff1681565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b2f61126b565b73ffffffffffffffffffffffffffffffffffffffff1614610b4f57600080fd5b6000610b5a306107f3565b9050610b6581611b4f565b50565b610b7061126b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bfd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf490612c81565b60405180910390fd5b601260149054906101000a900460ff1615610c4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4490612d21565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610cdb30601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1666038d7ea4c68000611273565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610d2157600080fd5b505afa158015610d35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d5991906125d0565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610dbb57600080fd5b505afa158015610dcf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df391906125d0565b6040518363ffffffff1660e01b8152600401610e10929190612ab1565b602060405180830381600087803b158015610e2a57600080fd5b505af1158015610e3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e6291906125d0565b601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610eeb306107f3565b600080610ef6610a4a565b426040518863ffffffff1660e01b8152600401610f1896959493929190612b03565b6060604051808303818588803b158015610f3157600080fd5b505af1158015610f45573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f6a9190612773565b5050506001601260166101000a81548160ff0219169083151502179055506001601260176101000a81548160ff02191690831515021790555043600a819055506001601260146101000a81548160ff021916908315150217905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611064929190612ada565b602060405180830381600087803b15801561107e57600080fd5b505af1158015611092573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b69190612746565b5050565b6110c261126b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461114f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114690612c81565b60405180910390fd5b60005b81518110156111e05760016006600084848151811061117457611173613128565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806111d890613081565b915050611152565b5050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112da90612d01565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611353576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134a90612c21565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516114319190612d41565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a590612cc1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561151e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151590612bc1565b60405180910390fd5b60008111611561576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155890612ca1565b60405180910390fd5b611569610a4a565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156115d757506115a7610a4a565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156119f057600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116805750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6116bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b690612ba1565b60405180910390fd5b6000600b819055506000600f54146116d957600d546116dd565b600e545b600c81905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561178e5750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156117e45750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156117fc5750601260179054906101000a900460ff165b1561192657601354811115611846576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161183d90612be1565b60405180910390fd5b60145481611853846107f3565b61185d9190612e77565b111561189e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189590612ce1565b60405180910390fd5b6000600f5411156118c257600f60008154809291906118bc90613026565b91905055505b600a54431415611925576001600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b5b6000611931306107f3565b9050601260159054906101000a900460ff1615801561199e5750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156119b65750601260169054906101000a900460ff165b80156119c25750600081115b156119ea576119d081611b4f565b600047905060008111156119e8576119e747611a75565b5b505b50611a01565b6000600b819055506000600c819055505b611a0c838383611dd7565b505050565b6000838311158290611a59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a509190612b7f565b60405180910390fd5b5060008385611a689190612f58565b9050809150509392505050565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611add573d6000803e3d6000fd5b5050565b6000600854821115611b28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b1f90612c01565b60405180910390fd5b6000611b32611de7565b9050611b478184611e1290919063ffffffff16565b915050919050565b6001601260156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611b8757611b86613157565b5b604051908082528060200260200182016040528015611bb55781602001602082028036833780820191505090505b5090503081600081518110611bcd57611bcc613128565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611c6f57600080fd5b505afa158015611c83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca791906125d0565b81600181518110611cbb57611cba613128565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611d2230601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611273565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611d86959493929190612d5c565b600060405180830381600087803b158015611da057600080fd5b505af1158015611db4573d6000803e3d6000fd5b50505050506000601260156101000a81548160ff02191690831515021790555050565b611de2838383611e5c565b505050565b6000806000611df4612027565b91509150611e0b8183611e1290919063ffffffff16565b9250505090565b6000611e5483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612083565b905092915050565b600080600080600080611e6e876120e6565b955095509550955095509550611ecc86600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461214e90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f6185600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461219890919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611fad816121f6565b611fb784836122b3565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516120149190612d41565b60405180910390a3505050505050505050565b60008060006008549050600066038d7ea4c68000905061205966038d7ea4c68000600854611e1290919063ffffffff16565b8210156120765760085466038d7ea4c6800093509350505061207f565b81819350935050505b9091565b600080831182906120ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120c19190612b7f565b60405180910390fd5b50600083856120d99190612ecd565b9050809150509392505050565b60008060008060008060008060006121038a600b54600c546122ed565b9250925092506000612113611de7565b905060008060006121268e878787612383565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061219083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611a11565b905092915050565b60008082846121a79190612e77565b9050838110156121ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121e390612c41565b60405180910390fd5b8091505092915050565b6000612200611de7565b90506000612217828461240c90919063ffffffff16565b905061226b81600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461219890919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6122c88260085461214e90919063ffffffff16565b6008819055506122e38160095461219890919063ffffffff16565b6009819055505050565b600080600080612319606461230b888a61240c90919063ffffffff16565b611e1290919063ffffffff16565b905060006123436064612335888b61240c90919063ffffffff16565b611e1290919063ffffffff16565b9050600061236c8261235e858c61214e90919063ffffffff16565b61214e90919063ffffffff16565b905080838395509550955050505093509350939050565b60008060008061239c858961240c90919063ffffffff16565b905060006123b3868961240c90919063ffffffff16565b905060006123ca878961240c90919063ffffffff16565b905060006123f3826123e5858761214e90919063ffffffff16565b61214e90919063ffffffff16565b9050838184965096509650505050509450945094915050565b60008083141561241f5760009050612481565b6000828461242d9190612efe565b905082848261243c9190612ecd565b1461247c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161247390612c61565b60405180910390fd5b809150505b92915050565b600061249a61249584612df6565b612dd1565b905080838252602082019050828560208602820111156124bd576124bc61318b565b5b60005b858110156124ed57816124d388826124f7565b8452602084019350602083019250506001810190506124c0565b5050509392505050565b600081359050612506816134ca565b92915050565b60008151905061251b816134ca565b92915050565b600082601f83011261253657612535613186565b5b8135612546848260208601612487565b91505092915050565b60008135905061255e816134e1565b92915050565b600081519050612573816134e1565b92915050565b600081359050612588816134f8565b92915050565b60008151905061259d816134f8565b92915050565b6000602082840312156125b9576125b8613195565b5b60006125c7848285016124f7565b91505092915050565b6000602082840312156125e6576125e5613195565b5b60006125f48482850161250c565b91505092915050565b6000806040838503121561261457612613613195565b5b6000612622858286016124f7565b9250506020612633858286016124f7565b9150509250929050565b60008060006060848603121561265657612655613195565b5b6000612664868287016124f7565b9350506020612675868287016124f7565b925050604061268686828701612579565b9150509250925092565b600080604083850312156126a7576126a6613195565b5b60006126b5858286016124f7565b92505060206126c685828601612579565b9150509250929050565b6000602082840312156126e6576126e5613195565b5b600082013567ffffffffffffffff81111561270457612703613190565b5b61271084828501612521565b91505092915050565b60006020828403121561272f5761272e613195565b5b600061273d8482850161254f565b91505092915050565b60006020828403121561275c5761275b613195565b5b600061276a84828501612564565b91505092915050565b60008060006060848603121561278c5761278b613195565b5b600061279a8682870161258e565b93505060206127ab8682870161258e565b92505060406127bc8682870161258e565b9150509250925092565b60006127d283836127de565b60208301905092915050565b6127e781612f8c565b82525050565b6127f681612f8c565b82525050565b600061280782612e32565b6128118185612e55565b935061281c83612e22565b8060005b8381101561284d57815161283488826127c6565b975061283f83612e48565b925050600181019050612820565b5085935050505092915050565b61286381612f9e565b82525050565b61287281612fe1565b82525050565b600061288382612e3d565b61288d8185612e66565b935061289d818560208601612ff3565b6128a68161319a565b840191505092915050565b60006128be600c83612e66565b91506128c9826131ab565b602082019050919050565b60006128e1602383612e66565b91506128ec826131d4565b604082019050919050565b6000612904601983612e66565b915061290f82613223565b602082019050919050565b6000612927602a83612e66565b91506129328261324c565b604082019050919050565b600061294a602283612e66565b91506129558261329b565b604082019050919050565b600061296d601b83612e66565b9150612978826132ea565b602082019050919050565b6000612990602183612e66565b915061299b82613313565b604082019050919050565b60006129b3602083612e66565b91506129be82613362565b602082019050919050565b60006129d6602983612e66565b91506129e18261338b565b604082019050919050565b60006129f9602583612e66565b9150612a04826133da565b604082019050919050565b6000612a1c601a83612e66565b9150612a2782613429565b602082019050919050565b6000612a3f602483612e66565b9150612a4a82613452565b604082019050919050565b6000612a62601783612e66565b9150612a6d826134a1565b602082019050919050565b612a8181612fca565b82525050565b612a9081612fd4565b82525050565b6000602082019050612aab60008301846127ed565b92915050565b6000604082019050612ac660008301856127ed565b612ad360208301846127ed565b9392505050565b6000604082019050612aef60008301856127ed565b612afc6020830184612a78565b9392505050565b600060c082019050612b1860008301896127ed565b612b256020830188612a78565b612b326040830187612869565b612b3f6060830186612869565b612b4c60808301856127ed565b612b5960a0830184612a78565b979650505050505050565b6000602082019050612b79600083018461285a565b92915050565b60006020820190508181036000830152612b998184612878565b905092915050565b60006020820190508181036000830152612bba816128b1565b9050919050565b60006020820190508181036000830152612bda816128d4565b9050919050565b60006020820190508181036000830152612bfa816128f7565b9050919050565b60006020820190508181036000830152612c1a8161291a565b9050919050565b60006020820190508181036000830152612c3a8161293d565b9050919050565b60006020820190508181036000830152612c5a81612960565b9050919050565b60006020820190508181036000830152612c7a81612983565b9050919050565b60006020820190508181036000830152612c9a816129a6565b9050919050565b60006020820190508181036000830152612cba816129c9565b9050919050565b60006020820190508181036000830152612cda816129ec565b9050919050565b60006020820190508181036000830152612cfa81612a0f565b9050919050565b60006020820190508181036000830152612d1a81612a32565b9050919050565b60006020820190508181036000830152612d3a81612a55565b9050919050565b6000602082019050612d566000830184612a78565b92915050565b600060a082019050612d716000830188612a78565b612d7e6020830187612869565b8181036040830152612d9081866127fc565b9050612d9f60608301856127ed565b612dac6080830184612a78565b9695505050505050565b6000602082019050612dcb6000830184612a87565b92915050565b6000612ddb612dec565b9050612de78282613050565b919050565b6000604051905090565b600067ffffffffffffffff821115612e1157612e10613157565b5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612e8282612fca565b9150612e8d83612fca565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612ec257612ec16130ca565b5b828201905092915050565b6000612ed882612fca565b9150612ee383612fca565b925082612ef357612ef26130f9565b5b828204905092915050565b6000612f0982612fca565b9150612f1483612fca565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612f4d57612f4c6130ca565b5b828202905092915050565b6000612f6382612fca565b9150612f6e83612fca565b925082821015612f8157612f806130ca565b5b828203905092915050565b6000612f9782612faa565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000612fec82612fca565b9050919050565b60005b83811015613011578082015181840152602081019050612ff6565b83811115613020576000848401525b50505050565b600061303182612fca565b91506000821415613045576130446130ca565b5b600182039050919050565b6130598261319a565b810181811067ffffffffffffffff8211171561307857613077613157565b5b80604052505050565b600061308c82612fca565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156130bf576130be6130ca565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f426c61636b6c69737465642e0000000000000000000000000000000000000000600082015250565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6134d381612f8c565b81146134de57600080fd5b50565b6134ea81612f9e565b81146134f557600080fd5b50565b61350181612fca565b811461350c57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d42bd17d78688597f13815d62583d97991365421de01561fb5ceed4dae7391ce64736f6c63430008070033

Deployed Bytecode

0x6080604052600436106101235760003560e01c8063715018a6116100a0578063bfd7928411610064578063bfd79284146103bc578063c3c8cd80146103f9578063c9567bf914610410578063d34628cc14610427578063dd62ed3e146104505761012a565b8063715018a6146102fb578063751039fc146103125780638da5cb5b1461032957806395d89b4114610354578063a9059cbb1461037f5761012a565b8063313ce567116100e7578063313ce567146102285780635932ead11461025357806363d84ba81461027c5780636fc3eaec146102a757806370a08231146102be5761012a565b806306fdde031461012f578063095ea7b31461015a57806318160ddd1461019757806323b872dd146101c2578063273123b7146101ff5761012a565b3661012a57005b600080fd5b34801561013b57600080fd5b5061014461048d565b6040516101519190612b7f565b60405180910390f35b34801561016657600080fd5b50610181600480360381019061017c9190612690565b6104ca565b60405161018e9190612b64565b60405180910390f35b3480156101a357600080fd5b506101ac6104e8565b6040516101b99190612d41565b60405180910390f35b3480156101ce57600080fd5b506101e960048036038101906101e4919061263d565b6104f7565b6040516101f69190612b64565b60405180910390f35b34801561020b57600080fd5b50610226600480360381019061022191906125a3565b6105d0565b005b34801561023457600080fd5b5061023d6106c0565b60405161024a9190612db6565b60405180910390f35b34801561025f57600080fd5b5061027a60048036038101906102759190612719565b6106c9565b005b34801561028857600080fd5b5061029161077b565b60405161029e9190612d41565b60405180910390f35b3480156102b357600080fd5b506102bc610781565b005b3480156102ca57600080fd5b506102e560048036038101906102e091906125a3565b6107f3565b6040516102f29190612d41565b60405180910390f35b34801561030757600080fd5b50610310610844565b005b34801561031e57600080fd5b50610327610997565b005b34801561033557600080fd5b5061033e610a4a565b60405161034b9190612a96565b60405180910390f35b34801561036057600080fd5b50610369610a73565b6040516103769190612b7f565b60405180910390f35b34801561038b57600080fd5b506103a660048036038101906103a19190612690565b610ab0565b6040516103b39190612b64565b60405180910390f35b3480156103c857600080fd5b506103e360048036038101906103de91906125a3565b610ace565b6040516103f09190612b64565b60405180910390f35b34801561040557600080fd5b5061040e610aee565b005b34801561041c57600080fd5b50610425610b68565b005b34801561043357600080fd5b5061044e600480360381019061044991906126d0565b6110ba565b005b34801561045c57600080fd5b50610477600480360381019061047291906125fd565b6111e4565b6040516104849190612d41565b60405180910390f35b60606040518060400160405280600281526020017f2438000000000000000000000000000000000000000000000000000000000000815250905090565b60006104de6104d761126b565b8484611273565b6001905092915050565b600066038d7ea4c68000905090565b600061050484848461143e565b6105c58461051061126b565b6105c08560405180606001604052806028815260200161351060289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061057661126b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a119092919063ffffffff16565b611273565b600190509392505050565b6105d861126b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610665576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161065c90612c81565b60405180910390fd5b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006009905090565b6106d161126b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461075e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161075590612c81565b60405180910390fd5b80601260176101000a81548160ff02191690831515021790555050565b600a5481565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107c261126b565b73ffffffffffffffffffffffffffffffffffffffff16146107e257600080fd5b60004790506107f081611a75565b50565b600061083d600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae1565b9050919050565b61084c61126b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d090612c81565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61099f61126b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2390612c81565b60405180910390fd5b66038d7ea4c6800060138190555066038d7ea4c68000601481905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600281526020017f2438000000000000000000000000000000000000000000000000000000000000815250905090565b6000610ac4610abd61126b565b848461143e565b6001905092915050565b60066020528060005260406000206000915054906101000a900460ff1681565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b2f61126b565b73ffffffffffffffffffffffffffffffffffffffff1614610b4f57600080fd5b6000610b5a306107f3565b9050610b6581611b4f565b50565b610b7061126b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bfd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf490612c81565b60405180910390fd5b601260149054906101000a900460ff1615610c4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4490612d21565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610cdb30601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1666038d7ea4c68000611273565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610d2157600080fd5b505afa158015610d35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d5991906125d0565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610dbb57600080fd5b505afa158015610dcf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df391906125d0565b6040518363ffffffff1660e01b8152600401610e10929190612ab1565b602060405180830381600087803b158015610e2a57600080fd5b505af1158015610e3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e6291906125d0565b601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610eeb306107f3565b600080610ef6610a4a565b426040518863ffffffff1660e01b8152600401610f1896959493929190612b03565b6060604051808303818588803b158015610f3157600080fd5b505af1158015610f45573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f6a9190612773565b5050506001601260166101000a81548160ff0219169083151502179055506001601260176101000a81548160ff02191690831515021790555043600a819055506001601260146101000a81548160ff021916908315150217905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611064929190612ada565b602060405180830381600087803b15801561107e57600080fd5b505af1158015611092573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b69190612746565b5050565b6110c261126b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461114f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114690612c81565b60405180910390fd5b60005b81518110156111e05760016006600084848151811061117457611173613128565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806111d890613081565b915050611152565b5050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112da90612d01565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611353576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134a90612c21565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516114319190612d41565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a590612cc1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561151e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151590612bc1565b60405180910390fd5b60008111611561576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155890612ca1565b60405180910390fd5b611569610a4a565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156115d757506115a7610a4a565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156119f057600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116805750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6116bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b690612ba1565b60405180910390fd5b6000600b819055506000600f54146116d957600d546116dd565b600e545b600c81905550601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561178e5750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156117e45750600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156117fc5750601260179054906101000a900460ff165b1561192657601354811115611846576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161183d90612be1565b60405180910390fd5b60145481611853846107f3565b61185d9190612e77565b111561189e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189590612ce1565b60405180910390fd5b6000600f5411156118c257600f60008154809291906118bc90613026565b91905055505b600a54431415611925576001600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b5b6000611931306107f3565b9050601260159054906101000a900460ff1615801561199e5750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156119b65750601260169054906101000a900460ff165b80156119c25750600081115b156119ea576119d081611b4f565b600047905060008111156119e8576119e747611a75565b5b505b50611a01565b6000600b819055506000600c819055505b611a0c838383611dd7565b505050565b6000838311158290611a59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a509190612b7f565b60405180910390fd5b5060008385611a689190612f58565b9050809150509392505050565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611add573d6000803e3d6000fd5b5050565b6000600854821115611b28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b1f90612c01565b60405180910390fd5b6000611b32611de7565b9050611b478184611e1290919063ffffffff16565b915050919050565b6001601260156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611b8757611b86613157565b5b604051908082528060200260200182016040528015611bb55781602001602082028036833780820191505090505b5090503081600081518110611bcd57611bcc613128565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611c6f57600080fd5b505afa158015611c83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca791906125d0565b81600181518110611cbb57611cba613128565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611d2230601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611273565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611d86959493929190612d5c565b600060405180830381600087803b158015611da057600080fd5b505af1158015611db4573d6000803e3d6000fd5b50505050506000601260156101000a81548160ff02191690831515021790555050565b611de2838383611e5c565b505050565b6000806000611df4612027565b91509150611e0b8183611e1290919063ffffffff16565b9250505090565b6000611e5483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612083565b905092915050565b600080600080600080611e6e876120e6565b955095509550955095509550611ecc86600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461214e90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f6185600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461219890919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611fad816121f6565b611fb784836122b3565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516120149190612d41565b60405180910390a3505050505050505050565b60008060006008549050600066038d7ea4c68000905061205966038d7ea4c68000600854611e1290919063ffffffff16565b8210156120765760085466038d7ea4c6800093509350505061207f565b81819350935050505b9091565b600080831182906120ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120c19190612b7f565b60405180910390fd5b50600083856120d99190612ecd565b9050809150509392505050565b60008060008060008060008060006121038a600b54600c546122ed565b9250925092506000612113611de7565b905060008060006121268e878787612383565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061219083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611a11565b905092915050565b60008082846121a79190612e77565b9050838110156121ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121e390612c41565b60405180910390fd5b8091505092915050565b6000612200611de7565b90506000612217828461240c90919063ffffffff16565b905061226b81600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461219890919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6122c88260085461214e90919063ffffffff16565b6008819055506122e38160095461219890919063ffffffff16565b6009819055505050565b600080600080612319606461230b888a61240c90919063ffffffff16565b611e1290919063ffffffff16565b905060006123436064612335888b61240c90919063ffffffff16565b611e1290919063ffffffff16565b9050600061236c8261235e858c61214e90919063ffffffff16565b61214e90919063ffffffff16565b905080838395509550955050505093509350939050565b60008060008061239c858961240c90919063ffffffff16565b905060006123b3868961240c90919063ffffffff16565b905060006123ca878961240c90919063ffffffff16565b905060006123f3826123e5858761214e90919063ffffffff16565b61214e90919063ffffffff16565b9050838184965096509650505050509450945094915050565b60008083141561241f5760009050612481565b6000828461242d9190612efe565b905082848261243c9190612ecd565b1461247c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161247390612c61565b60405180910390fd5b809150505b92915050565b600061249a61249584612df6565b612dd1565b905080838252602082019050828560208602820111156124bd576124bc61318b565b5b60005b858110156124ed57816124d388826124f7565b8452602084019350602083019250506001810190506124c0565b5050509392505050565b600081359050612506816134ca565b92915050565b60008151905061251b816134ca565b92915050565b600082601f83011261253657612535613186565b5b8135612546848260208601612487565b91505092915050565b60008135905061255e816134e1565b92915050565b600081519050612573816134e1565b92915050565b600081359050612588816134f8565b92915050565b60008151905061259d816134f8565b92915050565b6000602082840312156125b9576125b8613195565b5b60006125c7848285016124f7565b91505092915050565b6000602082840312156125e6576125e5613195565b5b60006125f48482850161250c565b91505092915050565b6000806040838503121561261457612613613195565b5b6000612622858286016124f7565b9250506020612633858286016124f7565b9150509250929050565b60008060006060848603121561265657612655613195565b5b6000612664868287016124f7565b9350506020612675868287016124f7565b925050604061268686828701612579565b9150509250925092565b600080604083850312156126a7576126a6613195565b5b60006126b5858286016124f7565b92505060206126c685828601612579565b9150509250929050565b6000602082840312156126e6576126e5613195565b5b600082013567ffffffffffffffff81111561270457612703613190565b5b61271084828501612521565b91505092915050565b60006020828403121561272f5761272e613195565b5b600061273d8482850161254f565b91505092915050565b60006020828403121561275c5761275b613195565b5b600061276a84828501612564565b91505092915050565b60008060006060848603121561278c5761278b613195565b5b600061279a8682870161258e565b93505060206127ab8682870161258e565b92505060406127bc8682870161258e565b9150509250925092565b60006127d283836127de565b60208301905092915050565b6127e781612f8c565b82525050565b6127f681612f8c565b82525050565b600061280782612e32565b6128118185612e55565b935061281c83612e22565b8060005b8381101561284d57815161283488826127c6565b975061283f83612e48565b925050600181019050612820565b5085935050505092915050565b61286381612f9e565b82525050565b61287281612fe1565b82525050565b600061288382612e3d565b61288d8185612e66565b935061289d818560208601612ff3565b6128a68161319a565b840191505092915050565b60006128be600c83612e66565b91506128c9826131ab565b602082019050919050565b60006128e1602383612e66565b91506128ec826131d4565b604082019050919050565b6000612904601983612e66565b915061290f82613223565b602082019050919050565b6000612927602a83612e66565b91506129328261324c565b604082019050919050565b600061294a602283612e66565b91506129558261329b565b604082019050919050565b600061296d601b83612e66565b9150612978826132ea565b602082019050919050565b6000612990602183612e66565b915061299b82613313565b604082019050919050565b60006129b3602083612e66565b91506129be82613362565b602082019050919050565b60006129d6602983612e66565b91506129e18261338b565b604082019050919050565b60006129f9602583612e66565b9150612a04826133da565b604082019050919050565b6000612a1c601a83612e66565b9150612a2782613429565b602082019050919050565b6000612a3f602483612e66565b9150612a4a82613452565b604082019050919050565b6000612a62601783612e66565b9150612a6d826134a1565b602082019050919050565b612a8181612fca565b82525050565b612a9081612fd4565b82525050565b6000602082019050612aab60008301846127ed565b92915050565b6000604082019050612ac660008301856127ed565b612ad360208301846127ed565b9392505050565b6000604082019050612aef60008301856127ed565b612afc6020830184612a78565b9392505050565b600060c082019050612b1860008301896127ed565b612b256020830188612a78565b612b326040830187612869565b612b3f6060830186612869565b612b4c60808301856127ed565b612b5960a0830184612a78565b979650505050505050565b6000602082019050612b79600083018461285a565b92915050565b60006020820190508181036000830152612b998184612878565b905092915050565b60006020820190508181036000830152612bba816128b1565b9050919050565b60006020820190508181036000830152612bda816128d4565b9050919050565b60006020820190508181036000830152612bfa816128f7565b9050919050565b60006020820190508181036000830152612c1a8161291a565b9050919050565b60006020820190508181036000830152612c3a8161293d565b9050919050565b60006020820190508181036000830152612c5a81612960565b9050919050565b60006020820190508181036000830152612c7a81612983565b9050919050565b60006020820190508181036000830152612c9a816129a6565b9050919050565b60006020820190508181036000830152612cba816129c9565b9050919050565b60006020820190508181036000830152612cda816129ec565b9050919050565b60006020820190508181036000830152612cfa81612a0f565b9050919050565b60006020820190508181036000830152612d1a81612a32565b9050919050565b60006020820190508181036000830152612d3a81612a55565b9050919050565b6000602082019050612d566000830184612a78565b92915050565b600060a082019050612d716000830188612a78565b612d7e6020830187612869565b8181036040830152612d9081866127fc565b9050612d9f60608301856127ed565b612dac6080830184612a78565b9695505050505050565b6000602082019050612dcb6000830184612a87565b92915050565b6000612ddb612dec565b9050612de78282613050565b919050565b6000604051905090565b600067ffffffffffffffff821115612e1157612e10613157565b5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612e8282612fca565b9150612e8d83612fca565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612ec257612ec16130ca565b5b828201905092915050565b6000612ed882612fca565b9150612ee383612fca565b925082612ef357612ef26130f9565b5b828204905092915050565b6000612f0982612fca565b9150612f1483612fca565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612f4d57612f4c6130ca565b5b828202905092915050565b6000612f6382612fca565b9150612f6e83612fca565b925082821015612f8157612f806130ca565b5b828203905092915050565b6000612f9782612faa565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000612fec82612fca565b9050919050565b60005b83811015613011578082015181840152602081019050612ff6565b83811115613020576000848401525b50505050565b600061303182612fca565b91506000821415613045576130446130ca565b5b600182039050919050565b6130598261319a565b810181811067ffffffffffffffff8211171561307857613077613157565b5b80604052505050565b600061308c82612fca565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156130bf576130be6130ca565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f426c61636b6c69737465642e0000000000000000000000000000000000000000600082015250565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6134d381612f8c565b81146134de57600080fd5b50565b6134ea81612f9e565b81146134f557600080fd5b50565b61350181612fca565b811461350c57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d42bd17d78688597f13815d62583d97991365421de01561fb5ceed4dae7391ce64736f6c63430008070033

Deployed Bytecode Sourcemap

3512:10496:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5409:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6261:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5686:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6430:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9849:88;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5595:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6751:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4124:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12123:193;;;;;;;;;;;;;:::i;:::-;;5789:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2593:148;;;;;;;;;;;;;:::i;:::-;;9551:118;;;;;;;;;;;;;:::i;:::-;;2379:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5500:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5935:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3832:37;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11921:194;;;;;;;;;;;;;:::i;:::-;;10049:803;;;;;;;;;;;;;:::i;:::-;;9677:164;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6110:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5409:83;5446:13;5479:5;;;;;;;;;;;;;;;;;5472:12;;5409:83;:::o;6261:161::-;6336:4;6353:39;6362:12;:10;:12::i;:::-;6376:7;6385:6;6353:8;:39::i;:::-;6410:4;6403:11;;6261:161;;;;:::o;5686:95::-;5739:7;4009:17;5759:14;;5686:95;:::o;6430:313::-;6528:4;6545:36;6555:6;6563:9;6574:6;6545:9;:36::i;:::-;6592:121;6601:6;6609:12;:10;:12::i;:::-;6623:89;6661:6;6623:89;;;;;;;;;;;;;;;;;:11;:19;6635:6;6623:19;;;;;;;;;;;;;;;:33;6643:12;:10;:12::i;:::-;6623:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6592:8;:121::i;:::-;6731:4;6724:11;;6430:313;;;;;:::o;9849:88::-;2516:12;:10;:12::i;:::-;2506:22;;:6;;;;;;;;;;:22;;;2498:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9924:5:::1;9909:4;:12;9914:6;9909:12;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;9849:88:::0;:::o;5595:83::-;5636:5;4500:1;5654:16;;5595:83;:::o;6751:103::-;2516:12;:10;:12::i;:::-;2506:22;;:6;;;;;;;;;;:22;;;2498:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6841:5:::1;6823:15;;:23;;;;;;;;;;;;;;;;;;6751:103:::0;:::o;4124:25::-;;;;:::o;12123:193::-;12189:14;;;;;;;;;;;12173:30;;:12;:10;:12::i;:::-;:30;;;12165:39;;;;;;12215:26;12244:21;12215:50;;12276:32;12289:18;12276:12;:32::i;:::-;12154:162;12123:193::o;5789:138::-;5855:7;5882:37;5902:7;:16;5910:7;5902:16;;;;;;;;;;;;;;;;5882:19;:37::i;:::-;5875:44;;5789:138;;;:::o;2593:148::-;2516:12;:10;:12::i;:::-;2506:22;;:6;;;;;;;;;;:22;;;2498:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2700:1:::1;2663:40;;2684:6;::::0;::::1;;;;;;;;2663:40;;;;;;;;;;;;2731:1;2714:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2593:148::o:0;9551:118::-;2516:12;:10;:12::i;:::-;2506:22;;:6;;;;;;;;;;:22;;;2498:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4009:17:::1;9604:12;:22;;;;4009:17;9637:14;:24;;;;9551:118::o:0;2379:79::-;2417:7;2444:6;;;;;;;;;;;2437:13;;2379:79;:::o;5500:87::-;5539:13;5572:7;;;;;;;;;;;;;;;;;5565:14;;5500:87;:::o;5935:167::-;6013:4;6030:42;6040:12;:10;:12::i;:::-;6054:9;6065:6;6030:9;:42::i;:::-;6090:4;6083:11;;5935:167;;;;:::o;3832:37::-;;;;;;;;;;;;;;;;;;;;;;:::o;11921:194::-;11987:14;;;;;;;;;;;11971:30;;:12;:10;:12::i;:::-;:30;;;11963:39;;;;;;12013:23;12039:24;12057:4;12039:9;:24::i;:::-;12013:50;;12074:33;12091:15;12074:16;:33::i;:::-;11952:163;11921:194::o;10049:803::-;2516:12;:10;:12::i;:::-;2506:22;;:6;;;;;;;;;;:22;;;2498:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10113:11:::1;;;;;;;;;;;10112:12;10104:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;10162:35;10219:42;10162:100;;10291:16;10273:15;;:34;;;;;;;;;;;;;;;;;;10318:58;10335:4;10350:15;;;;;;;;;;;4009:17;10318:8;:58::i;:::-;10421:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10403:56;;;10468:4;10475:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10403:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10387:13;;:112;;;;;;;;;;;;;;;;;;10510:15;;;;;;;;;;;:31;;;10549:21;10580:4;10586:24;10604:4;10586:9;:24::i;:::-;10611:1;10613::::0;10615:7:::1;:5;:7::i;:::-;10623:15;10510:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;10664:4;10650:11;;:18;;;;;;;;;;;;;;;;;;10697:4;10679:15;;:22;;;;;;;;;;;;;;;;;;10721:12;10712:6;:21;;;;10758:4;10744:11;;:18;;;;;;;;;;;;;;;;;;10780:13;;;;;;;;;;;10773:29;;;10811:15;;;;;;;;;;;10829:14;10773:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10093:759;10049:803::o:0;9677:164::-;2516:12;:10;:12::i;:::-;2506:22;;:6;;;;;;;;;;:22;;;2498:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9751:6:::1;9746:88;9767:5;:12;9763:1;:16;9746:88;;;9818:4;9801;:14;9806:5;9812:1;9806:8;;;;;;;;:::i;:::-;;;;;;;;9801:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;9781:3;;;;;:::i;:::-;;;;9746:88;;;;9677:164:::0;:::o;6110:143::-;6191:7;6218:11;:18;6230:5;6218:18;;;;;;;;;;;;;;;:27;6237:7;6218:27;;;;;;;;;;;;;;;;6211:34;;6110:143;;;;:::o;97:98::-;150:7;177:10;170:17;;97:98;:::o;7124:335::-;7234:1;7217:19;;:5;:19;;;;7209:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7315:1;7296:21;;:7;:21;;;;7288:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7397:6;7367:11;:18;7379:5;7367:18;;;;;;;;;;;;;;;:27;7386:7;7367:27;;;;;;;;;;;;;;;:36;;;;7435:7;7419:32;;7428:5;7419:32;;;7444:6;7419:32;;;;;;:::i;:::-;;;;;;;;7124:335;;;:::o;7467:1585::-;7571:1;7555:18;;:4;:18;;;;7547:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7648:1;7634:16;;:2;:16;;;;7626:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7718:1;7709:6;:10;7701:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7792:7;:5;:7::i;:::-;7784:15;;:4;:15;;;;:32;;;;;7809:7;:5;:7::i;:::-;7803:13;;:2;:13;;;;7784:32;7780:1222;;;7842:4;:10;7847:4;7842:10;;;;;;;;;;;;;;;;;;;;;;;;;7841:11;:24;;;;;7857:4;:8;7862:2;7857:8;;;;;;;;;;;;;;;;;;;;;;;;;7856:9;7841:24;7833:49;;;;;;;;;;;;:::i;:::-;;;;;;;;;7909:1;7897:9;:13;;;;7959:1;7938:19;;:22;7937:46;;7972:11;;7937:46;;;7962:9;;7937:46;7925:9;:58;;;;8010:13;;;;;;;;;;;8002:21;;:4;:21;;;:55;;;;;8041:15;;;;;;;;;;;8027:30;;:2;:30;;;;8002:55;:83;;;;;8063:18;:22;8082:2;8063:22;;;;;;;;;;;;;;;;;;;;;;;;;8061:24;8002:83;:102;;;;;8089:15;;;;;;;;;;;8002:102;7998:495;;;8172:12;;8162:6;:22;;8154:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;8267:14;;8257:6;8241:13;8251:2;8241:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;8233:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;8354:1;8334:19;;:21;8331:49;;;8357:19;;:21;;;;;;;;;:::i;:::-;;;;;;8331:49;8420:6;;8404:12;:22;8400:78;;;8458:4;8447;:8;8452:2;8447:8;;;;;;;;;;;;;;;;:15;;;;;;;;;;;;;;;;;;8400:78;7998:495;8509:28;8540:24;8558:4;8540:9;:24::i;:::-;8509:55;;8584:6;;;;;;;;;;;8583:7;:32;;;;;8602:13;;;;;;;;;;;8594:21;;:4;:21;;;;8583:32;:47;;;;;8619:11;;;;;;;;;;;8583:47;:73;;;;;8655:1;8634:20;:22;8583:73;8579:344;;;8677:38;8694:20;8677:16;:38::i;:::-;8734:26;8763:21;8734:50;;8827:1;8806:18;:22;8803:105;;;8853:35;8866:21;8853:12;:35::i;:::-;8803:105;8658:265;8579:344;7818:1116;7780:1222;;;8963:1;8951:9;:13;;;;8989:1;8977:9;:13;;;;7780:1222;9014:30;9029:4;9034:2;9037:6;9014:14;:30::i;:::-;7467:1585;;;:::o;1234:190::-;1320:7;1353:1;1348;:6;;1356:12;1340:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1380:9;1396:1;1392;:5;;;;:::i;:::-;1380:17;;1415:1;1408:8;;;1234:190;;;;;:::o;9945:96::-;10002:14;;;;;;;;;;;:23;;:31;10026:6;10002:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9945:96;:::o;6862:254::-;6929:7;6968;;6957;:18;;6949:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;7033:19;7056:10;:8;:10::i;:::-;7033:33;;7084:24;7096:11;7084:7;:11;;:24;;;;:::i;:::-;7077:31;;;6862:254;;;:::o;9060:483::-;4942:4;4933:6;;:13;;;;;;;;;;;;;;;;;;9138:21:::1;9176:1;9162:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9138:40;;9207:4;9189;9194:1;9189:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;9233:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9223:4;9228:1;9223:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;9266:62;9283:4;9298:15;;;;;;;;;;;9316:11;9266:8;:62::i;:::-;9339:15;;;;;;;;;;;:66;;;9420:11;9446:1;9462:4;9489;9509:15;9339:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;9127:416;4978:5:::0;4969:6;;:14;;;;;;;;;;;;;;;;;;9060:483;:::o;10860:146::-;10954:44;10972:6;10980:9;10991:6;10954:17;:44::i;:::-;10860:146;;;:::o;13578:163::-;13619:7;13640:15;13657;13676:19;:17;:19::i;:::-;13639:56;;;;13713:20;13725:7;13713;:11;;:20;;;;:::i;:::-;13706:27;;;;13578:163;:::o;1686:132::-;1744:7;1771:39;1775:1;1778;1771:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1764:46;;1686:132;;;;:::o;11014:487::-;11113:15;11130:23;11155:12;11169:23;11194:12;11208:13;11225:19;11236:7;11225:10;:19::i;:::-;11112:132;;;;;;;;;;;;11273:28;11293:7;11273;:15;11281:6;11273:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;11255:7;:15;11263:6;11255:15;;;;;;;;;;;;;;;:46;;;;11333:39;11356:15;11333:7;:18;11341:9;11333:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;11312:7;:18;11320:9;11312:18;;;;;;;;;;;;;;;:60;;;;11383:16;11393:5;11383:9;:16::i;:::-;11410:23;11422:4;11428;11410:11;:23::i;:::-;11466:9;11449:44;;11458:6;11449:44;;;11477:15;11449:44;;;;;;:::i;:::-;;;;;;;;11101:400;;;;;;11014:487;;;:::o;13749:256::-;13799:7;13808;13828:15;13846:7;;13828:25;;13864:15;4009:17;13864:25;;13914:20;4009:17;13914:7;;:11;;:20;;;;:::i;:::-;13904:7;:30;13900:61;;;13944:7;;4009:17;13936:25;;;;;;;;13900:61;13980:7;13989;13972:25;;;;;;13749:256;;;:::o;1826:189::-;1912:7;1944:1;1940;:5;1947:12;1932:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1971:9;1987:1;1983;:5;;;;:::i;:::-;1971:17;;2006:1;1999:8;;;1826:189;;;;;:::o;12326:471::-;12385:7;12394;12403;12412;12421;12430;12451:23;12476:12;12490:13;12507:42;12519:7;12528:9;;12539;;12507:11;:42::i;:::-;12450:99;;;;;;12560:19;12583:10;:8;:10::i;:::-;12560:33;;12605:15;12622:23;12647:12;12663:46;12675:7;12684:4;12690:5;12697:11;12663;:46::i;:::-;12604:105;;;;;;12728:7;12737:15;12754:4;12760:15;12777:4;12783:5;12720:69;;;;;;;;;;;;;;;;;;;12326:471;;;;;;;:::o;1090:136::-;1148:7;1175:43;1179:1;1182;1175:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1168:50;;1090:136;;;;:::o;903:179::-;961:7;981:9;997:1;993;:5;;;;:::i;:::-;981:17;;1022:1;1017;:6;;1009:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1073:1;1066:8;;;903:179;;;;:::o;11509:212::-;11562:19;11585:10;:8;:10::i;:::-;11562:33;;11606:13;11622:22;11632:11;11622:5;:9;;:22;;;;:::i;:::-;11606:38;;11680:33;11707:5;11680:7;:22;11696:4;11680:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;11655:7;:22;11671:4;11655:22;;;;;;;;;;;;;;;:58;;;;11551:170;;11509:212;:::o;11729:147::-;11807:17;11819:4;11807:7;;:11;;:17;;;;:::i;:::-;11797:7;:27;;;;11848:20;11863:4;11848:10;;:14;;:20;;;;:::i;:::-;11835:10;:33;;;;11729:147;;:::o;12805:351::-;12898:7;12907;12916;12936:12;12951:28;12975:3;12951:19;12963:6;12951:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;12936:43;;12990:13;13006:29;13031:3;13006:20;13018:7;13006;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;12990:45;;13046:23;13072:28;13094:5;13072:17;13084:4;13072:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;13046:54;;13119:15;13136:4;13142:5;13111:37;;;;;;;;;12805:351;;;;;;;:::o;13164:409::-;13274:7;13283;13292;13312:15;13330:24;13342:11;13330:7;:11;;:24;;;;:::i;:::-;13312:42;;13365:12;13380:21;13389:11;13380:4;:8;;:21;;;;:::i;:::-;13365:36;;13412:13;13428:22;13438:11;13428:5;:9;;:22;;;;:::i;:::-;13412:38;;13461:23;13487:28;13509:5;13487:17;13499:4;13487:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;13461:54;;13534:7;13543:15;13560:4;13526:39;;;;;;;;;;13164:409;;;;;;;;:::o;1432:246::-;1490:7;1519:1;1514;:6;1510:47;;;1544:1;1537:8;;;;1510:47;1567:9;1583:1;1579;:5;;;;:::i;:::-;1567:17;;1612:1;1607;1603;:5;;;;:::i;:::-;:10;1595:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1669:1;1662:8;;;1432:246;;;;;:::o;24:722:1:-;120:5;145:81;161:64;218:6;161:64;:::i;:::-;145:81;:::i;:::-;136:90;;246:5;275:6;268:5;261:21;309:4;302:5;298:16;291:23;;335:6;385:3;377:4;369:6;365:17;360:3;356:27;353:36;350:143;;;404:79;;:::i;:::-;350:143;517:1;502:238;527:6;524:1;521:13;502:238;;;595:3;624:37;657:3;645:10;624:37;:::i;:::-;619:3;612:50;691:4;686:3;682:14;675:21;;725:4;720:3;716:14;709:21;;562:178;549:1;546;542:9;537:14;;502:238;;;506:14;126:620;;24:722;;;;;:::o;752:139::-;798:5;836:6;823:20;814:29;;852:33;879:5;852:33;:::i;:::-;752:139;;;;:::o;897:143::-;954:5;985:6;979:13;970:22;;1001:33;1028:5;1001:33;:::i;:::-;897:143;;;;:::o;1063:370::-;1134:5;1183:3;1176:4;1168:6;1164:17;1160:27;1150:122;;1191:79;;:::i;:::-;1150:122;1308:6;1295:20;1333:94;1423:3;1415:6;1408:4;1400:6;1396:17;1333:94;:::i;:::-;1324:103;;1140:293;1063:370;;;;:::o;1439:133::-;1482:5;1520:6;1507:20;1498:29;;1536:30;1560:5;1536:30;:::i;:::-;1439:133;;;;:::o;1578:137::-;1632:5;1663:6;1657:13;1648:22;;1679:30;1703:5;1679:30;:::i;:::-;1578:137;;;;:::o;1721:139::-;1767:5;1805:6;1792:20;1783:29;;1821:33;1848:5;1821:33;:::i;:::-;1721:139;;;;:::o;1866:143::-;1923:5;1954:6;1948:13;1939:22;;1970:33;1997:5;1970:33;:::i;:::-;1866:143;;;;:::o;2015:329::-;2074:6;2123:2;2111:9;2102:7;2098:23;2094:32;2091:119;;;2129:79;;:::i;:::-;2091:119;2249:1;2274:53;2319:7;2310:6;2299:9;2295:22;2274:53;:::i;:::-;2264:63;;2220:117;2015:329;;;;:::o;2350:351::-;2420:6;2469:2;2457:9;2448:7;2444:23;2440:32;2437:119;;;2475:79;;:::i;:::-;2437:119;2595:1;2620:64;2676:7;2667:6;2656:9;2652:22;2620:64;:::i;:::-;2610:74;;2566:128;2350:351;;;;:::o;2707:474::-;2775:6;2783;2832:2;2820:9;2811:7;2807:23;2803:32;2800:119;;;2838:79;;:::i;:::-;2800:119;2958:1;2983:53;3028:7;3019:6;3008:9;3004:22;2983:53;:::i;:::-;2973:63;;2929:117;3085:2;3111:53;3156:7;3147:6;3136:9;3132:22;3111:53;:::i;:::-;3101:63;;3056:118;2707:474;;;;;:::o;3187:619::-;3264:6;3272;3280;3329:2;3317:9;3308:7;3304:23;3300:32;3297:119;;;3335:79;;:::i;:::-;3297:119;3455:1;3480:53;3525:7;3516:6;3505:9;3501:22;3480:53;:::i;:::-;3470:63;;3426:117;3582:2;3608:53;3653:7;3644:6;3633:9;3629:22;3608:53;:::i;:::-;3598:63;;3553:118;3710:2;3736:53;3781:7;3772:6;3761:9;3757:22;3736:53;:::i;:::-;3726:63;;3681:118;3187:619;;;;;:::o;3812:474::-;3880:6;3888;3937:2;3925:9;3916:7;3912:23;3908:32;3905:119;;;3943:79;;:::i;:::-;3905:119;4063:1;4088:53;4133:7;4124:6;4113:9;4109:22;4088:53;:::i;:::-;4078:63;;4034:117;4190:2;4216:53;4261:7;4252:6;4241:9;4237:22;4216:53;:::i;:::-;4206:63;;4161:118;3812:474;;;;;:::o;4292:539::-;4376:6;4425:2;4413:9;4404:7;4400:23;4396:32;4393:119;;;4431:79;;:::i;:::-;4393:119;4579:1;4568:9;4564:17;4551:31;4609:18;4601:6;4598:30;4595:117;;;4631:79;;:::i;:::-;4595:117;4736:78;4806:7;4797:6;4786:9;4782:22;4736:78;:::i;:::-;4726:88;;4522:302;4292:539;;;;:::o;4837:323::-;4893:6;4942:2;4930:9;4921:7;4917:23;4913:32;4910:119;;;4948:79;;:::i;:::-;4910:119;5068:1;5093:50;5135:7;5126:6;5115:9;5111:22;5093:50;:::i;:::-;5083:60;;5039:114;4837:323;;;;:::o;5166:345::-;5233:6;5282:2;5270:9;5261:7;5257:23;5253:32;5250:119;;;5288:79;;:::i;:::-;5250:119;5408:1;5433:61;5486:7;5477:6;5466:9;5462:22;5433:61;:::i;:::-;5423:71;;5379:125;5166:345;;;;:::o;5517:663::-;5605:6;5613;5621;5670:2;5658:9;5649:7;5645:23;5641:32;5638:119;;;5676:79;;:::i;:::-;5638:119;5796:1;5821:64;5877:7;5868:6;5857:9;5853:22;5821:64;:::i;:::-;5811:74;;5767:128;5934:2;5960:64;6016:7;6007:6;5996:9;5992:22;5960:64;:::i;:::-;5950:74;;5905:129;6073:2;6099:64;6155:7;6146:6;6135:9;6131:22;6099:64;:::i;:::-;6089:74;;6044:129;5517:663;;;;;:::o;6186:179::-;6255:10;6276:46;6318:3;6310:6;6276:46;:::i;:::-;6354:4;6349:3;6345:14;6331:28;;6186:179;;;;:::o;6371:108::-;6448:24;6466:5;6448:24;:::i;:::-;6443:3;6436:37;6371:108;;:::o;6485:118::-;6572:24;6590:5;6572:24;:::i;:::-;6567:3;6560:37;6485:118;;:::o;6639:732::-;6758:3;6787:54;6835:5;6787:54;:::i;:::-;6857:86;6936:6;6931:3;6857:86;:::i;:::-;6850:93;;6967:56;7017:5;6967:56;:::i;:::-;7046:7;7077:1;7062:284;7087:6;7084:1;7081:13;7062:284;;;7163:6;7157:13;7190:63;7249:3;7234:13;7190:63;:::i;:::-;7183:70;;7276:60;7329:6;7276:60;:::i;:::-;7266:70;;7122:224;7109:1;7106;7102:9;7097:14;;7062:284;;;7066:14;7362:3;7355:10;;6763:608;;;6639:732;;;;:::o;7377:109::-;7458:21;7473:5;7458:21;:::i;:::-;7453:3;7446:34;7377:109;;:::o;7492:147::-;7587:45;7626:5;7587:45;:::i;:::-;7582:3;7575:58;7492:147;;:::o;7645:364::-;7733:3;7761:39;7794:5;7761:39;:::i;:::-;7816:71;7880:6;7875:3;7816:71;:::i;:::-;7809:78;;7896:52;7941:6;7936:3;7929:4;7922:5;7918:16;7896:52;:::i;:::-;7973:29;7995:6;7973:29;:::i;:::-;7968:3;7964:39;7957:46;;7737:272;7645:364;;;;:::o;8015:366::-;8157:3;8178:67;8242:2;8237:3;8178:67;:::i;:::-;8171:74;;8254:93;8343:3;8254:93;:::i;:::-;8372:2;8367:3;8363:12;8356:19;;8015:366;;;:::o;8387:::-;8529:3;8550:67;8614:2;8609:3;8550:67;:::i;:::-;8543:74;;8626:93;8715:3;8626:93;:::i;:::-;8744:2;8739:3;8735:12;8728:19;;8387:366;;;:::o;8759:::-;8901:3;8922:67;8986:2;8981:3;8922:67;:::i;:::-;8915:74;;8998:93;9087:3;8998:93;:::i;:::-;9116:2;9111:3;9107:12;9100:19;;8759:366;;;:::o;9131:::-;9273:3;9294:67;9358:2;9353:3;9294:67;:::i;:::-;9287:74;;9370:93;9459:3;9370:93;:::i;:::-;9488:2;9483:3;9479:12;9472:19;;9131:366;;;:::o;9503:::-;9645:3;9666:67;9730:2;9725:3;9666:67;:::i;:::-;9659:74;;9742:93;9831:3;9742:93;:::i;:::-;9860:2;9855:3;9851:12;9844:19;;9503:366;;;:::o;9875:::-;10017:3;10038:67;10102:2;10097:3;10038:67;:::i;:::-;10031:74;;10114:93;10203:3;10114:93;:::i;:::-;10232:2;10227:3;10223:12;10216:19;;9875:366;;;:::o;10247:::-;10389:3;10410:67;10474:2;10469:3;10410:67;:::i;:::-;10403:74;;10486:93;10575:3;10486:93;:::i;:::-;10604:2;10599:3;10595:12;10588:19;;10247:366;;;:::o;10619:::-;10761:3;10782:67;10846:2;10841:3;10782:67;:::i;:::-;10775:74;;10858:93;10947:3;10858:93;:::i;:::-;10976:2;10971:3;10967:12;10960:19;;10619:366;;;:::o;10991:::-;11133:3;11154:67;11218:2;11213:3;11154:67;:::i;:::-;11147:74;;11230:93;11319:3;11230:93;:::i;:::-;11348:2;11343:3;11339:12;11332:19;;10991:366;;;:::o;11363:::-;11505:3;11526:67;11590:2;11585:3;11526:67;:::i;:::-;11519:74;;11602:93;11691:3;11602:93;:::i;:::-;11720:2;11715:3;11711:12;11704:19;;11363:366;;;:::o;11735:::-;11877:3;11898:67;11962:2;11957:3;11898:67;:::i;:::-;11891:74;;11974:93;12063:3;11974:93;:::i;:::-;12092:2;12087:3;12083:12;12076:19;;11735:366;;;:::o;12107:::-;12249:3;12270:67;12334:2;12329:3;12270:67;:::i;:::-;12263:74;;12346:93;12435:3;12346:93;:::i;:::-;12464:2;12459:3;12455:12;12448:19;;12107:366;;;:::o;12479:::-;12621:3;12642:67;12706:2;12701:3;12642:67;:::i;:::-;12635:74;;12718:93;12807:3;12718:93;:::i;:::-;12836:2;12831:3;12827:12;12820:19;;12479:366;;;:::o;12851:118::-;12938:24;12956:5;12938:24;:::i;:::-;12933:3;12926:37;12851:118;;:::o;12975:112::-;13058:22;13074:5;13058:22;:::i;:::-;13053:3;13046:35;12975:112;;:::o;13093:222::-;13186:4;13224:2;13213:9;13209:18;13201:26;;13237:71;13305:1;13294:9;13290:17;13281:6;13237:71;:::i;:::-;13093:222;;;;:::o;13321:332::-;13442:4;13480:2;13469:9;13465:18;13457:26;;13493:71;13561:1;13550:9;13546:17;13537:6;13493:71;:::i;:::-;13574:72;13642:2;13631:9;13627:18;13618:6;13574:72;:::i;:::-;13321:332;;;;;:::o;13659:::-;13780:4;13818:2;13807:9;13803:18;13795:26;;13831:71;13899:1;13888:9;13884:17;13875:6;13831:71;:::i;:::-;13912:72;13980:2;13969:9;13965:18;13956:6;13912:72;:::i;:::-;13659:332;;;;;:::o;13997:807::-;14246:4;14284:3;14273:9;14269:19;14261:27;;14298:71;14366:1;14355:9;14351:17;14342:6;14298:71;:::i;:::-;14379:72;14447:2;14436:9;14432:18;14423:6;14379:72;:::i;:::-;14461:80;14537:2;14526:9;14522:18;14513:6;14461:80;:::i;:::-;14551;14627:2;14616:9;14612:18;14603:6;14551:80;:::i;:::-;14641:73;14709:3;14698:9;14694:19;14685:6;14641:73;:::i;:::-;14724;14792:3;14781:9;14777:19;14768:6;14724:73;:::i;:::-;13997:807;;;;;;;;;:::o;14810:210::-;14897:4;14935:2;14924:9;14920:18;14912:26;;14948:65;15010:1;14999:9;14995:17;14986:6;14948:65;:::i;:::-;14810:210;;;;:::o;15026:313::-;15139:4;15177:2;15166:9;15162:18;15154:26;;15226:9;15220:4;15216:20;15212:1;15201:9;15197:17;15190:47;15254:78;15327:4;15318:6;15254:78;:::i;:::-;15246:86;;15026:313;;;;:::o;15345:419::-;15511:4;15549:2;15538:9;15534:18;15526:26;;15598:9;15592:4;15588:20;15584:1;15573:9;15569:17;15562:47;15626:131;15752:4;15626:131;:::i;:::-;15618:139;;15345:419;;;:::o;15770:::-;15936:4;15974:2;15963:9;15959:18;15951:26;;16023:9;16017:4;16013:20;16009:1;15998:9;15994:17;15987:47;16051:131;16177:4;16051:131;:::i;:::-;16043:139;;15770:419;;;:::o;16195:::-;16361:4;16399:2;16388:9;16384:18;16376:26;;16448:9;16442:4;16438:20;16434:1;16423:9;16419:17;16412:47;16476:131;16602:4;16476:131;:::i;:::-;16468:139;;16195:419;;;:::o;16620:::-;16786:4;16824:2;16813:9;16809:18;16801:26;;16873:9;16867:4;16863:20;16859:1;16848:9;16844:17;16837:47;16901:131;17027:4;16901:131;:::i;:::-;16893:139;;16620:419;;;:::o;17045:::-;17211:4;17249:2;17238:9;17234:18;17226:26;;17298:9;17292:4;17288:20;17284:1;17273:9;17269:17;17262:47;17326:131;17452:4;17326:131;:::i;:::-;17318:139;;17045:419;;;:::o;17470:::-;17636:4;17674:2;17663:9;17659:18;17651:26;;17723:9;17717:4;17713:20;17709:1;17698:9;17694:17;17687:47;17751:131;17877:4;17751:131;:::i;:::-;17743:139;;17470:419;;;:::o;17895:::-;18061:4;18099:2;18088:9;18084:18;18076:26;;18148:9;18142:4;18138:20;18134:1;18123:9;18119:17;18112:47;18176:131;18302:4;18176:131;:::i;:::-;18168:139;;17895:419;;;:::o;18320:::-;18486:4;18524:2;18513:9;18509:18;18501:26;;18573:9;18567:4;18563:20;18559:1;18548:9;18544:17;18537:47;18601:131;18727:4;18601:131;:::i;:::-;18593:139;;18320:419;;;:::o;18745:::-;18911:4;18949:2;18938:9;18934:18;18926:26;;18998:9;18992:4;18988:20;18984:1;18973:9;18969:17;18962:47;19026:131;19152:4;19026:131;:::i;:::-;19018:139;;18745:419;;;:::o;19170:::-;19336:4;19374:2;19363:9;19359:18;19351:26;;19423:9;19417:4;19413:20;19409:1;19398:9;19394:17;19387:47;19451:131;19577:4;19451:131;:::i;:::-;19443:139;;19170:419;;;:::o;19595:::-;19761:4;19799:2;19788:9;19784:18;19776:26;;19848:9;19842:4;19838:20;19834:1;19823:9;19819:17;19812:47;19876:131;20002:4;19876:131;:::i;:::-;19868:139;;19595:419;;;:::o;20020:::-;20186:4;20224:2;20213:9;20209:18;20201:26;;20273:9;20267:4;20263:20;20259:1;20248:9;20244:17;20237:47;20301:131;20427:4;20301:131;:::i;:::-;20293:139;;20020:419;;;:::o;20445:::-;20611:4;20649:2;20638:9;20634:18;20626:26;;20698:9;20692:4;20688:20;20684:1;20673:9;20669:17;20662:47;20726:131;20852:4;20726:131;:::i;:::-;20718:139;;20445:419;;;:::o;20870:222::-;20963:4;21001:2;20990:9;20986:18;20978:26;;21014:71;21082:1;21071:9;21067:17;21058:6;21014:71;:::i;:::-;20870:222;;;;:::o;21098:831::-;21361:4;21399:3;21388:9;21384:19;21376:27;;21413:71;21481:1;21470:9;21466:17;21457:6;21413:71;:::i;:::-;21494:80;21570:2;21559:9;21555:18;21546:6;21494:80;:::i;:::-;21621:9;21615:4;21611:20;21606:2;21595:9;21591:18;21584:48;21649:108;21752:4;21743:6;21649:108;:::i;:::-;21641:116;;21767:72;21835:2;21824:9;21820:18;21811:6;21767:72;:::i;:::-;21849:73;21917:3;21906:9;21902:19;21893:6;21849:73;:::i;:::-;21098:831;;;;;;;;:::o;21935:214::-;22024:4;22062:2;22051:9;22047:18;22039:26;;22075:67;22139:1;22128:9;22124:17;22115:6;22075:67;:::i;:::-;21935:214;;;;:::o;22155:129::-;22189:6;22216:20;;:::i;:::-;22206:30;;22245:33;22273:4;22265:6;22245:33;:::i;:::-;22155:129;;;:::o;22290:75::-;22323:6;22356:2;22350:9;22340:19;;22290:75;:::o;22371:311::-;22448:4;22538:18;22530:6;22527:30;22524:56;;;22560:18;;:::i;:::-;22524:56;22610:4;22602:6;22598:17;22590:25;;22670:4;22664;22660:15;22652:23;;22371:311;;;:::o;22688:132::-;22755:4;22778:3;22770:11;;22808:4;22803:3;22799:14;22791:22;;22688:132;;;:::o;22826:114::-;22893:6;22927:5;22921:12;22911:22;;22826:114;;;:::o;22946:99::-;22998:6;23032:5;23026:12;23016:22;;22946:99;;;:::o;23051:113::-;23121:4;23153;23148:3;23144:14;23136:22;;23051:113;;;:::o;23170:184::-;23269:11;23303:6;23298:3;23291:19;23343:4;23338:3;23334:14;23319:29;;23170:184;;;;:::o;23360:169::-;23444:11;23478:6;23473:3;23466:19;23518:4;23513:3;23509:14;23494:29;;23360:169;;;;:::o;23535:305::-;23575:3;23594:20;23612:1;23594:20;:::i;:::-;23589:25;;23628:20;23646:1;23628:20;:::i;:::-;23623:25;;23782:1;23714:66;23710:74;23707:1;23704:81;23701:107;;;23788:18;;:::i;:::-;23701:107;23832:1;23829;23825:9;23818:16;;23535:305;;;;:::o;23846:185::-;23886:1;23903:20;23921:1;23903:20;:::i;:::-;23898:25;;23937:20;23955:1;23937:20;:::i;:::-;23932:25;;23976:1;23966:35;;23981:18;;:::i;:::-;23966:35;24023:1;24020;24016:9;24011:14;;23846:185;;;;:::o;24037:348::-;24077:7;24100:20;24118:1;24100:20;:::i;:::-;24095:25;;24134:20;24152:1;24134:20;:::i;:::-;24129:25;;24322:1;24254:66;24250:74;24247:1;24244:81;24239:1;24232:9;24225:17;24221:105;24218:131;;;24329:18;;:::i;:::-;24218:131;24377:1;24374;24370:9;24359:20;;24037:348;;;;:::o;24391:191::-;24431:4;24451:20;24469:1;24451:20;:::i;:::-;24446:25;;24485:20;24503:1;24485:20;:::i;:::-;24480:25;;24524:1;24521;24518:8;24515:34;;;24529:18;;:::i;:::-;24515:34;24574:1;24571;24567:9;24559:17;;24391:191;;;;:::o;24588:96::-;24625:7;24654:24;24672:5;24654:24;:::i;:::-;24643:35;;24588:96;;;:::o;24690:90::-;24724:7;24767:5;24760:13;24753:21;24742:32;;24690:90;;;:::o;24786:126::-;24823:7;24863:42;24856:5;24852:54;24841:65;;24786:126;;;:::o;24918:77::-;24955:7;24984:5;24973:16;;24918:77;;;:::o;25001:86::-;25036:7;25076:4;25069:5;25065:16;25054:27;;25001:86;;;:::o;25093:121::-;25151:9;25184:24;25202:5;25184:24;:::i;:::-;25171:37;;25093:121;;;:::o;25220:307::-;25288:1;25298:113;25312:6;25309:1;25306:13;25298:113;;;25397:1;25392:3;25388:11;25382:18;25378:1;25373:3;25369:11;25362:39;25334:2;25331:1;25327:10;25322:15;;25298:113;;;25429:6;25426:1;25423:13;25420:101;;;25509:1;25500:6;25495:3;25491:16;25484:27;25420:101;25269:258;25220:307;;;:::o;25533:171::-;25572:3;25595:24;25613:5;25595:24;:::i;:::-;25586:33;;25641:4;25634:5;25631:15;25628:41;;;25649:18;;:::i;:::-;25628:41;25696:1;25689:5;25685:13;25678:20;;25533:171;;;:::o;25710:281::-;25793:27;25815:4;25793:27;:::i;:::-;25785:6;25781:40;25923:6;25911:10;25908:22;25887:18;25875:10;25872:34;25869:62;25866:88;;;25934:18;;:::i;:::-;25866:88;25974:10;25970:2;25963:22;25753:238;25710:281;;:::o;25997:233::-;26036:3;26059:24;26077:5;26059:24;:::i;:::-;26050:33;;26105:66;26098:5;26095:77;26092:103;;;26175:18;;:::i;:::-;26092:103;26222:1;26215:5;26211:13;26204:20;;25997:233;;;:::o;26236:180::-;26284:77;26281:1;26274:88;26381:4;26378:1;26371:15;26405:4;26402:1;26395:15;26422:180;26470:77;26467:1;26460:88;26567:4;26564:1;26557:15;26591:4;26588:1;26581:15;26608:180;26656:77;26653:1;26646:88;26753:4;26750:1;26743:15;26777:4;26774:1;26767:15;26794:180;26842:77;26839:1;26832:88;26939:4;26936:1;26929:15;26963:4;26960:1;26953:15;26980:117;27089:1;27086;27079:12;27103:117;27212:1;27209;27202:12;27226:117;27335:1;27332;27325:12;27349:117;27458:1;27455;27448:12;27472:102;27513:6;27564:2;27560:7;27555:2;27548:5;27544:14;27540:28;27530:38;;27472:102;;;:::o;27580:162::-;27720:14;27716:1;27708:6;27704:14;27697:38;27580:162;:::o;27748:222::-;27888:34;27884:1;27876:6;27872:14;27865:58;27957:5;27952:2;27944:6;27940:15;27933:30;27748:222;:::o;27976:175::-;28116:27;28112:1;28104:6;28100:14;28093:51;27976:175;:::o;28157:229::-;28297:34;28293:1;28285:6;28281:14;28274:58;28366:12;28361:2;28353:6;28349:15;28342:37;28157:229;:::o;28392:221::-;28532:34;28528:1;28520:6;28516:14;28509:58;28601:4;28596:2;28588:6;28584:15;28577:29;28392:221;:::o;28619:177::-;28759:29;28755:1;28747:6;28743:14;28736:53;28619:177;:::o;28802:220::-;28942:34;28938:1;28930:6;28926:14;28919:58;29011:3;29006:2;28998:6;28994:15;28987:28;28802:220;:::o;29028:182::-;29168:34;29164:1;29156:6;29152:14;29145:58;29028:182;:::o;29216:228::-;29356:34;29352:1;29344:6;29340:14;29333:58;29425:11;29420:2;29412:6;29408:15;29401:36;29216:228;:::o;29450:224::-;29590:34;29586:1;29578:6;29574:14;29567:58;29659:7;29654:2;29646:6;29642:15;29635:32;29450:224;:::o;29680:176::-;29820:28;29816:1;29808:6;29804:14;29797:52;29680:176;:::o;29862:223::-;30002:34;29998:1;29990:6;29986:14;29979:58;30071:6;30066:2;30058:6;30054:15;30047:31;29862:223;:::o;30091:173::-;30231:25;30227:1;30219:6;30215:14;30208:49;30091:173;:::o;30270:122::-;30343:24;30361:5;30343:24;:::i;:::-;30336:5;30333:35;30323:63;;30382:1;30379;30372:12;30323:63;30270:122;:::o;30398:116::-;30468:21;30483:5;30468:21;:::i;:::-;30461:5;30458:32;30448:60;;30504:1;30501;30494:12;30448:60;30398:116;:::o;30520:122::-;30593:24;30611:5;30593:24;:::i;:::-;30586:5;30583:35;30573:63;;30632:1;30629;30622:12;30573:63;30520:122;:::o

Swarm Source

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