ETH Price: $2,734.74 (-0.71%)

Token

HermioneGrangerAmericaCrashBandicootPurpleCowboy50... (wut)
 

Overview

Max Total Supply

420,690,000,000,000 wut

Holders

72

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
0.000041789 wut

Value
$0.00
0x2f44ada9820b28ab076169a92594ea7d8540b32c
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:
HgACbPc500Ti

Compiler Version
v0.8.15+commit.e14f2714

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-08-21
*/

/**

Twitter  -  https://twitter.com/wutdafisthis
Website  -  http://www.wutdafisthis.com/
Telegram -  https://t.me/hgacbpc500ti

**/


// SPDX-License-Identifier: UNLICENSED


pragma solidity 0.8.15;

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

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

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

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

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

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

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

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

}

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

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

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

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

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

}

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        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 HgACbPc500Ti is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    mapping(address => uint256) private _holderLastTransferTimestamp;
    bool public transferDelayEnabled = true;
    address payable private _taxWallet;

    uint256 private _initialBuyTax=20;
    uint256 private _initialSellTax=20;
    uint256 private _finalBuyTax=1;
    uint256 private _finalSellTax=1;
    uint256 private _reduceBuyTaxAt=20;
    uint256 private _reduceSellTaxAt=20;
    uint256 private _preventSwapBefore=20;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 420690000000000 * 10**_decimals;
    string private constant _name = unicode"HermioneGrangerAmericaCrashBandicootPurpleCowboy500TurtleInu";
    string private constant _symbol = unicode"wut";
    uint256 public _maxTxAmount = 6310350000000 * 10**_decimals;
    uint256 public _maxWalletSize = 6310350000000 * 10**_decimals;
    uint256 public _taxSwapThreshold= 420690000000 * 10**_decimals;
    uint256 public _maxTaxSwap= 2103450000000 * 10**_decimals;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

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

    constructor () {
        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = true;

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

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

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

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

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

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

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

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

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

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

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "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");
        uint256 taxAmount=0;
        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to]);
            taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);

            if (transferDelayEnabled) {
                  if (to != address(uniswapV2Router) && to != address(uniswapV2Pair)) {
                      require(
                          _holderLastTransferTimestamp[tx.origin] <
                              block.number,
                          "_transfer:: Transfer Delay enabled.  Only one purchase per block allowed."
                      );
                      _holderLastTransferTimestamp[tx.origin] = block.number;
                  }
              }

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

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

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to   == uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold && _buyCount>_preventSwapBefore) {
                swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

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


    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

    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;
        transferDelayEnabled=false;
        emit MaxTxAmountUpdated(_tTotal);
    }

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

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

    function delBots(address[] memory notbot) public onlyOwner {
      for (uint i = 0; i < notbot.length; i++) {
          bots[notbot[i]] = false;
      }
    }

    function isBot(address a) public view returns (bool){
      return bots[a];
    }

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

    
    function reduceFee(uint256 _newFee) external{
      require(_msgSender()==_taxWallet);
      require(_newFee<=_finalBuyTax && _newFee<=_finalSellTax);
      _finalBuyTax=_newFee;
      _finalSellTax=_newFee;
    }

    receive() external payable {}

    function manualSwap() external {
        require(_msgSender()==_taxWallet);
        uint256 tokenBalance=balanceOf(address(this));
        if(tokenBalance>0){
          swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
          sendETHToFee(ethBalance);
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"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":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":[{"internalType":"uint256","name":"_newFee","type":"uint256"}],"name":"reduceFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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"}]

60806040526001600660006101000a81548160ff0219169083151502179055506014600755601460085560016009556001600a556014600b556014600c556014600d556000600e556009600a6200005791906200063c565b6505bd3e2b8f806200006a91906200068d565b600f556009600a6200007d91906200063c565b6505bd3e2b8f806200009091906200068d565b6010556009600a620000a391906200063c565b6461f313f880620000b591906200068d565b6011556009600a620000c891906200063c565b6501e9bf63da80620000db91906200068d565b6012556000601460156101000a81548160ff0219169083151502179055506000601460166101000a81548160ff0219169083151502179055503480156200012157600080fd5b506000620001346200047160201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001e26200047160201b60201c565b600660016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a6200023291906200063c565b66017e9d8602b4006200024691906200068d565b600160006200025a6200047160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160036000620002ae6200047960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160036000600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003e16200047160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a6200044091906200063c565b66017e9d8602b4006200045491906200068d565b604051620004639190620006ff565b60405180910390a36200071c565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200053057808604811115620005085762000507620004a2565b5b6001851615620005185780820291505b80810290506200052885620004d1565b9450620004e8565b94509492505050565b6000826200054b57600190506200061e565b816200055b57600090506200061e565b81600181146200057457600281146200057f57620005b5565b60019150506200061e565b60ff841115620005945762000593620004a2565b5b8360020a915084821115620005ae57620005ad620004a2565b5b506200061e565b5060208310610133831016604e8410600b8410161715620005ef5782820a905083811115620005e957620005e8620004a2565b5b6200061e565b620005fe8484846001620004de565b92509050818404811115620006185762000617620004a2565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b6000620006498262000625565b915062000656836200062f565b9250620006857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000539565b905092915050565b60006200069a8262000625565b9150620006a78362000625565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620006e357620006e2620004a2565b5b828202905092915050565b620006f98162000625565b82525050565b6000602082019050620007166000830184620006ee565b92915050565b61373c806200072c6000396000f3fe6080604052600436106101445760003560e01c8063751039fc116100b6578063bf474bed1161006f578063bf474bed14610447578063c876d0b914610472578063c9567bf91461049d578063d34628cc146104b4578063dd62ed3e146104dd578063ec1f3f631461051a5761014b565b8063751039fc146103475780637d1db4a51461035e5780638da5cb5b146103895780638f9a55c0146103b457806395d89b41146103df578063a9059cbb1461040a5761014b565b8063313ce56711610108578063313ce5671461024b57806331c2d847146102765780633bbac5791461029f57806351bc3c85146102dc57806370a08231146102f3578063715018a6146103305761014b565b806306fdde0314610150578063095ea7b31461017b5780630faee56f146101b857806318160ddd146101e357806323b872dd1461020e5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b50610165610543565b604051610172919061259e565b60405180910390f35b34801561018757600080fd5b506101a2600480360381019061019d9190612668565b610563565b6040516101af91906126c3565b60405180910390f35b3480156101c457600080fd5b506101cd610581565b6040516101da91906126ed565b60405180910390f35b3480156101ef57600080fd5b506101f8610587565b60405161020591906126ed565b60405180910390f35b34801561021a57600080fd5b5061023560048036038101906102309190612708565b6105ae565b60405161024291906126c3565b60405180910390f35b34801561025757600080fd5b50610260610687565b60405161026d9190612777565b60405180910390f35b34801561028257600080fd5b5061029d600480360381019061029891906128da565b610690565b005b3480156102ab57600080fd5b506102c660048036038101906102c19190612923565b6107ba565b6040516102d391906126c3565b60405180910390f35b3480156102e857600080fd5b506102f1610810565b005b3480156102ff57600080fd5b5061031a60048036038101906103159190612923565b6108ad565b60405161032791906126ed565b60405180910390f35b34801561033c57600080fd5b506103456108f6565b005b34801561035357600080fd5b5061035c610a49565b005b34801561036a57600080fd5b50610373610b9d565b60405161038091906126ed565b60405180910390f35b34801561039557600080fd5b5061039e610ba3565b6040516103ab919061295f565b60405180910390f35b3480156103c057600080fd5b506103c9610bcc565b6040516103d691906126ed565b60405180910390f35b3480156103eb57600080fd5b506103f4610bd2565b604051610401919061259e565b60405180910390f35b34801561041657600080fd5b50610431600480360381019061042c9190612668565b610c0f565b60405161043e91906126c3565b60405180910390f35b34801561045357600080fd5b5061045c610c2d565b60405161046991906126ed565b60405180910390f35b34801561047e57600080fd5b50610487610c33565b60405161049491906126c3565b60405180910390f35b3480156104a957600080fd5b506104b2610c46565b005b3480156104c057600080fd5b506104db60048036038101906104d691906128da565b61117e565b005b3480156104e957600080fd5b5061050460048036038101906104ff919061297a565b6112a8565b60405161051191906126ed565b60405180910390f35b34801561052657600080fd5b50610541600480360381019061053c91906129ba565b61132f565b005b60606040518060600160405280603c81526020016136cb603c9139905090565b60006105776105706113be565b84846113c6565b6001905092915050565b60125481565b60006009600a6105979190612b49565b66017e9d8602b4006105a99190612b94565b905090565b60006105bb84848461158f565b61067c846105c76113be565b610677856040518060600160405280602881526020016136a360289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061062d6113be565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fd49092919063ffffffff16565b6113c6565b600190509392505050565b60006009905090565b6106986113be565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610725576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161071c90612c3a565b60405180910390fd5b60005b81518110156107b65760006004600084848151811061074a57610749612c5a565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806107ae90612c89565b915050610728565b5050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108516113be565b73ffffffffffffffffffffffffffffffffffffffff161461087157600080fd5b600061087c306108ad565b905060008111156108915761089081612038565b5b600047905060008111156108a9576108a8816122b1565b5b5050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6108fe6113be565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461098b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161098290612c3a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610a516113be565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ade576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ad590612c3a565b60405180910390fd5b6009600a610aec9190612b49565b66017e9d8602b400610afe9190612b94565b600f819055506009600a610b129190612b49565b66017e9d8602b400610b249190612b94565b6010819055506000600660006101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610b749190612b49565b66017e9d8602b400610b869190612b94565b604051610b9391906126ed565b60405180910390a1565b600f5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60105481565b60606040518060400160405280600381526020017f7775740000000000000000000000000000000000000000000000000000000000815250905090565b6000610c23610c1c6113be565b848461158f565b6001905092915050565b60115481565b600660009054906101000a900460ff1681565b610c4e6113be565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cdb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd290612c3a565b60405180910390fd5b60148054906101000a900460ff1615610d29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2090612d1d565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610dca30601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610db39190612b49565b66017e9d8602b400610dc59190612b94565b6113c6565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e5b9190612d52565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ee4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f089190612d52565b6040518363ffffffff1660e01b8152600401610f25929190612d7f565b6020604051808303816000875af1158015610f44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f689190612d52565b601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610ff1306108ad565b600080610ffc610ba3565b426040518863ffffffff1660e01b815260040161101e96959493929190612ded565b60606040518083038185885af115801561103c573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906110619190612e63565b505050601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611103929190612eb6565b6020604051808303816000875af1158015611122573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111469190612f0b565b506001601460166101000a81548160ff02191690831515021790555060016014806101000a81548160ff021916908315150217905550565b6111866113be565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611213576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120a90612c3a565b60405180910390fd5b60005b81518110156112a45760016004600084848151811061123857611237612c5a565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061129c90612c89565b915050611216565b5050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166113706113be565b73ffffffffffffffffffffffffffffffffffffffff161461139057600080fd5b60095481111580156113a45750600a548111155b6113ad57600080fd5b8060098190555080600a8190555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611435576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142c90612faa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036114a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161149b9061303c565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161158291906126ed565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036115fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115f5906130ce565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361166d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166490613160565b60405180910390fd5b600081116116b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a7906131f2565b60405180910390fd5b60006116ba610ba3565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561172857506116f8610ba3565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611d1757600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156117d15750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6117da57600080fd5b6118166064611808600b54600e54116117f5576007546117f9565b6009545b8561231d90919063ffffffff16565b61239790919063ffffffff16565b9050600660009054906101000a900460ff16156119a557601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156118d95750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156119a45743600560003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541061195f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611956906132aa565b60405180910390fd5b43600560003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611a505750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611aa65750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611b6157600f54821115611af0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae790613316565b60405180910390fd5b60105482611afd856108ad565b611b079190613336565b1115611b48576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b3f906133d8565b60405180910390fd5b600e6000815480929190611b5b90612c89565b91905055505b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611bea57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611c2e57611c2b6064611c1d600c54600e5411611c0a57600854611c0e565b600a545b8561231d90919063ffffffff16565b61239790919063ffffffff16565b90505b6000611c39306108ad565b9050601460159054906101000a900460ff16158015611ca55750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611cbd5750601460169054906101000a900460ff165b8015611cca575060115481115b8015611cd95750600d54600e54115b15611d1557611cfb611cf684611cf1846012546123e1565b6123e1565b612038565b60004790506000811115611d1357611d12476122b1565b5b505b505b6000811115611e1b57611d7281600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123fa90919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611e1291906126ed565b60405180910390a35b611e6d82600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461245890919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f14611ec6828461245890919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123fa90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611fb9848661245890919063ffffffff16565b604051611fc691906126ed565b60405180910390a350505050565b600083831115829061201c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612013919061259e565b60405180910390fd5b506000838561202b91906133f8565b9050809150509392505050565b6001601460156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156120705761206f612797565b5b60405190808252806020026020018201604052801561209e5781602001602082028036833780820191505090505b50905030816000815181106120b6576120b5612c5a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561215d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121819190612d52565b8160018151811061219557612194612c5a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506121fc30601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846113c6565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016122609594939291906134ea565b600060405180830381600087803b15801561227a57600080fd5b505af115801561228e573d6000803e3d6000fd5b50505050506000601460156101000a81548160ff02191690831515021790555050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612319573d6000803e3d6000fd5b5050565b600080830361232f5760009050612391565b6000828461233d9190612b94565b905082848261234c9190613573565b1461238c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161238390613616565b60405180910390fd5b809150505b92915050565b60006123d983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506124a2565b905092915050565b60008183116123f057826123f2565b815b905092915050565b60008082846124099190613336565b90508381101561244e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161244590613682565b60405180910390fd5b8091505092915050565b600061249a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611fd4565b905092915050565b600080831182906124e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124e0919061259e565b60405180910390fd5b50600083856124f89190613573565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561253f578082015181840152602081019050612524565b8381111561254e576000848401525b50505050565b6000601f19601f8301169050919050565b600061257082612505565b61257a8185612510565b935061258a818560208601612521565b61259381612554565b840191505092915050565b600060208201905081810360008301526125b88184612565565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006125ff826125d4565b9050919050565b61260f816125f4565b811461261a57600080fd5b50565b60008135905061262c81612606565b92915050565b6000819050919050565b61264581612632565b811461265057600080fd5b50565b6000813590506126628161263c565b92915050565b6000806040838503121561267f5761267e6125ca565b5b600061268d8582860161261d565b925050602061269e85828601612653565b9150509250929050565b60008115159050919050565b6126bd816126a8565b82525050565b60006020820190506126d860008301846126b4565b92915050565b6126e781612632565b82525050565b600060208201905061270260008301846126de565b92915050565b600080600060608486031215612721576127206125ca565b5b600061272f8682870161261d565b93505060206127408682870161261d565b925050604061275186828701612653565b9150509250925092565b600060ff82169050919050565b6127718161275b565b82525050565b600060208201905061278c6000830184612768565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6127cf82612554565b810181811067ffffffffffffffff821117156127ee576127ed612797565b5b80604052505050565b60006128016125c0565b905061280d82826127c6565b919050565b600067ffffffffffffffff82111561282d5761282c612797565b5b602082029050602081019050919050565b600080fd5b600061285661285184612812565b6127f7565b905080838252602082019050602084028301858111156128795761287861283e565b5b835b818110156128a2578061288e888261261d565b84526020840193505060208101905061287b565b5050509392505050565b600082601f8301126128c1576128c0612792565b5b81356128d1848260208601612843565b91505092915050565b6000602082840312156128f0576128ef6125ca565b5b600082013567ffffffffffffffff81111561290e5761290d6125cf565b5b61291a848285016128ac565b91505092915050565b600060208284031215612939576129386125ca565b5b60006129478482850161261d565b91505092915050565b612959816125f4565b82525050565b60006020820190506129746000830184612950565b92915050565b60008060408385031215612991576129906125ca565b5b600061299f8582860161261d565b92505060206129b08582860161261d565b9150509250929050565b6000602082840312156129d0576129cf6125ca565b5b60006129de84828501612653565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115612a6d57808604811115612a4957612a486129e7565b5b6001851615612a585780820291505b8081029050612a6685612a16565b9450612a2d565b94509492505050565b600082612a865760019050612b42565b81612a945760009050612b42565b8160018114612aaa5760028114612ab457612ae3565b6001915050612b42565b60ff841115612ac657612ac56129e7565b5b8360020a915084821115612add57612adc6129e7565b5b50612b42565b5060208310610133831016604e8410600b8410161715612b185782820a905083811115612b1357612b126129e7565b5b612b42565b612b258484846001612a23565b92509050818404811115612b3c57612b3b6129e7565b5b81810290505b9392505050565b6000612b5482612632565b9150612b5f8361275b565b9250612b8c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612a76565b905092915050565b6000612b9f82612632565b9150612baa83612632565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612be357612be26129e7565b5b828202905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612c24602083612510565b9150612c2f82612bee565b602082019050919050565b60006020820190508181036000830152612c5381612c17565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612c9482612632565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612cc657612cc56129e7565b5b600182019050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6000612d07601783612510565b9150612d1282612cd1565b602082019050919050565b60006020820190508181036000830152612d3681612cfa565b9050919050565b600081519050612d4c81612606565b92915050565b600060208284031215612d6857612d676125ca565b5b6000612d7684828501612d3d565b91505092915050565b6000604082019050612d946000830185612950565b612da16020830184612950565b9392505050565b6000819050919050565b6000819050919050565b6000612dd7612dd2612dcd84612da8565b612db2565b612632565b9050919050565b612de781612dbc565b82525050565b600060c082019050612e026000830189612950565b612e0f60208301886126de565b612e1c6040830187612dde565b612e296060830186612dde565b612e366080830185612950565b612e4360a08301846126de565b979650505050505050565b600081519050612e5d8161263c565b92915050565b600080600060608486031215612e7c57612e7b6125ca565b5b6000612e8a86828701612e4e565b9350506020612e9b86828701612e4e565b9250506040612eac86828701612e4e565b9150509250925092565b6000604082019050612ecb6000830185612950565b612ed860208301846126de565b9392505050565b612ee8816126a8565b8114612ef357600080fd5b50565b600081519050612f0581612edf565b92915050565b600060208284031215612f2157612f206125ca565b5b6000612f2f84828501612ef6565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612f94602483612510565b9150612f9f82612f38565b604082019050919050565b60006020820190508181036000830152612fc381612f87565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000613026602283612510565b915061303182612fca565b604082019050919050565b6000602082019050818103600083015261305581613019565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006130b8602583612510565b91506130c38261305c565b604082019050919050565b600060208201905081810360008301526130e7816130ab565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061314a602383612510565b9150613155826130ee565b604082019050919050565b600060208201905081810360008301526131798161313d565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006131dc602983612510565b91506131e782613180565b604082019050919050565b6000602082019050818103600083015261320b816131cf565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b6000613294604983612510565b915061329f82613212565b606082019050919050565b600060208201905081810360008301526132c381613287565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000613300601983612510565b915061330b826132ca565b602082019050919050565b6000602082019050818103600083015261332f816132f3565b9050919050565b600061334182612632565b915061334c83612632565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613381576133806129e7565b5b828201905092915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b60006133c2601a83612510565b91506133cd8261338c565b602082019050919050565b600060208201905081810360008301526133f1816133b5565b9050919050565b600061340382612632565b915061340e83612632565b925082821015613421576134206129e7565b5b828203905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613461816125f4565b82525050565b60006134738383613458565b60208301905092915050565b6000602082019050919050565b60006134978261342c565b6134a18185613437565b93506134ac83613448565b8060005b838110156134dd5781516134c48882613467565b97506134cf8361347f565b9250506001810190506134b0565b5085935050505092915050565b600060a0820190506134ff60008301886126de565b61350c6020830187612dde565b818103604083015261351e818661348c565b905061352d6060830185612950565b61353a60808301846126de565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061357e82612632565b915061358983612632565b92508261359957613598613544565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000613600602183612510565b915061360b826135a4565b604082019050919050565b6000602082019050818103600083015261362f816135f3565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600061366c601b83612510565b915061367782613636565b602082019050919050565b6000602082019050818103600083015261369b8161365f565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654865726d696f6e654772616e676572416d6572696361437261736842616e6469636f6f74507572706c65436f77626f79353030547572746c65496e75a26469706673582212208fd75022bbb2459891939404204d182d0f5c723a1f5c01f9850f5ce212b6beb864736f6c634300080f0033

Deployed Bytecode

0x6080604052600436106101445760003560e01c8063751039fc116100b6578063bf474bed1161006f578063bf474bed14610447578063c876d0b914610472578063c9567bf91461049d578063d34628cc146104b4578063dd62ed3e146104dd578063ec1f3f631461051a5761014b565b8063751039fc146103475780637d1db4a51461035e5780638da5cb5b146103895780638f9a55c0146103b457806395d89b41146103df578063a9059cbb1461040a5761014b565b8063313ce56711610108578063313ce5671461024b57806331c2d847146102765780633bbac5791461029f57806351bc3c85146102dc57806370a08231146102f3578063715018a6146103305761014b565b806306fdde0314610150578063095ea7b31461017b5780630faee56f146101b857806318160ddd146101e357806323b872dd1461020e5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b50610165610543565b604051610172919061259e565b60405180910390f35b34801561018757600080fd5b506101a2600480360381019061019d9190612668565b610563565b6040516101af91906126c3565b60405180910390f35b3480156101c457600080fd5b506101cd610581565b6040516101da91906126ed565b60405180910390f35b3480156101ef57600080fd5b506101f8610587565b60405161020591906126ed565b60405180910390f35b34801561021a57600080fd5b5061023560048036038101906102309190612708565b6105ae565b60405161024291906126c3565b60405180910390f35b34801561025757600080fd5b50610260610687565b60405161026d9190612777565b60405180910390f35b34801561028257600080fd5b5061029d600480360381019061029891906128da565b610690565b005b3480156102ab57600080fd5b506102c660048036038101906102c19190612923565b6107ba565b6040516102d391906126c3565b60405180910390f35b3480156102e857600080fd5b506102f1610810565b005b3480156102ff57600080fd5b5061031a60048036038101906103159190612923565b6108ad565b60405161032791906126ed565b60405180910390f35b34801561033c57600080fd5b506103456108f6565b005b34801561035357600080fd5b5061035c610a49565b005b34801561036a57600080fd5b50610373610b9d565b60405161038091906126ed565b60405180910390f35b34801561039557600080fd5b5061039e610ba3565b6040516103ab919061295f565b60405180910390f35b3480156103c057600080fd5b506103c9610bcc565b6040516103d691906126ed565b60405180910390f35b3480156103eb57600080fd5b506103f4610bd2565b604051610401919061259e565b60405180910390f35b34801561041657600080fd5b50610431600480360381019061042c9190612668565b610c0f565b60405161043e91906126c3565b60405180910390f35b34801561045357600080fd5b5061045c610c2d565b60405161046991906126ed565b60405180910390f35b34801561047e57600080fd5b50610487610c33565b60405161049491906126c3565b60405180910390f35b3480156104a957600080fd5b506104b2610c46565b005b3480156104c057600080fd5b506104db60048036038101906104d691906128da565b61117e565b005b3480156104e957600080fd5b5061050460048036038101906104ff919061297a565b6112a8565b60405161051191906126ed565b60405180910390f35b34801561052657600080fd5b50610541600480360381019061053c91906129ba565b61132f565b005b60606040518060600160405280603c81526020016136cb603c9139905090565b60006105776105706113be565b84846113c6565b6001905092915050565b60125481565b60006009600a6105979190612b49565b66017e9d8602b4006105a99190612b94565b905090565b60006105bb84848461158f565b61067c846105c76113be565b610677856040518060600160405280602881526020016136a360289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061062d6113be565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fd49092919063ffffffff16565b6113c6565b600190509392505050565b60006009905090565b6106986113be565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610725576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161071c90612c3a565b60405180910390fd5b60005b81518110156107b65760006004600084848151811061074a57610749612c5a565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806107ae90612c89565b915050610728565b5050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108516113be565b73ffffffffffffffffffffffffffffffffffffffff161461087157600080fd5b600061087c306108ad565b905060008111156108915761089081612038565b5b600047905060008111156108a9576108a8816122b1565b5b5050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6108fe6113be565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461098b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161098290612c3a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610a516113be565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ade576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ad590612c3a565b60405180910390fd5b6009600a610aec9190612b49565b66017e9d8602b400610afe9190612b94565b600f819055506009600a610b129190612b49565b66017e9d8602b400610b249190612b94565b6010819055506000600660006101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610b749190612b49565b66017e9d8602b400610b869190612b94565b604051610b9391906126ed565b60405180910390a1565b600f5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60105481565b60606040518060400160405280600381526020017f7775740000000000000000000000000000000000000000000000000000000000815250905090565b6000610c23610c1c6113be565b848461158f565b6001905092915050565b60115481565b600660009054906101000a900460ff1681565b610c4e6113be565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cdb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd290612c3a565b60405180910390fd5b60148054906101000a900460ff1615610d29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2090612d1d565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610dca30601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610db39190612b49565b66017e9d8602b400610dc59190612b94565b6113c6565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e5b9190612d52565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ee4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f089190612d52565b6040518363ffffffff1660e01b8152600401610f25929190612d7f565b6020604051808303816000875af1158015610f44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f689190612d52565b601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610ff1306108ad565b600080610ffc610ba3565b426040518863ffffffff1660e01b815260040161101e96959493929190612ded565b60606040518083038185885af115801561103c573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906110619190612e63565b505050601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611103929190612eb6565b6020604051808303816000875af1158015611122573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111469190612f0b565b506001601460166101000a81548160ff02191690831515021790555060016014806101000a81548160ff021916908315150217905550565b6111866113be565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611213576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120a90612c3a565b60405180910390fd5b60005b81518110156112a45760016004600084848151811061123857611237612c5a565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061129c90612c89565b915050611216565b5050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166113706113be565b73ffffffffffffffffffffffffffffffffffffffff161461139057600080fd5b60095481111580156113a45750600a548111155b6113ad57600080fd5b8060098190555080600a8190555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611435576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142c90612faa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036114a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161149b9061303c565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161158291906126ed565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036115fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115f5906130ce565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361166d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166490613160565b60405180910390fd5b600081116116b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a7906131f2565b60405180910390fd5b60006116ba610ba3565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561172857506116f8610ba3565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611d1757600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156117d15750600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6117da57600080fd5b6118166064611808600b54600e54116117f5576007546117f9565b6009545b8561231d90919063ffffffff16565b61239790919063ffffffff16565b9050600660009054906101000a900460ff16156119a557601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156118d95750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156119a45743600560003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541061195f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611956906132aa565b60405180910390fd5b43600560003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611a505750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611aa65750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611b6157600f54821115611af0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae790613316565b60405180910390fd5b60105482611afd856108ad565b611b079190613336565b1115611b48576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b3f906133d8565b60405180910390fd5b600e6000815480929190611b5b90612c89565b91905055505b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611bea57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611c2e57611c2b6064611c1d600c54600e5411611c0a57600854611c0e565b600a545b8561231d90919063ffffffff16565b61239790919063ffffffff16565b90505b6000611c39306108ad565b9050601460159054906101000a900460ff16158015611ca55750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611cbd5750601460169054906101000a900460ff165b8015611cca575060115481115b8015611cd95750600d54600e54115b15611d1557611cfb611cf684611cf1846012546123e1565b6123e1565b612038565b60004790506000811115611d1357611d12476122b1565b5b505b505b6000811115611e1b57611d7281600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123fa90919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611e1291906126ed565b60405180910390a35b611e6d82600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461245890919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f14611ec6828461245890919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123fa90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611fb9848661245890919063ffffffff16565b604051611fc691906126ed565b60405180910390a350505050565b600083831115829061201c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612013919061259e565b60405180910390fd5b506000838561202b91906133f8565b9050809150509392505050565b6001601460156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156120705761206f612797565b5b60405190808252806020026020018201604052801561209e5781602001602082028036833780820191505090505b50905030816000815181106120b6576120b5612c5a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561215d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121819190612d52565b8160018151811061219557612194612c5a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506121fc30601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846113c6565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016122609594939291906134ea565b600060405180830381600087803b15801561227a57600080fd5b505af115801561228e573d6000803e3d6000fd5b50505050506000601460156101000a81548160ff02191690831515021790555050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612319573d6000803e3d6000fd5b5050565b600080830361232f5760009050612391565b6000828461233d9190612b94565b905082848261234c9190613573565b1461238c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161238390613616565b60405180910390fd5b809150505b92915050565b60006123d983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506124a2565b905092915050565b60008183116123f057826123f2565b815b905092915050565b60008082846124099190613336565b90508381101561244e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161244590613682565b60405180910390fd5b8091505092915050565b600061249a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611fd4565b905092915050565b600080831182906124e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124e0919061259e565b60405180910390fd5b50600083856124f89190613573565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561253f578082015181840152602081019050612524565b8381111561254e576000848401525b50505050565b6000601f19601f8301169050919050565b600061257082612505565b61257a8185612510565b935061258a818560208601612521565b61259381612554565b840191505092915050565b600060208201905081810360008301526125b88184612565565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006125ff826125d4565b9050919050565b61260f816125f4565b811461261a57600080fd5b50565b60008135905061262c81612606565b92915050565b6000819050919050565b61264581612632565b811461265057600080fd5b50565b6000813590506126628161263c565b92915050565b6000806040838503121561267f5761267e6125ca565b5b600061268d8582860161261d565b925050602061269e85828601612653565b9150509250929050565b60008115159050919050565b6126bd816126a8565b82525050565b60006020820190506126d860008301846126b4565b92915050565b6126e781612632565b82525050565b600060208201905061270260008301846126de565b92915050565b600080600060608486031215612721576127206125ca565b5b600061272f8682870161261d565b93505060206127408682870161261d565b925050604061275186828701612653565b9150509250925092565b600060ff82169050919050565b6127718161275b565b82525050565b600060208201905061278c6000830184612768565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6127cf82612554565b810181811067ffffffffffffffff821117156127ee576127ed612797565b5b80604052505050565b60006128016125c0565b905061280d82826127c6565b919050565b600067ffffffffffffffff82111561282d5761282c612797565b5b602082029050602081019050919050565b600080fd5b600061285661285184612812565b6127f7565b905080838252602082019050602084028301858111156128795761287861283e565b5b835b818110156128a2578061288e888261261d565b84526020840193505060208101905061287b565b5050509392505050565b600082601f8301126128c1576128c0612792565b5b81356128d1848260208601612843565b91505092915050565b6000602082840312156128f0576128ef6125ca565b5b600082013567ffffffffffffffff81111561290e5761290d6125cf565b5b61291a848285016128ac565b91505092915050565b600060208284031215612939576129386125ca565b5b60006129478482850161261d565b91505092915050565b612959816125f4565b82525050565b60006020820190506129746000830184612950565b92915050565b60008060408385031215612991576129906125ca565b5b600061299f8582860161261d565b92505060206129b08582860161261d565b9150509250929050565b6000602082840312156129d0576129cf6125ca565b5b60006129de84828501612653565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115612a6d57808604811115612a4957612a486129e7565b5b6001851615612a585780820291505b8081029050612a6685612a16565b9450612a2d565b94509492505050565b600082612a865760019050612b42565b81612a945760009050612b42565b8160018114612aaa5760028114612ab457612ae3565b6001915050612b42565b60ff841115612ac657612ac56129e7565b5b8360020a915084821115612add57612adc6129e7565b5b50612b42565b5060208310610133831016604e8410600b8410161715612b185782820a905083811115612b1357612b126129e7565b5b612b42565b612b258484846001612a23565b92509050818404811115612b3c57612b3b6129e7565b5b81810290505b9392505050565b6000612b5482612632565b9150612b5f8361275b565b9250612b8c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612a76565b905092915050565b6000612b9f82612632565b9150612baa83612632565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612be357612be26129e7565b5b828202905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612c24602083612510565b9150612c2f82612bee565b602082019050919050565b60006020820190508181036000830152612c5381612c17565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612c9482612632565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612cc657612cc56129e7565b5b600182019050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6000612d07601783612510565b9150612d1282612cd1565b602082019050919050565b60006020820190508181036000830152612d3681612cfa565b9050919050565b600081519050612d4c81612606565b92915050565b600060208284031215612d6857612d676125ca565b5b6000612d7684828501612d3d565b91505092915050565b6000604082019050612d946000830185612950565b612da16020830184612950565b9392505050565b6000819050919050565b6000819050919050565b6000612dd7612dd2612dcd84612da8565b612db2565b612632565b9050919050565b612de781612dbc565b82525050565b600060c082019050612e026000830189612950565b612e0f60208301886126de565b612e1c6040830187612dde565b612e296060830186612dde565b612e366080830185612950565b612e4360a08301846126de565b979650505050505050565b600081519050612e5d8161263c565b92915050565b600080600060608486031215612e7c57612e7b6125ca565b5b6000612e8a86828701612e4e565b9350506020612e9b86828701612e4e565b9250506040612eac86828701612e4e565b9150509250925092565b6000604082019050612ecb6000830185612950565b612ed860208301846126de565b9392505050565b612ee8816126a8565b8114612ef357600080fd5b50565b600081519050612f0581612edf565b92915050565b600060208284031215612f2157612f206125ca565b5b6000612f2f84828501612ef6565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612f94602483612510565b9150612f9f82612f38565b604082019050919050565b60006020820190508181036000830152612fc381612f87565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000613026602283612510565b915061303182612fca565b604082019050919050565b6000602082019050818103600083015261305581613019565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006130b8602583612510565b91506130c38261305c565b604082019050919050565b600060208201905081810360008301526130e7816130ab565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061314a602383612510565b9150613155826130ee565b604082019050919050565b600060208201905081810360008301526131798161313d565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006131dc602983612510565b91506131e782613180565b604082019050919050565b6000602082019050818103600083015261320b816131cf565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b6000613294604983612510565b915061329f82613212565b606082019050919050565b600060208201905081810360008301526132c381613287565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000613300601983612510565b915061330b826132ca565b602082019050919050565b6000602082019050818103600083015261332f816132f3565b9050919050565b600061334182612632565b915061334c83612632565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613381576133806129e7565b5b828201905092915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b60006133c2601a83612510565b91506133cd8261338c565b602082019050919050565b600060208201905081810360008301526133f1816133b5565b9050919050565b600061340382612632565b915061340e83612632565b925082821015613421576134206129e7565b5b828203905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613461816125f4565b82525050565b60006134738383613458565b60208301905092915050565b6000602082019050919050565b60006134978261342c565b6134a18185613437565b93506134ac83613448565b8060005b838110156134dd5781516134c48882613467565b97506134cf8361347f565b9250506001810190506134b0565b5085935050505092915050565b600060a0820190506134ff60008301886126de565b61350c6020830187612dde565b818103604083015261351e818661348c565b905061352d6060830185612950565b61353a60808301846126de565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061357e82612632565b915061358983612632565b92508261359957613598613544565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000613600602183612510565b915061360b826135a4565b604082019050919050565b6000602082019050818103600083015261362f816135f3565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600061366c601b83612510565b915061367782613636565b602082019050919050565b6000602082019050818103600083015261369b8161365f565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654865726d696f6e654772616e676572416d6572696361437261736842616e6469636f6f74507572706c65436f77626f79353030547572746c65496e75a26469706673582212208fd75022bbb2459891939404204d182d0f5c723a1f5c01f9850f5ce212b6beb864736f6c634300080f0033

Deployed Bytecode Sourcemap

3627:8767:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5639:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6472:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4909:57;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5916:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6641:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5825:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10834:162;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11004:83;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12043:348;;;;;;;;;;;;;:::i;:::-;;6019:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2708:148;;;;;;;;;;;;;:::i;:::-;;10358:196;;;;;;;;;;;;;:::i;:::-;;4706:59;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2494:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4772:61;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5730:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6146:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4840:62;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4021:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11095:671;;;;;;;;;;;;;:::i;:::-;;10662:164;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6321:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11780:218;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5639:83;5676:13;5709:5;;;;;;;;;;;;;;;;;5702:12;;5639:83;:::o;6472:161::-;6547:4;6564:39;6573:12;:10;:12::i;:::-;6587:7;6596:6;6564:8;:39::i;:::-;6621:4;6614:11;;6472:161;;;;:::o;4909:57::-;;;;:::o;5916:95::-;5969:7;4464:1;4525:2;:13;;;;:::i;:::-;4507:15;:31;;;;:::i;:::-;5989:14;;5916:95;:::o;6641:313::-;6739:4;6756:36;6766:6;6774:9;6785:6;6756:9;:36::i;:::-;6803:121;6812:6;6820:12;:10;:12::i;:::-;6834:89;6872:6;6834:89;;;;;;;;;;;;;;;;;:11;:19;6846:6;6834:19;;;;;;;;;;;;;;;:33;6854:12;:10;:12::i;:::-;6834:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6803:8;:121::i;:::-;6942:4;6935:11;;6641:313;;;;;:::o;5825:83::-;5866:5;4464:1;5884:16;;5825:83;:::o;10834:162::-;2631:12;:10;:12::i;:::-;2621:22;;:6;;;;;;;;;;:22;;;2613:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10907:6:::1;10902:87;10923:6;:13;10919:1;:17;10902:87;;;10974:5;10956:4;:15;10961:6;10968:1;10961:9;;;;;;;;:::i;:::-;;;;;;;;10956:15;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;10938:3;;;;;:::i;:::-;;;;10902:87;;;;10834:162:::0;:::o;11004:83::-;11051:4;11072;:7;11077:1;11072:7;;;;;;;;;;;;;;;;;;;;;;;;;11065:14;;11004:83;;;:::o;12043:348::-;12107:10;;;;;;;;;;;12093:24;;:12;:10;:12::i;:::-;:24;;;12085:33;;;;;;12129:20;12150:24;12168:4;12150:9;:24::i;:::-;12129:45;;12201:1;12188:12;:14;12185:73;;;12216:30;12233:12;12216:16;:30::i;:::-;12185:73;12268:18;12287:21;12268:40;;12333:1;12322:10;:12;12319:65;;;12348:24;12361:10;12348:12;:24::i;:::-;12319:65;12074:317;;12043:348::o;6019:119::-;6085:7;6112:9;:18;6122:7;6112:18;;;;;;;;;;;;;;;;6105:25;;6019:119;;;:::o;2708:148::-;2631:12;:10;:12::i;:::-;2621:22;;:6;;;;;;;;;;:22;;;2613:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2815:1:::1;2778:40;;2799:6;::::0;::::1;;;;;;;;2778:40;;;;;;;;;;;;2846:1;2829:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2708:148::o:0;10358:196::-;2631:12;:10;:12::i;:::-;2621:22;;:6;;;;;;;;;;:22;;;2613:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4464:1:::1;4525:2;:13;;;;:::i;:::-;4507:15;:31;;;;:::i;:::-;10411:12;:22;;;;4464:1;4525:2;:13;;;;:::i;:::-;4507:15;:31;;;;:::i;:::-;10444:14;:22;;;;10498:5;10477:20;;:26;;;;;;;;;;;;;;;;;;10519:27;4464:1;4525:2;:13;;;;:::i;:::-;4507:15;:31;;;;:::i;:::-;10519:27;;;;;;:::i;:::-;;;;;;;;10358:196::o:0;4706:59::-;;;;:::o;2494:79::-;2532:7;2559:6;;;;;;;;;;;2552:13;;2494:79;:::o;4772:61::-;;;;:::o;5730:87::-;5769:13;5802:7;;;;;;;;;;;;;;;;;5795:14;;5730:87;:::o;6146:167::-;6224:4;6241:42;6251:12;:10;:12::i;:::-;6265:9;6276:6;6241:9;:42::i;:::-;6301:4;6294:11;;6146:167;;;;:::o;4840:62::-;;;;:::o;4021:39::-;;;;;;;;;;;;;:::o;11095:671::-;2631:12;:10;:12::i;:::-;2621:22;;:6;;;;;;;;;;:22;;;2613:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11159:11:::1;::::0;::::1;;;;;;;;11158:12;11150:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;11245:42;11208:15;;:80;;;;;;;;;;;;;;;;;;11299:58;11316:4;11331:15;;;;;;;;;;;4464:1;4525:2;:13;;;;:::i;:::-;4507:15;:31;;;;:::i;:::-;11299:8;:58::i;:::-;11402:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11384:55;;;11448:4;11455:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11384:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11368:13;;:110;;;;;;;;;;;;;;;;;;11489:15;;;;;;;;;;;:31;;;11528:21;11559:4;11565:24;11583:4;11565:9;:24::i;:::-;11590:1;11592::::0;11594:7:::1;:5;:7::i;:::-;11602:15;11489:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;11636:13;;;;;;;;;;;11629:29;;;11667:15;;;;;;;;;;;11685:14;11629:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11725:4;11711:11;;:18;;;;;;;;;;;;;;;;;;11754:4;11740:11;::::0;:18:::1;;;;;;;;;;;;;;;;;;11095:671::o:0;10662:164::-;2631:12;:10;:12::i;:::-;2621:22;;:6;;;;;;;;;;:22;;;2613:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10736:6:::1;10731:88;10752:5;:12;10748:1;:16;10731:88;;;10803:4;10786;:14;10791:5;10797:1;10791:8;;;;;;;;:::i;:::-;;;;;;;;10786:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;10766:3;;;;;:::i;:::-;;;;10731:88;;;;10662:164:::0;:::o;6321:143::-;6402:7;6429:11;:18;6441:5;6429:18;;;;;;;;;;;;;;;:27;6448:7;6429:27;;;;;;;;;;;;;;;;6422:34;;6321:143;;;;:::o;11780:218::-;11855:10;;;;;;;;;;;11841:24;;:12;:10;:12::i;:::-;:24;;;11833:33;;;;;;11892:12;;11883:7;:21;;:47;;;;;11917:13;;11908:7;:22;;11883:47;11875:56;;;;;;11953:7;11940:12;:20;;;;11983:7;11969:13;:21;;;;11780:218;:::o;249:98::-;302:7;329:10;322:17;;249:98;:::o;6962:335::-;7072:1;7055:19;;:5;:19;;;7047:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7153:1;7134:21;;:7;:21;;;7126:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7235:6;7205:11;:18;7217:5;7205:18;;;;;;;;;;;;;;;:27;7224:7;7205:27;;;;;;;;;;;;;;;:36;;;;7273:7;7257:32;;7266:5;7257:32;;;7282:6;7257:32;;;;;;:::i;:::-;;;;;;;;6962:335;;;:::o;7305:2446::-;7409:1;7393:18;;:4;:18;;;7385:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7486:1;7472:16;;:2;:16;;;7464:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7556:1;7547:6;:10;7539:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7614:17;7656:7;:5;:7::i;:::-;7648:15;;:4;:15;;;;:32;;;;;7673:7;:5;:7::i;:::-;7667:13;;:2;:13;;;;7648:32;7644:1751;;;7706:4;:10;7711:4;7706:10;;;;;;;;;;;;;;;;;;;;;;;;;7705:11;:24;;;;;7721:4;:8;7726:2;7721:8;;;;;;;;;;;;;;;;;;;;;;;;;7720:9;7705:24;7697:33;;;;;;7757:76;7829:3;7757:67;7779:15;;7769:9;;:25;7768:55;;7809:14;;7768:55;;;7796:12;;7768:55;7757:6;:10;;:67;;;;:::i;:::-;:71;;:76;;;;:::i;:::-;7745:88;;7854:20;;;;;;;;;;;7850:508;;;7915:15;;;;;;;;;;;7901:30;;:2;:30;;;;:62;;;;;7949:13;;;;;;;;;;;7935:28;;:2;:28;;;;7901:62;7897:444;;;8099:12;8026:28;:39;8055:9;8026:39;;;;;;;;;;;;;;;;:85;7990:250;;;;;;;;;;;;:::i;:::-;;;;;;;;;8307:12;8265:28;:39;8294:9;8265:39;;;;;;;;;;;;;;;:54;;;;7897:444;7850:508;8386:13;;;;;;;;;;;8378:21;;:4;:21;;;:55;;;;;8417:15;;;;;;;;;;;8403:30;;:2;:30;;;;8378:55;:83;;;;;8439:18;:22;8458:2;8439:22;;;;;;;;;;;;;;;;;;;;;;;;;8437:24;8378:83;8374:313;;;8501:12;;8491:6;:22;;8483:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;8596:14;;8586:6;8570:13;8580:2;8570:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;8562:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;8660:9;;:11;;;;;;;;;:::i;:::-;;;;;;8374:313;8712:13;;;;;;;;;;;8706:19;;:2;:19;;;:43;;;;;8744:4;8729:20;;:4;:20;;;;8706:43;8703:174;;;8782:79;8857:3;8782:70;8804:16;;8794:9;;:26;8793:58;;8836:15;;8793:58;;;8822:13;;8793:58;8782:6;:10;;:70;;;;:::i;:::-;:74;;:79;;;;:::i;:::-;8770:91;;8703:174;8893:28;8924:24;8942:4;8924:9;:24::i;:::-;8893:55;;8968:6;;;;;;;;;;;8967:7;:32;;;;;8986:13;;;;;;;;;;;8978:21;;:2;:21;;;8967:32;:47;;;;;9003:11;;;;;;;;;;;8967:47;:89;;;;;9039:17;;9018:20;:38;8967:89;:121;;;;;9070:18;;9060:9;;:28;8967:121;8963:421;;;9109:67;9126:49;9130:6;9137:37;9141:20;9162:11;;9137:3;:37::i;:::-;9126:3;:49::i;:::-;9109:16;:67::i;:::-;9195:26;9224:21;9195:50;;9288:1;9267:18;:22;9264:105;;;9314:35;9327:21;9314:12;:35::i;:::-;9264:105;9090:294;8963:421;7682:1713;7644:1751;9420:1;9410:9;:11;9407:161;;;9460:39;9489:9;9460;:24;9478:4;9460:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;9435:9;:24;9453:4;9435:24;;;;;;;;;;;;;;;:64;;;;9540:4;9517:39;;9526:4;9517:39;;;9546:9;9517:39;;;;;;:::i;:::-;;;;;;;;9407:161;9594:27;9614:6;9594:9;:15;9604:4;9594:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;9578:9;:15;9588:4;9578:15;;;;;;;;;;;;;;;:43;;;;9646:40;9664:21;9675:9;9664:6;:10;;:21;;;;:::i;:::-;9646:9;:13;9656:2;9646:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;9632:9;:13;9642:2;9632:13;;;;;;;;;;;;;;;:54;;;;9717:2;9702:41;;9711:4;9702:41;;;9721:21;9732:9;9721:6;:10;;:21;;;;:::i;:::-;9702:41;;;;;;:::i;:::-;;;;;;;;7374:2377;7305:2446;;;:::o;1386:190::-;1472:7;1505:1;1500;:6;;1508:12;1492:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1532:9;1548:1;1544;:5;;;;:::i;:::-;1532:17;;1567:1;1560:8;;;1386:190;;;;;:::o;9867:483::-;5257:4;5248:6;;:13;;;;;;;;;;;;;;;;;;9945:21:::1;9983:1;9969:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9945:40;;10014:4;9996;10001:1;9996:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;10040:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10030:4;10035:1;10030:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;10073:62;10090:4;10105:15;;;;;;;;;;;10123:11;10073:8;:62::i;:::-;10146:15;;;;;;;;;;;:66;;;10227:11;10253:1;10269:4;10296;10316:15;10146:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;9934:416;5293:5:::0;5284:6;;:14;;;;;;;;;;;;;;;;;;9867:483;:::o;10562:92::-;10619:10;;;;;;;;;;;:19;;:27;10639:6;10619:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10562:92;:::o;1584:246::-;1642:7;1671:1;1666;:6;1662:47;;1696:1;1689:8;;;;1662:47;1719:9;1735:1;1731;:5;;;;:::i;:::-;1719:17;;1764:1;1759;1755;:5;;;;:::i;:::-;:10;1747:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1821:1;1814:8;;;1584:246;;;;;:::o;1838:132::-;1896:7;1923:39;1927:1;1930;1923:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1916:46;;1838:132;;;;:::o;9761:98::-;9818:7;9845:1;9843;:3;9842:9;;9850:1;9842:9;;;9848:1;9842:9;9835:16;;9761:98;;;;:::o;1055:179::-;1113:7;1133:9;1149:1;1145;:5;;;;:::i;:::-;1133:17;;1174:1;1169;:6;;1161:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1225:1;1218:8;;;1055:179;;;;:::o;1242:136::-;1300:7;1327:43;1331:1;1334;1327:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1320:50;;1242:136;;;;:::o;1978:189::-;2064:7;2096:1;2092;:5;2099:12;2084:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2123:9;2139:1;2135;:5;;;;:::i;:::-;2123:17;;2158:1;2151:8;;;1978:189;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:307::-;355:1;365:113;379:6;376:1;373:13;365:113;;;464:1;459:3;455:11;449:18;445:1;440:3;436:11;429:39;401:2;398:1;394:10;389:15;;365:113;;;496:6;493:1;490:13;487:101;;;576:1;567:6;562:3;558:16;551:27;487:101;336:258;287:307;;;:::o;600:102::-;641:6;692:2;688:7;683:2;676:5;672:14;668:28;658:38;;600:102;;;:::o;708:364::-;796:3;824:39;857:5;824:39;:::i;:::-;879:71;943:6;938:3;879:71;:::i;:::-;872:78;;959:52;1004:6;999:3;992:4;985:5;981:16;959:52;:::i;:::-;1036:29;1058:6;1036:29;:::i;:::-;1031:3;1027:39;1020:46;;800:272;708:364;;;;:::o;1078:313::-;1191:4;1229:2;1218:9;1214:18;1206:26;;1278:9;1272:4;1268:20;1264:1;1253:9;1249:17;1242:47;1306:78;1379:4;1370:6;1306:78;:::i;:::-;1298:86;;1078:313;;;;:::o;1397:75::-;1430:6;1463:2;1457:9;1447:19;;1397:75;:::o;1478:117::-;1587:1;1584;1577:12;1601:117;1710:1;1707;1700:12;1724:126;1761:7;1801:42;1794:5;1790:54;1779:65;;1724:126;;;:::o;1856:96::-;1893:7;1922:24;1940:5;1922:24;:::i;:::-;1911:35;;1856:96;;;:::o;1958:122::-;2031:24;2049:5;2031:24;:::i;:::-;2024:5;2021:35;2011:63;;2070:1;2067;2060:12;2011:63;1958:122;:::o;2086:139::-;2132:5;2170:6;2157:20;2148:29;;2186:33;2213:5;2186:33;:::i;:::-;2086:139;;;;:::o;2231:77::-;2268:7;2297:5;2286:16;;2231:77;;;:::o;2314:122::-;2387:24;2405:5;2387:24;:::i;:::-;2380:5;2377:35;2367:63;;2426:1;2423;2416:12;2367:63;2314:122;:::o;2442:139::-;2488:5;2526:6;2513:20;2504:29;;2542:33;2569:5;2542:33;:::i;:::-;2442:139;;;;:::o;2587:474::-;2655:6;2663;2712:2;2700:9;2691:7;2687:23;2683:32;2680:119;;;2718:79;;:::i;:::-;2680:119;2838:1;2863:53;2908:7;2899:6;2888:9;2884:22;2863:53;:::i;:::-;2853:63;;2809:117;2965:2;2991:53;3036:7;3027:6;3016:9;3012:22;2991:53;:::i;:::-;2981:63;;2936:118;2587:474;;;;;:::o;3067:90::-;3101:7;3144:5;3137:13;3130:21;3119:32;;3067:90;;;:::o;3163:109::-;3244:21;3259:5;3244:21;:::i;:::-;3239:3;3232:34;3163:109;;:::o;3278:210::-;3365:4;3403:2;3392:9;3388:18;3380:26;;3416:65;3478:1;3467:9;3463:17;3454:6;3416:65;:::i;:::-;3278:210;;;;:::o;3494:118::-;3581:24;3599:5;3581:24;:::i;:::-;3576:3;3569:37;3494:118;;:::o;3618:222::-;3711:4;3749:2;3738:9;3734:18;3726:26;;3762:71;3830:1;3819:9;3815:17;3806:6;3762:71;:::i;:::-;3618:222;;;;:::o;3846:619::-;3923:6;3931;3939;3988:2;3976:9;3967:7;3963:23;3959:32;3956:119;;;3994:79;;:::i;:::-;3956:119;4114:1;4139:53;4184:7;4175:6;4164:9;4160:22;4139:53;:::i;:::-;4129:63;;4085:117;4241:2;4267:53;4312:7;4303:6;4292:9;4288:22;4267:53;:::i;:::-;4257:63;;4212:118;4369:2;4395:53;4440:7;4431:6;4420:9;4416:22;4395:53;:::i;:::-;4385:63;;4340:118;3846:619;;;;;:::o;4471:86::-;4506:7;4546:4;4539:5;4535:16;4524:27;;4471:86;;;:::o;4563:112::-;4646:22;4662:5;4646:22;:::i;:::-;4641:3;4634:35;4563:112;;:::o;4681:214::-;4770:4;4808:2;4797:9;4793:18;4785:26;;4821:67;4885:1;4874:9;4870:17;4861:6;4821:67;:::i;:::-;4681:214;;;;:::o;4901:117::-;5010:1;5007;5000:12;5024:180;5072:77;5069:1;5062:88;5169:4;5166:1;5159:15;5193:4;5190:1;5183:15;5210:281;5293:27;5315:4;5293:27;:::i;:::-;5285:6;5281:40;5423:6;5411:10;5408:22;5387:18;5375:10;5372:34;5369:62;5366:88;;;5434:18;;:::i;:::-;5366:88;5474:10;5470:2;5463:22;5253:238;5210:281;;:::o;5497:129::-;5531:6;5558:20;;:::i;:::-;5548:30;;5587:33;5615:4;5607:6;5587:33;:::i;:::-;5497:129;;;:::o;5632:311::-;5709:4;5799:18;5791:6;5788:30;5785:56;;;5821:18;;:::i;:::-;5785:56;5871:4;5863:6;5859:17;5851:25;;5931:4;5925;5921:15;5913:23;;5632:311;;;:::o;5949:117::-;6058:1;6055;6048:12;6089:710;6185:5;6210:81;6226:64;6283:6;6226:64;:::i;:::-;6210:81;:::i;:::-;6201:90;;6311:5;6340:6;6333:5;6326:21;6374:4;6367:5;6363:16;6356:23;;6427:4;6419:6;6415:17;6407:6;6403:30;6456:3;6448:6;6445:15;6442:122;;;6475:79;;:::i;:::-;6442:122;6590:6;6573:220;6607:6;6602:3;6599:15;6573:220;;;6682:3;6711:37;6744:3;6732:10;6711:37;:::i;:::-;6706:3;6699:50;6778:4;6773:3;6769:14;6762:21;;6649:144;6633:4;6628:3;6624:14;6617:21;;6573:220;;;6577:21;6191:608;;6089:710;;;;;:::o;6822:370::-;6893:5;6942:3;6935:4;6927:6;6923:17;6919:27;6909:122;;6950:79;;:::i;:::-;6909:122;7067:6;7054:20;7092:94;7182:3;7174:6;7167:4;7159:6;7155:17;7092:94;:::i;:::-;7083:103;;6899:293;6822:370;;;;:::o;7198:539::-;7282:6;7331:2;7319:9;7310:7;7306:23;7302:32;7299:119;;;7337:79;;:::i;:::-;7299:119;7485:1;7474:9;7470:17;7457:31;7515:18;7507:6;7504:30;7501:117;;;7537:79;;:::i;:::-;7501:117;7642:78;7712:7;7703:6;7692:9;7688:22;7642:78;:::i;:::-;7632:88;;7428:302;7198:539;;;;:::o;7743:329::-;7802:6;7851:2;7839:9;7830:7;7826:23;7822:32;7819:119;;;7857:79;;:::i;:::-;7819:119;7977:1;8002:53;8047:7;8038:6;8027:9;8023:22;8002:53;:::i;:::-;7992:63;;7948:117;7743:329;;;;:::o;8078:118::-;8165:24;8183:5;8165:24;:::i;:::-;8160:3;8153:37;8078:118;;:::o;8202:222::-;8295:4;8333:2;8322:9;8318:18;8310:26;;8346:71;8414:1;8403:9;8399:17;8390:6;8346:71;:::i;:::-;8202:222;;;;:::o;8430:474::-;8498:6;8506;8555:2;8543:9;8534:7;8530:23;8526:32;8523:119;;;8561:79;;:::i;:::-;8523:119;8681:1;8706:53;8751:7;8742:6;8731:9;8727:22;8706:53;:::i;:::-;8696:63;;8652:117;8808:2;8834:53;8879:7;8870:6;8859:9;8855:22;8834:53;:::i;:::-;8824:63;;8779:118;8430:474;;;;;:::o;8910:329::-;8969:6;9018:2;9006:9;8997:7;8993:23;8989:32;8986:119;;;9024:79;;:::i;:::-;8986:119;9144:1;9169:53;9214:7;9205:6;9194:9;9190:22;9169:53;:::i;:::-;9159:63;;9115:117;8910:329;;;;:::o;9245:180::-;9293:77;9290:1;9283:88;9390:4;9387:1;9380:15;9414:4;9411:1;9404:15;9431:102;9473:8;9520:5;9517:1;9513:13;9492:34;;9431:102;;;:::o;9539:848::-;9600:5;9607:4;9631:6;9622:15;;9655:5;9646:14;;9669:712;9690:1;9680:8;9677:15;9669:712;;;9785:4;9780:3;9776:14;9770:4;9767:24;9764:50;;;9794:18;;:::i;:::-;9764:50;9844:1;9834:8;9830:16;9827:451;;;10259:4;10252:5;10248:16;10239:25;;9827:451;10309:4;10303;10299:15;10291:23;;10339:32;10362:8;10339:32;:::i;:::-;10327:44;;9669:712;;;9539:848;;;;;;;:::o;10393:1073::-;10447:5;10638:8;10628:40;;10659:1;10650:10;;10661:5;;10628:40;10687:4;10677:36;;10704:1;10695:10;;10706:5;;10677:36;10773:4;10821:1;10816:27;;;;10857:1;10852:191;;;;10766:277;;10816:27;10834:1;10825:10;;10836:5;;;10852:191;10897:3;10887:8;10884:17;10881:43;;;10904:18;;:::i;:::-;10881:43;10953:8;10950:1;10946:16;10937:25;;10988:3;10981:5;10978:14;10975:40;;;10995:18;;:::i;:::-;10975:40;11028:5;;;10766:277;;11152:2;11142:8;11139:16;11133:3;11127:4;11124:13;11120:36;11102:2;11092:8;11089:16;11084:2;11078:4;11075:12;11071:35;11055:111;11052:246;;;11208:8;11202:4;11198:19;11189:28;;11243:3;11236:5;11233:14;11230:40;;;11250:18;;:::i;:::-;11230:40;11283:5;;11052:246;11323:42;11361:3;11351:8;11345:4;11342:1;11323:42;:::i;:::-;11308:57;;;;11397:4;11392:3;11388:14;11381:5;11378:25;11375:51;;;11406:18;;:::i;:::-;11375:51;11455:4;11448:5;11444:16;11435:25;;10393:1073;;;;;;:::o;11472:281::-;11530:5;11554:23;11572:4;11554:23;:::i;:::-;11546:31;;11598:25;11614:8;11598:25;:::i;:::-;11586:37;;11642:104;11679:66;11669:8;11663:4;11642:104;:::i;:::-;11633:113;;11472:281;;;;:::o;11759:348::-;11799:7;11822:20;11840:1;11822:20;:::i;:::-;11817:25;;11856:20;11874:1;11856:20;:::i;:::-;11851:25;;12044:1;11976:66;11972:74;11969:1;11966:81;11961:1;11954:9;11947:17;11943:105;11940:131;;;12051:18;;:::i;:::-;11940:131;12099:1;12096;12092:9;12081:20;;11759:348;;;;:::o;12113:182::-;12253:34;12249:1;12241:6;12237:14;12230:58;12113:182;:::o;12301:366::-;12443:3;12464:67;12528:2;12523:3;12464:67;:::i;:::-;12457:74;;12540:93;12629:3;12540:93;:::i;:::-;12658:2;12653:3;12649:12;12642:19;;12301:366;;;:::o;12673:419::-;12839:4;12877:2;12866:9;12862:18;12854:26;;12926:9;12920:4;12916:20;12912:1;12901:9;12897:17;12890:47;12954:131;13080:4;12954:131;:::i;:::-;12946:139;;12673:419;;;:::o;13098:180::-;13146:77;13143:1;13136:88;13243:4;13240:1;13233:15;13267:4;13264:1;13257:15;13284:233;13323:3;13346:24;13364:5;13346:24;:::i;:::-;13337:33;;13392:66;13385:5;13382:77;13379:103;;13462:18;;:::i;:::-;13379:103;13509:1;13502:5;13498:13;13491:20;;13284:233;;;:::o;13523:173::-;13663:25;13659:1;13651:6;13647:14;13640:49;13523:173;:::o;13702:366::-;13844:3;13865:67;13929:2;13924:3;13865:67;:::i;:::-;13858:74;;13941:93;14030:3;13941:93;:::i;:::-;14059:2;14054:3;14050:12;14043:19;;13702:366;;;:::o;14074:419::-;14240:4;14278:2;14267:9;14263:18;14255:26;;14327:9;14321:4;14317:20;14313:1;14302:9;14298:17;14291:47;14355:131;14481:4;14355:131;:::i;:::-;14347:139;;14074:419;;;:::o;14499:143::-;14556:5;14587:6;14581:13;14572:22;;14603:33;14630:5;14603:33;:::i;:::-;14499:143;;;;:::o;14648:351::-;14718:6;14767:2;14755:9;14746:7;14742:23;14738:32;14735:119;;;14773:79;;:::i;:::-;14735:119;14893:1;14918:64;14974:7;14965:6;14954:9;14950:22;14918:64;:::i;:::-;14908:74;;14864:128;14648:351;;;;:::o;15005:332::-;15126:4;15164:2;15153:9;15149:18;15141:26;;15177:71;15245:1;15234:9;15230:17;15221:6;15177:71;:::i;:::-;15258:72;15326:2;15315:9;15311:18;15302:6;15258:72;:::i;:::-;15005:332;;;;;:::o;15343:85::-;15388:7;15417:5;15406:16;;15343:85;;;:::o;15434:60::-;15462:3;15483:5;15476:12;;15434:60;;;:::o;15500:158::-;15558:9;15591:61;15609:42;15618:32;15644:5;15618:32;:::i;:::-;15609:42;:::i;:::-;15591:61;:::i;:::-;15578:74;;15500:158;;;:::o;15664:147::-;15759:45;15798:5;15759:45;:::i;:::-;15754:3;15747:58;15664:147;;:::o;15817:807::-;16066:4;16104:3;16093:9;16089:19;16081:27;;16118:71;16186:1;16175:9;16171:17;16162:6;16118:71;:::i;:::-;16199:72;16267:2;16256:9;16252:18;16243:6;16199:72;:::i;:::-;16281:80;16357:2;16346:9;16342:18;16333:6;16281:80;:::i;:::-;16371;16447:2;16436:9;16432:18;16423:6;16371:80;:::i;:::-;16461:73;16529:3;16518:9;16514:19;16505:6;16461:73;:::i;:::-;16544;16612:3;16601:9;16597:19;16588:6;16544:73;:::i;:::-;15817:807;;;;;;;;;:::o;16630:143::-;16687:5;16718:6;16712:13;16703:22;;16734:33;16761:5;16734:33;:::i;:::-;16630:143;;;;:::o;16779:663::-;16867:6;16875;16883;16932:2;16920:9;16911:7;16907:23;16903:32;16900:119;;;16938:79;;:::i;:::-;16900:119;17058:1;17083:64;17139:7;17130:6;17119:9;17115:22;17083:64;:::i;:::-;17073:74;;17029:128;17196:2;17222:64;17278:7;17269:6;17258:9;17254:22;17222:64;:::i;:::-;17212:74;;17167:129;17335:2;17361:64;17417:7;17408:6;17397:9;17393:22;17361:64;:::i;:::-;17351:74;;17306:129;16779:663;;;;;:::o;17448:332::-;17569:4;17607:2;17596:9;17592:18;17584:26;;17620:71;17688:1;17677:9;17673:17;17664:6;17620:71;:::i;:::-;17701:72;17769:2;17758:9;17754:18;17745:6;17701:72;:::i;:::-;17448:332;;;;;:::o;17786:116::-;17856:21;17871:5;17856:21;:::i;:::-;17849:5;17846:32;17836:60;;17892:1;17889;17882:12;17836:60;17786:116;:::o;17908:137::-;17962:5;17993:6;17987:13;17978:22;;18009:30;18033:5;18009:30;:::i;:::-;17908:137;;;;:::o;18051:345::-;18118:6;18167:2;18155:9;18146:7;18142:23;18138:32;18135:119;;;18173:79;;:::i;:::-;18135:119;18293:1;18318:61;18371:7;18362:6;18351:9;18347:22;18318:61;:::i;:::-;18308:71;;18264:125;18051:345;;;;:::o;18402:223::-;18542:34;18538:1;18530:6;18526:14;18519:58;18611:6;18606:2;18598:6;18594:15;18587:31;18402:223;:::o;18631:366::-;18773:3;18794:67;18858:2;18853:3;18794:67;:::i;:::-;18787:74;;18870:93;18959:3;18870:93;:::i;:::-;18988:2;18983:3;18979:12;18972:19;;18631:366;;;:::o;19003:419::-;19169:4;19207:2;19196:9;19192:18;19184:26;;19256:9;19250:4;19246:20;19242:1;19231:9;19227:17;19220:47;19284:131;19410:4;19284:131;:::i;:::-;19276:139;;19003:419;;;:::o;19428:221::-;19568:34;19564:1;19556:6;19552:14;19545:58;19637:4;19632:2;19624:6;19620:15;19613:29;19428:221;:::o;19655:366::-;19797:3;19818:67;19882:2;19877:3;19818:67;:::i;:::-;19811:74;;19894:93;19983:3;19894:93;:::i;:::-;20012:2;20007:3;20003:12;19996:19;;19655:366;;;:::o;20027:419::-;20193:4;20231:2;20220:9;20216:18;20208:26;;20280:9;20274:4;20270:20;20266:1;20255:9;20251:17;20244:47;20308:131;20434:4;20308:131;:::i;:::-;20300:139;;20027:419;;;:::o;20452:224::-;20592:34;20588:1;20580:6;20576:14;20569:58;20661:7;20656:2;20648:6;20644:15;20637:32;20452:224;:::o;20682:366::-;20824:3;20845:67;20909:2;20904:3;20845:67;:::i;:::-;20838:74;;20921:93;21010:3;20921:93;:::i;:::-;21039:2;21034:3;21030:12;21023:19;;20682:366;;;:::o;21054:419::-;21220:4;21258:2;21247:9;21243:18;21235:26;;21307:9;21301:4;21297:20;21293:1;21282:9;21278:17;21271:47;21335:131;21461:4;21335:131;:::i;:::-;21327:139;;21054:419;;;:::o;21479:222::-;21619:34;21615:1;21607:6;21603:14;21596:58;21688:5;21683:2;21675:6;21671:15;21664:30;21479:222;:::o;21707:366::-;21849:3;21870:67;21934:2;21929:3;21870:67;:::i;:::-;21863:74;;21946:93;22035:3;21946:93;:::i;:::-;22064:2;22059:3;22055:12;22048:19;;21707:366;;;:::o;22079:419::-;22245:4;22283:2;22272:9;22268:18;22260:26;;22332:9;22326:4;22322:20;22318:1;22307:9;22303:17;22296:47;22360:131;22486:4;22360:131;:::i;:::-;22352:139;;22079:419;;;:::o;22504:228::-;22644:34;22640:1;22632:6;22628:14;22621:58;22713:11;22708:2;22700:6;22696:15;22689:36;22504:228;:::o;22738:366::-;22880:3;22901:67;22965:2;22960:3;22901:67;:::i;:::-;22894:74;;22977:93;23066:3;22977:93;:::i;:::-;23095:2;23090:3;23086:12;23079:19;;22738:366;;;:::o;23110:419::-;23276:4;23314:2;23303:9;23299:18;23291:26;;23363:9;23357:4;23353:20;23349:1;23338:9;23334:17;23327:47;23391:131;23517:4;23391:131;:::i;:::-;23383:139;;23110:419;;;:::o;23535:297::-;23675:34;23671:1;23663:6;23659:14;23652:58;23744:34;23739:2;23731:6;23727:15;23720:59;23813:11;23808:2;23800:6;23796:15;23789:36;23535:297;:::o;23838:366::-;23980:3;24001:67;24065:2;24060:3;24001:67;:::i;:::-;23994:74;;24077:93;24166:3;24077:93;:::i;:::-;24195:2;24190:3;24186:12;24179:19;;23838:366;;;:::o;24210:419::-;24376:4;24414:2;24403:9;24399:18;24391:26;;24463:9;24457:4;24453:20;24449:1;24438:9;24434:17;24427:47;24491:131;24617:4;24491:131;:::i;:::-;24483:139;;24210:419;;;:::o;24635:175::-;24775:27;24771:1;24763:6;24759:14;24752:51;24635:175;:::o;24816:366::-;24958:3;24979:67;25043:2;25038:3;24979:67;:::i;:::-;24972:74;;25055:93;25144:3;25055:93;:::i;:::-;25173:2;25168:3;25164:12;25157:19;;24816:366;;;:::o;25188:419::-;25354:4;25392:2;25381:9;25377:18;25369:26;;25441:9;25435:4;25431:20;25427:1;25416:9;25412:17;25405:47;25469:131;25595:4;25469:131;:::i;:::-;25461:139;;25188:419;;;:::o;25613:305::-;25653:3;25672:20;25690:1;25672:20;:::i;:::-;25667:25;;25706:20;25724:1;25706:20;:::i;:::-;25701:25;;25860:1;25792:66;25788:74;25785:1;25782:81;25779:107;;;25866:18;;:::i;:::-;25779:107;25910:1;25907;25903:9;25896:16;;25613:305;;;;:::o;25924:176::-;26064:28;26060:1;26052:6;26048:14;26041:52;25924:176;:::o;26106:366::-;26248:3;26269:67;26333:2;26328:3;26269:67;:::i;:::-;26262:74;;26345:93;26434:3;26345:93;:::i;:::-;26463:2;26458:3;26454:12;26447:19;;26106:366;;;:::o;26478:419::-;26644:4;26682:2;26671:9;26667:18;26659:26;;26731:9;26725:4;26721:20;26717:1;26706:9;26702:17;26695:47;26759:131;26885:4;26759:131;:::i;:::-;26751:139;;26478:419;;;:::o;26903:191::-;26943:4;26963:20;26981:1;26963:20;:::i;:::-;26958:25;;26997:20;27015:1;26997:20;:::i;:::-;26992:25;;27036:1;27033;27030:8;27027:34;;;27041:18;;:::i;:::-;27027:34;27086:1;27083;27079:9;27071:17;;26903:191;;;;:::o;27100:114::-;27167:6;27201:5;27195:12;27185:22;;27100:114;;;:::o;27220:184::-;27319:11;27353:6;27348:3;27341:19;27393:4;27388:3;27384:14;27369:29;;27220:184;;;;:::o;27410:132::-;27477:4;27500:3;27492:11;;27530:4;27525:3;27521:14;27513:22;;27410:132;;;:::o;27548:108::-;27625:24;27643:5;27625:24;:::i;:::-;27620:3;27613:37;27548:108;;:::o;27662:179::-;27731:10;27752:46;27794:3;27786:6;27752:46;:::i;:::-;27830:4;27825:3;27821:14;27807:28;;27662:179;;;;:::o;27847:113::-;27917:4;27949;27944:3;27940:14;27932:22;;27847:113;;;:::o;27996:732::-;28115:3;28144:54;28192:5;28144:54;:::i;:::-;28214:86;28293:6;28288:3;28214:86;:::i;:::-;28207:93;;28324:56;28374:5;28324:56;:::i;:::-;28403:7;28434:1;28419:284;28444:6;28441:1;28438:13;28419:284;;;28520:6;28514:13;28547:63;28606:3;28591:13;28547:63;:::i;:::-;28540:70;;28633:60;28686:6;28633:60;:::i;:::-;28623:70;;28479:224;28466:1;28463;28459:9;28454:14;;28419:284;;;28423:14;28719:3;28712:10;;28120:608;;;27996:732;;;;:::o;28734:831::-;28997:4;29035:3;29024:9;29020:19;29012:27;;29049:71;29117:1;29106:9;29102:17;29093:6;29049:71;:::i;:::-;29130:80;29206:2;29195:9;29191:18;29182:6;29130:80;:::i;:::-;29257:9;29251:4;29247:20;29242:2;29231:9;29227:18;29220:48;29285:108;29388:4;29379:6;29285:108;:::i;:::-;29277:116;;29403:72;29471:2;29460:9;29456:18;29447:6;29403:72;:::i;:::-;29485:73;29553:3;29542:9;29538:19;29529:6;29485:73;:::i;:::-;28734:831;;;;;;;;:::o;29571:180::-;29619:77;29616:1;29609:88;29716:4;29713:1;29706:15;29740:4;29737:1;29730:15;29757:185;29797:1;29814:20;29832:1;29814:20;:::i;:::-;29809:25;;29848:20;29866:1;29848:20;:::i;:::-;29843:25;;29887:1;29877:35;;29892:18;;:::i;:::-;29877:35;29934:1;29931;29927:9;29922:14;;29757:185;;;;:::o;29948:220::-;30088:34;30084:1;30076:6;30072:14;30065:58;30157:3;30152:2;30144:6;30140:15;30133:28;29948:220;:::o;30174:366::-;30316:3;30337:67;30401:2;30396:3;30337:67;:::i;:::-;30330:74;;30413:93;30502:3;30413:93;:::i;:::-;30531:2;30526:3;30522:12;30515:19;;30174:366;;;:::o;30546:419::-;30712:4;30750:2;30739:9;30735:18;30727:26;;30799:9;30793:4;30789:20;30785:1;30774:9;30770:17;30763:47;30827:131;30953:4;30827:131;:::i;:::-;30819:139;;30546:419;;;:::o;30971:177::-;31111:29;31107:1;31099:6;31095:14;31088:53;30971:177;:::o;31154:366::-;31296:3;31317:67;31381:2;31376:3;31317:67;:::i;:::-;31310:74;;31393:93;31482:3;31393:93;:::i;:::-;31511:2;31506:3;31502:12;31495:19;;31154:366;;;:::o;31526:419::-;31692:4;31730:2;31719:9;31715:18;31707:26;;31779:9;31773:4;31769:20;31765:1;31754:9;31750:17;31743:47;31807:131;31933:4;31807:131;:::i;:::-;31799:139;;31526:419;;;:::o

Swarm Source

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