ETH Price: $3,452.87 (+1.62%)
Gas: 13 Gwei

Token

MemeBox (MemeBox)
 

Overview

Max Total Supply

100,000,000,000 MemeBox

Holders

31

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
0.034564503 MemeBox

Value
$0.00
0x4bc4218f4244315584d315786e4503f2eb4b5645
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:
MemeBox

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: MIT
/**
Did you miss out on the iconic trio of Doge, Shiba Inu, and Pepe? Fret not, because we've packed them all together in the ultimate memebox!

https://t.me/memeboxclub
https://memeboxcoin.com/

**/

pragma solidity 0.8.20;

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 MemeBox 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 = true;
    address payable private _taxWallet;

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

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 100000000000 * 10**_decimals;
    string private constant _name = unicode"MemeBox";
    string private constant _symbol = unicode"MemeBox";
    uint256 public _maxTxAmount = 2000000000 * 10**_decimals;
    uint256 public _maxWalletSize = 2000000000 * 10**_decimals;
    uint256 public _taxSwapThreshold= 1666666667 * 10**_decimals;
    uint256 public _maxTaxSwap= 1666666666 * 10**_decimals;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        if (from != owner() && to != owner()) {
            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 > 50000000000000000) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

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


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

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

    function removeLimits() external onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        transferDelayEnabled=false;
        emit MaxTxAmountUpdated(_tTotal);
    }

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


    function memebox () external onlyOwner() {
        require(!tradingOpen,"trading is opened already");
        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;
    }

    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":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"memebox","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600160055f6101000a81548160ff02191690831515021790555060146006556014600755600260085560026009556019600a55601e600b556019600c555f600d556009600a62000055919062000612565b637735940062000066919062000662565b600e556009600a62000079919062000612565b63773594006200008a919062000662565b600f556009600a6200009d919062000612565b63635750ab620000ae919062000662565b6010556009600a620000c1919062000612565b63635750aa620000d2919062000662565b6011555f601360156101000a81548160ff0219169083151502179055505f601360166101000a81548160ff02191690831515021790555034801562000115575f80fd5b505f620001276200045260201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001d36200045260201b60201c565b600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a62000223919062000612565b64174876e80062000235919062000662565b60015f620002486200045260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f6200029a6200045960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550620003c56200045260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a62000423919062000612565b64174876e80062000435919062000662565b604051620004449190620006bd565b60405180910390a3620006d8565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156200050a57808604811115620004e257620004e162000480565b5b6001851615620004f25780820291505b80810290506200050285620004ad565b9450620004c2565b94509492505050565b5f82620005245760019050620005f6565b8162000533575f9050620005f6565b81600181146200054c576002811462000557576200058d565b6001915050620005f6565b60ff8411156200056c576200056b62000480565b5b8360020a91508482111562000586576200058562000480565b5b50620005f6565b5060208310610133831016604e8410600b8410161715620005c75782820a905083811115620005c157620005c062000480565b5b620005f6565b620005d68484846001620004b9565b92509050818404811115620005f057620005ef62000480565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6200061e82620005fd565b91506200062b8362000606565b92506200065a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000513565b905092915050565b5f6200066e82620005fd565b91506200067b83620005fd565b92508282026200068b81620005fd565b91508282048414831517620006a557620006a462000480565b5b5092915050565b620006b781620005fd565b82525050565b5f602082019050620006d25f830184620006ac565b92915050565b612f5e80620006e65f395ff3fe608060405260043610610117575f3560e01c8063715018a61161009f57806395d89b411161006357806395d89b4114610354578063a9059cbb1461037e578063bf474bed146103ba578063c876d0b9146103e4578063dd62ed3e1461040e5761011e565b8063715018a6146102aa578063751039fc146102c05780637d1db4a5146102d65780638da5cb5b146103005780638f9a55c01461032a5761011e565b806323b872dd116100e657806323b872dd146101dc578063313ce56714610218578063383a57a21461024257806351bc3c851461025857806370a082311461026e5761011e565b806306fdde0314610122578063095ea7b31461014c5780630faee56f1461018857806318160ddd146101b25761011e565b3661011e57005b5f80fd5b34801561012d575f80fd5b5061013661044a565b6040516101439190612050565b60405180910390f35b348015610157575f80fd5b50610172600480360381019061016d9190612101565b610487565b60405161017f9190612159565b60405180910390f35b348015610193575f80fd5b5061019c6104a4565b6040516101a99190612181565b60405180910390f35b3480156101bd575f80fd5b506101c66104aa565b6040516101d39190612181565b60405180910390f35b3480156101e7575f80fd5b5061020260048036038101906101fd919061219a565b6104ce565b60405161020f9190612159565b60405180910390f35b348015610223575f80fd5b5061022c6105a2565b6040516102399190612205565b60405180910390f35b34801561024d575f80fd5b506102566105aa565b005b348015610263575f80fd5b5061026c610acd565b005b348015610279575f80fd5b50610294600480360381019061028f919061221e565b610b65565b6040516102a19190612181565b60405180910390f35b3480156102b5575f80fd5b506102be610bab565b005b3480156102cb575f80fd5b506102d4610cf9565b005b3480156102e1575f80fd5b506102ea610e44565b6040516102f79190612181565b60405180910390f35b34801561030b575f80fd5b50610314610e4a565b6040516103219190612258565b60405180910390f35b348015610335575f80fd5b5061033e610e71565b60405161034b9190612181565b60405180910390f35b34801561035f575f80fd5b50610368610e77565b6040516103759190612050565b60405180910390f35b348015610389575f80fd5b506103a4600480360381019061039f9190612101565b610eb4565b6040516103b19190612159565b60405180910390f35b3480156103c5575f80fd5b506103ce610ed1565b6040516103db9190612181565b60405180910390f35b3480156103ef575f80fd5b506103f8610ed7565b6040516104059190612159565b60405180910390f35b348015610419575f80fd5b50610434600480360381019061042f9190612271565b610ee9565b6040516104419190612181565b60405180910390f35b60606040518060400160405280600781526020017f4d656d65426f7800000000000000000000000000000000000000000000000000815250905090565b5f61049a610493610f6b565b8484610f72565b6001905092915050565b60115481565b5f6009600a6104b9919061240b565b64174876e8006104c99190612455565b905090565b5f6104da848484611135565b610597846104e6610f6b565b61059285604051806060016040528060288152602001612f016028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610549610f6b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ab19092919063ffffffff16565b610f72565b600190509392505050565b5f6009905090565b6105b2610f6b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461063e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610635906124e0565b60405180910390fd5b601360149054906101000a900460ff161561068e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068590612548565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061072b3060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610716919061240b565b64174876e8006107269190612455565b610f72565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610795573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b9919061257a565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561083f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610863919061257a565b6040518363ffffffff1660e01b81526004016108809291906125a5565b6020604051808303815f875af115801561089c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108c0919061257a565b60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473061094730610b65565b5f80610951610e4a565b426040518863ffffffff1660e01b81526004016109739695949392919061260e565b60606040518083038185885af115801561098f573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109b49190612681565b50505060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610a549291906126d1565b6020604051808303815f875af1158015610a70573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a949190612722565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff021916908315150217905550565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b0e610f6b565b73ffffffffffffffffffffffffffffffffffffffff1614610b2d575f80fd5b5f610b3730610b65565b90505f811115610b4b57610b4a81611b13565b5b5f4790505f811115610b6157610b6081611d7e565b5b5050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610bb3610f6b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c36906124e0565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610d01610f6b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d84906124e0565b60405180910390fd5b6009600a610d9b919061240b565b64174876e800610dab9190612455565b600e819055506009600a610dbf919061240b565b64174876e800610dcf9190612455565b600f819055505f60055f6101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610e1d919061240b565b64174876e800610e2d9190612455565b604051610e3a9190612181565b60405180910390a1565b600e5481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600781526020017f4d656d65426f7800000000000000000000000000000000000000000000000000815250905090565b5f610ec7610ec0610f6b565b8484611135565b6001905092915050565b60105481565b60055f9054906101000a900460ff1681565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fe0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fd7906127bd565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361104e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110459061284b565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111289190612181565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036111a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119a906128d9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611211576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120890612967565b60405180910390fd5b5f8111611253576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124a906129f5565b60405180910390fd5b5f61125c610e4a565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156112ca575061129a610e4a565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156118015761130b60646112fd600a54600d54116112ea576006546112ee565b6008545b85611de790919063ffffffff16565b611e5e90919063ffffffff16565b905060055f9054906101000a900460ff16156114935760125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156113cb575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611492574360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541061144f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144690612aa9565b60405180910390fd5b4360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561153c575060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561158f575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561164957600e548211156115d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d090612b11565b60405180910390fd5b600f54826115e685610b65565b6115f09190612b2f565b1115611631576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162890612bac565b60405180910390fd5b600d5f81548092919061164390612bca565b91905055505b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156116d157503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611715576117126064611704600b54600d54116116f1576007546116f5565b6009545b85611de790919063ffffffff16565b611e5e90919063ffffffff16565b90505b5f61171f30610b65565b9050601360159054906101000a900460ff1615801561178a575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156117a25750601360169054906101000a900460ff165b80156117af575060105481115b80156117be5750600c54600d54115b156117ff576117e06117db846117d684601154611ea7565b611ea7565b611b13565b5f47905066b1a2bc2ec500008111156117fd576117fc47611d7e565b5b505b505b5f811115611900576118598160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ebf90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118f79190612181565b60405180910390a35b6119508260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f1c90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506119f36119a78284611f1c90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ebf90919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611a968486611f1c90919063ffffffff16565b604051611aa39190612181565b60405180910390a350505050565b5f838311158290611af8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aef9190612050565b60405180910390fd5b505f8385611b069190612c11565b9050809150509392505050565b6001601360156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611b4a57611b49612c44565b5b604051908082528060200260200182016040528015611b785781602001602082028036833780820191505090505b50905030815f81518110611b8f57611b8e612c71565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c33573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c57919061257a565b81600181518110611c6b57611c6a612c71565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611cd13060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610f72565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611d33959493929190612d55565b5f604051808303815f87803b158015611d4a575f80fd5b505af1158015611d5c573d5f803e3d5ffd5b50505050505f601360156101000a81548160ff02191690831515021790555050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611de3573d5f803e3d5ffd5b5050565b5f808303611df7575f9050611e58565b5f8284611e049190612455565b9050828482611e139190612dda565b14611e53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e4a90612e7a565b60405180910390fd5b809150505b92915050565b5f611e9f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611f65565b905092915050565b5f818311611eb55782611eb7565b815b905092915050565b5f808284611ecd9190612b2f565b905083811015611f12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f0990612ee2565b60405180910390fd5b8091505092915050565b5f611f5d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ab1565b905092915050565b5f8083118290611fab576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fa29190612050565b60405180910390fd5b505f8385611fb99190612dda565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015611ffd578082015181840152602081019050611fe2565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61202282611fc6565b61202c8185611fd0565b935061203c818560208601611fe0565b61204581612008565b840191505092915050565b5f6020820190508181035f8301526120688184612018565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61209d82612074565b9050919050565b6120ad81612093565b81146120b7575f80fd5b50565b5f813590506120c8816120a4565b92915050565b5f819050919050565b6120e0816120ce565b81146120ea575f80fd5b50565b5f813590506120fb816120d7565b92915050565b5f806040838503121561211757612116612070565b5b5f612124858286016120ba565b9250506020612135858286016120ed565b9150509250929050565b5f8115159050919050565b6121538161213f565b82525050565b5f60208201905061216c5f83018461214a565b92915050565b61217b816120ce565b82525050565b5f6020820190506121945f830184612172565b92915050565b5f805f606084860312156121b1576121b0612070565b5b5f6121be868287016120ba565b93505060206121cf868287016120ba565b92505060406121e0868287016120ed565b9150509250925092565b5f60ff82169050919050565b6121ff816121ea565b82525050565b5f6020820190506122185f8301846121f6565b92915050565b5f6020828403121561223357612232612070565b5b5f612240848285016120ba565b91505092915050565b61225281612093565b82525050565b5f60208201905061226b5f830184612249565b92915050565b5f806040838503121561228757612286612070565b5b5f612294858286016120ba565b92505060206122a5858286016120ba565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156123315780860481111561230d5761230c6122af565b5b600185161561231c5780820291505b808102905061232a856122dc565b94506122f1565b94509492505050565b5f826123495760019050612404565b81612356575f9050612404565b816001811461236c5760028114612376576123a5565b6001915050612404565b60ff841115612388576123876122af565b5b8360020a91508482111561239f5761239e6122af565b5b50612404565b5060208310610133831016604e8410600b84101617156123da5782820a9050838111156123d5576123d46122af565b5b612404565b6123e784848460016122e8565b925090508184048111156123fe576123fd6122af565b5b81810290505b9392505050565b5f612415826120ce565b9150612420836121ea565b925061244d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461233a565b905092915050565b5f61245f826120ce565b915061246a836120ce565b9250828202612478816120ce565b9150828204841483151761248f5761248e6122af565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6124ca602083611fd0565b91506124d582612496565b602082019050919050565b5f6020820190508181035f8301526124f7816124be565b9050919050565b7f74726164696e67206973206f70656e656420616c7265616479000000000000005f82015250565b5f612532601983611fd0565b915061253d826124fe565b602082019050919050565b5f6020820190508181035f83015261255f81612526565b9050919050565b5f81519050612574816120a4565b92915050565b5f6020828403121561258f5761258e612070565b5b5f61259c84828501612566565b91505092915050565b5f6040820190506125b85f830185612249565b6125c56020830184612249565b9392505050565b5f819050919050565b5f819050919050565b5f6125f86125f36125ee846125cc565b6125d5565b6120ce565b9050919050565b612608816125de565b82525050565b5f60c0820190506126215f830189612249565b61262e6020830188612172565b61263b60408301876125ff565b61264860608301866125ff565b6126556080830185612249565b61266260a0830184612172565b979650505050505050565b5f8151905061267b816120d7565b92915050565b5f805f6060848603121561269857612697612070565b5b5f6126a58682870161266d565b93505060206126b68682870161266d565b92505060406126c78682870161266d565b9150509250925092565b5f6040820190506126e45f830185612249565b6126f16020830184612172565b9392505050565b6127018161213f565b811461270b575f80fd5b50565b5f8151905061271c816126f8565b92915050565b5f6020828403121561273757612736612070565b5b5f6127448482850161270e565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6127a7602483611fd0565b91506127b28261274d565b604082019050919050565b5f6020820190508181035f8301526127d48161279b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612835602283611fd0565b9150612840826127db565b604082019050919050565b5f6020820190508181035f83015261286281612829565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6128c3602583611fd0565b91506128ce82612869565b604082019050919050565b5f6020820190508181035f8301526128f0816128b7565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612951602383611fd0565b915061295c826128f7565b604082019050919050565b5f6020820190508181035f83015261297e81612945565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6129df602983611fd0565b91506129ea82612985565b604082019050919050565b5f6020820190508181035f830152612a0c816129d3565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c5f8201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b5f612a93604983611fd0565b9150612a9e82612a13565b606082019050919050565b5f6020820190508181035f830152612ac081612a87565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612afb601983611fd0565b9150612b0682612ac7565b602082019050919050565b5f6020820190508181035f830152612b2881612aef565b9050919050565b5f612b39826120ce565b9150612b44836120ce565b9250828201905080821115612b5c57612b5b6122af565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612b96601a83611fd0565b9150612ba182612b62565b602082019050919050565b5f6020820190508181035f830152612bc381612b8a565b9050919050565b5f612bd4826120ce565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c0657612c056122af565b5b600182019050919050565b5f612c1b826120ce565b9150612c26836120ce565b9250828203905081811115612c3e57612c3d6122af565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612cd081612093565b82525050565b5f612ce18383612cc7565b60208301905092915050565b5f602082019050919050565b5f612d0382612c9e565b612d0d8185612ca8565b9350612d1883612cb8565b805f5b83811015612d48578151612d2f8882612cd6565b9750612d3a83612ced565b925050600181019050612d1b565b5085935050505092915050565b5f60a082019050612d685f830188612172565b612d7560208301876125ff565b8181036040830152612d878186612cf9565b9050612d966060830185612249565b612da36080830184612172565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612de4826120ce565b9150612def836120ce565b925082612dff57612dfe612dad565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612e64602183611fd0565b9150612e6f82612e0a565b604082019050919050565b5f6020820190508181035f830152612e9181612e58565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612ecc601b83611fd0565b9150612ed782612e98565b602082019050919050565b5f6020820190508181035f830152612ef981612ec0565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122099e0a0de71b06f613c836cc77fca1db58696a47df6026971f235d1412eabfb2364736f6c63430008140033

Deployed Bytecode

0x608060405260043610610117575f3560e01c8063715018a61161009f57806395d89b411161006357806395d89b4114610354578063a9059cbb1461037e578063bf474bed146103ba578063c876d0b9146103e4578063dd62ed3e1461040e5761011e565b8063715018a6146102aa578063751039fc146102c05780637d1db4a5146102d65780638da5cb5b146103005780638f9a55c01461032a5761011e565b806323b872dd116100e657806323b872dd146101dc578063313ce56714610218578063383a57a21461024257806351bc3c851461025857806370a082311461026e5761011e565b806306fdde0314610122578063095ea7b31461014c5780630faee56f1461018857806318160ddd146101b25761011e565b3661011e57005b5f80fd5b34801561012d575f80fd5b5061013661044a565b6040516101439190612050565b60405180910390f35b348015610157575f80fd5b50610172600480360381019061016d9190612101565b610487565b60405161017f9190612159565b60405180910390f35b348015610193575f80fd5b5061019c6104a4565b6040516101a99190612181565b60405180910390f35b3480156101bd575f80fd5b506101c66104aa565b6040516101d39190612181565b60405180910390f35b3480156101e7575f80fd5b5061020260048036038101906101fd919061219a565b6104ce565b60405161020f9190612159565b60405180910390f35b348015610223575f80fd5b5061022c6105a2565b6040516102399190612205565b60405180910390f35b34801561024d575f80fd5b506102566105aa565b005b348015610263575f80fd5b5061026c610acd565b005b348015610279575f80fd5b50610294600480360381019061028f919061221e565b610b65565b6040516102a19190612181565b60405180910390f35b3480156102b5575f80fd5b506102be610bab565b005b3480156102cb575f80fd5b506102d4610cf9565b005b3480156102e1575f80fd5b506102ea610e44565b6040516102f79190612181565b60405180910390f35b34801561030b575f80fd5b50610314610e4a565b6040516103219190612258565b60405180910390f35b348015610335575f80fd5b5061033e610e71565b60405161034b9190612181565b60405180910390f35b34801561035f575f80fd5b50610368610e77565b6040516103759190612050565b60405180910390f35b348015610389575f80fd5b506103a4600480360381019061039f9190612101565b610eb4565b6040516103b19190612159565b60405180910390f35b3480156103c5575f80fd5b506103ce610ed1565b6040516103db9190612181565b60405180910390f35b3480156103ef575f80fd5b506103f8610ed7565b6040516104059190612159565b60405180910390f35b348015610419575f80fd5b50610434600480360381019061042f9190612271565b610ee9565b6040516104419190612181565b60405180910390f35b60606040518060400160405280600781526020017f4d656d65426f7800000000000000000000000000000000000000000000000000815250905090565b5f61049a610493610f6b565b8484610f72565b6001905092915050565b60115481565b5f6009600a6104b9919061240b565b64174876e8006104c99190612455565b905090565b5f6104da848484611135565b610597846104e6610f6b565b61059285604051806060016040528060288152602001612f016028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610549610f6b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ab19092919063ffffffff16565b610f72565b600190509392505050565b5f6009905090565b6105b2610f6b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461063e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610635906124e0565b60405180910390fd5b601360149054906101000a900460ff161561068e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068590612548565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061072b3060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610716919061240b565b64174876e8006107269190612455565b610f72565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610795573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b9919061257a565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561083f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610863919061257a565b6040518363ffffffff1660e01b81526004016108809291906125a5565b6020604051808303815f875af115801561089c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108c0919061257a565b60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473061094730610b65565b5f80610951610e4a565b426040518863ffffffff1660e01b81526004016109739695949392919061260e565b60606040518083038185885af115801561098f573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109b49190612681565b50505060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610a549291906126d1565b6020604051808303815f875af1158015610a70573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a949190612722565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff021916908315150217905550565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b0e610f6b565b73ffffffffffffffffffffffffffffffffffffffff1614610b2d575f80fd5b5f610b3730610b65565b90505f811115610b4b57610b4a81611b13565b5b5f4790505f811115610b6157610b6081611d7e565b5b5050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610bb3610f6b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c36906124e0565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610d01610f6b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d84906124e0565b60405180910390fd5b6009600a610d9b919061240b565b64174876e800610dab9190612455565b600e819055506009600a610dbf919061240b565b64174876e800610dcf9190612455565b600f819055505f60055f6101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610e1d919061240b565b64174876e800610e2d9190612455565b604051610e3a9190612181565b60405180910390a1565b600e5481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600781526020017f4d656d65426f7800000000000000000000000000000000000000000000000000815250905090565b5f610ec7610ec0610f6b565b8484611135565b6001905092915050565b60105481565b60055f9054906101000a900460ff1681565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fe0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fd7906127bd565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361104e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110459061284b565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111289190612181565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036111a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119a906128d9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611211576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120890612967565b60405180910390fd5b5f8111611253576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124a906129f5565b60405180910390fd5b5f61125c610e4a565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156112ca575061129a610e4a565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156118015761130b60646112fd600a54600d54116112ea576006546112ee565b6008545b85611de790919063ffffffff16565b611e5e90919063ffffffff16565b905060055f9054906101000a900460ff16156114935760125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156113cb575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611492574360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541061144f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144690612aa9565b60405180910390fd5b4360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561153c575060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b801561158f575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561164957600e548211156115d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d090612b11565b60405180910390fd5b600f54826115e685610b65565b6115f09190612b2f565b1115611631576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162890612bac565b60405180910390fd5b600d5f81548092919061164390612bca565b91905055505b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156116d157503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611715576117126064611704600b54600d54116116f1576007546116f5565b6009545b85611de790919063ffffffff16565b611e5e90919063ffffffff16565b90505b5f61171f30610b65565b9050601360159054906101000a900460ff1615801561178a575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156117a25750601360169054906101000a900460ff165b80156117af575060105481115b80156117be5750600c54600d54115b156117ff576117e06117db846117d684601154611ea7565b611ea7565b611b13565b5f47905066b1a2bc2ec500008111156117fd576117fc47611d7e565b5b505b505b5f811115611900576118598160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ebf90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118f79190612181565b60405180910390a35b6119508260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f1c90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506119f36119a78284611f1c90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ebf90919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611a968486611f1c90919063ffffffff16565b604051611aa39190612181565b60405180910390a350505050565b5f838311158290611af8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aef9190612050565b60405180910390fd5b505f8385611b069190612c11565b9050809150509392505050565b6001601360156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611b4a57611b49612c44565b5b604051908082528060200260200182016040528015611b785781602001602082028036833780820191505090505b50905030815f81518110611b8f57611b8e612c71565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c33573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c57919061257a565b81600181518110611c6b57611c6a612c71565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611cd13060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610f72565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611d33959493929190612d55565b5f604051808303815f87803b158015611d4a575f80fd5b505af1158015611d5c573d5f803e3d5ffd5b50505050505f601360156101000a81548160ff02191690831515021790555050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611de3573d5f803e3d5ffd5b5050565b5f808303611df7575f9050611e58565b5f8284611e049190612455565b9050828482611e139190612dda565b14611e53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e4a90612e7a565b60405180910390fd5b809150505b92915050565b5f611e9f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611f65565b905092915050565b5f818311611eb55782611eb7565b815b905092915050565b5f808284611ecd9190612b2f565b905083811015611f12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f0990612ee2565b60405180910390fd5b8091505092915050565b5f611f5d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ab1565b905092915050565b5f8083118290611fab576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fa29190612050565b60405180910390fd5b505f8385611fb99190612dda565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015611ffd578082015181840152602081019050611fe2565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61202282611fc6565b61202c8185611fd0565b935061203c818560208601611fe0565b61204581612008565b840191505092915050565b5f6020820190508181035f8301526120688184612018565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61209d82612074565b9050919050565b6120ad81612093565b81146120b7575f80fd5b50565b5f813590506120c8816120a4565b92915050565b5f819050919050565b6120e0816120ce565b81146120ea575f80fd5b50565b5f813590506120fb816120d7565b92915050565b5f806040838503121561211757612116612070565b5b5f612124858286016120ba565b9250506020612135858286016120ed565b9150509250929050565b5f8115159050919050565b6121538161213f565b82525050565b5f60208201905061216c5f83018461214a565b92915050565b61217b816120ce565b82525050565b5f6020820190506121945f830184612172565b92915050565b5f805f606084860312156121b1576121b0612070565b5b5f6121be868287016120ba565b93505060206121cf868287016120ba565b92505060406121e0868287016120ed565b9150509250925092565b5f60ff82169050919050565b6121ff816121ea565b82525050565b5f6020820190506122185f8301846121f6565b92915050565b5f6020828403121561223357612232612070565b5b5f612240848285016120ba565b91505092915050565b61225281612093565b82525050565b5f60208201905061226b5f830184612249565b92915050565b5f806040838503121561228757612286612070565b5b5f612294858286016120ba565b92505060206122a5858286016120ba565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156123315780860481111561230d5761230c6122af565b5b600185161561231c5780820291505b808102905061232a856122dc565b94506122f1565b94509492505050565b5f826123495760019050612404565b81612356575f9050612404565b816001811461236c5760028114612376576123a5565b6001915050612404565b60ff841115612388576123876122af565b5b8360020a91508482111561239f5761239e6122af565b5b50612404565b5060208310610133831016604e8410600b84101617156123da5782820a9050838111156123d5576123d46122af565b5b612404565b6123e784848460016122e8565b925090508184048111156123fe576123fd6122af565b5b81810290505b9392505050565b5f612415826120ce565b9150612420836121ea565b925061244d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461233a565b905092915050565b5f61245f826120ce565b915061246a836120ce565b9250828202612478816120ce565b9150828204841483151761248f5761248e6122af565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6124ca602083611fd0565b91506124d582612496565b602082019050919050565b5f6020820190508181035f8301526124f7816124be565b9050919050565b7f74726164696e67206973206f70656e656420616c7265616479000000000000005f82015250565b5f612532601983611fd0565b915061253d826124fe565b602082019050919050565b5f6020820190508181035f83015261255f81612526565b9050919050565b5f81519050612574816120a4565b92915050565b5f6020828403121561258f5761258e612070565b5b5f61259c84828501612566565b91505092915050565b5f6040820190506125b85f830185612249565b6125c56020830184612249565b9392505050565b5f819050919050565b5f819050919050565b5f6125f86125f36125ee846125cc565b6125d5565b6120ce565b9050919050565b612608816125de565b82525050565b5f60c0820190506126215f830189612249565b61262e6020830188612172565b61263b60408301876125ff565b61264860608301866125ff565b6126556080830185612249565b61266260a0830184612172565b979650505050505050565b5f8151905061267b816120d7565b92915050565b5f805f6060848603121561269857612697612070565b5b5f6126a58682870161266d565b93505060206126b68682870161266d565b92505060406126c78682870161266d565b9150509250925092565b5f6040820190506126e45f830185612249565b6126f16020830184612172565b9392505050565b6127018161213f565b811461270b575f80fd5b50565b5f8151905061271c816126f8565b92915050565b5f6020828403121561273757612736612070565b5b5f6127448482850161270e565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6127a7602483611fd0565b91506127b28261274d565b604082019050919050565b5f6020820190508181035f8301526127d48161279b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612835602283611fd0565b9150612840826127db565b604082019050919050565b5f6020820190508181035f83015261286281612829565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6128c3602583611fd0565b91506128ce82612869565b604082019050919050565b5f6020820190508181035f8301526128f0816128b7565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612951602383611fd0565b915061295c826128f7565b604082019050919050565b5f6020820190508181035f83015261297e81612945565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6129df602983611fd0565b91506129ea82612985565b604082019050919050565b5f6020820190508181035f830152612a0c816129d3565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c5f8201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b5f612a93604983611fd0565b9150612a9e82612a13565b606082019050919050565b5f6020820190508181035f830152612ac081612a87565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612afb601983611fd0565b9150612b0682612ac7565b602082019050919050565b5f6020820190508181035f830152612b2881612aef565b9050919050565b5f612b39826120ce565b9150612b44836120ce565b9250828201905080821115612b5c57612b5b6122af565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612b96601a83611fd0565b9150612ba182612b62565b602082019050919050565b5f6020820190508181035f830152612bc381612b8a565b9050919050565b5f612bd4826120ce565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c0657612c056122af565b5b600182019050919050565b5f612c1b826120ce565b9150612c26836120ce565b9250828203905081811115612c3e57612c3d6122af565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612cd081612093565b82525050565b5f612ce18383612cc7565b60208301905092915050565b5f602082019050919050565b5f612d0382612c9e565b612d0d8185612ca8565b9350612d1883612cb8565b805f5b83811015612d48578151612d2f8882612cd6565b9750612d3a83612ced565b925050600181019050612d1b565b5085935050505092915050565b5f60a082019050612d685f830188612172565b612d7560208301876125ff565b8181036040830152612d878186612cf9565b9050612d966060830185612249565b612da36080830184612172565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612de4826120ce565b9150612def836120ce565b925082612dff57612dfe612dad565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612e64602183611fd0565b9150612e6f82612e0a565b604082019050919050565b5f6020820190508181035f830152612e9181612e58565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612ecc601b83611fd0565b9150612ed782612e98565b602082019050919050565b5f6020820190508181035f830152612ef981612ec0565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122099e0a0de71b06f613c836cc77fca1db58696a47df6026971f235d1412eabfb2364736f6c63430008140033

Deployed Bytecode Sourcemap

3680:7958:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5579:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6412:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4852:54;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5856:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6581:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5765:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10572:670;;;;;;;;;;;;;:::i;:::-;;11287:348;;;;;;;;;;;;;:::i;:::-;;5959:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2761:148;;;;;;;;;;;;;:::i;:::-;;10266:196;;;;;;;;;;;;;:::i;:::-;;4657:56;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2547:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4720:58;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5670:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6086:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4785:60;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4024:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6261:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5579:83;5616:13;5649:5;;;;;;;;;;;;;;;;;5642:12;;5579:83;:::o;6412:161::-;6487:4;6504:39;6513:12;:10;:12::i;:::-;6527:7;6536:6;6504:8;:39::i;:::-;6561:4;6554:11;;6412:161;;;;:::o;4852:54::-;;;;:::o;5856:95::-;5909:7;4467:1;4525:2;:13;;;;:::i;:::-;4510:12;:28;;;;:::i;:::-;5929:14;;5856:95;:::o;6581:313::-;6679:4;6696:36;6706:6;6714:9;6725:6;6696:9;:36::i;:::-;6743:121;6752:6;6760:12;:10;:12::i;:::-;6774:89;6812:6;6774:89;;;;;;;;;;;;;;;;;:11;:19;6786:6;6774:19;;;;;;;;;;;;;;;:33;6794:12;:10;:12::i;:::-;6774:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6743:8;:121::i;:::-;6882:4;6875:11;;6581:313;;;;;:::o;5765:83::-;5806:5;4467:1;5824:16;;5765:83;:::o;10572:670::-;2684:12;:10;:12::i;:::-;2674:22;;:6;;;;;;;;;;:22;;;2666:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10633:11:::1;;;;;;;;;;;10632:12;10624:49;;;;;;;;;;;;:::i;:::-;;;;;;;;;10721:42;10684:15;;:80;;;;;;;;;;;;;;;;;;10775:58;10792:4;10807:15;;;;;;;;;;;4467:1;4525:2;:13;;;;:::i;:::-;4510:12;:28;;;;:::i;:::-;10775:8;:58::i;:::-;10878:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10860:55;;;10924:4;10931:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10860:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10844:13;;:110;;;;;;;;;;;;;;;;;;10965:15;;;;;;;;;;;:31;;;11004:21;11035:4;11041:24;11059:4;11041:9;:24::i;:::-;11066:1;11068::::0;11070:7:::1;:5;:7::i;:::-;11078:15;10965:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;11112:13;;;;;;;;;;;11105:29;;;11143:15;;;;;;;;;;;11161:14;11105:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11201:4;11187:11;;:18;;;;;;;;;;;;;;;;;;11230:4;11216:11;;:18;;;;;;;;;;;;;;;;;;10572:670::o:0;11287:348::-;11351:10;;;;;;;;;;;11337:24;;:12;:10;:12::i;:::-;:24;;;11329:33;;;;;;11373:20;11394:24;11412:4;11394:9;:24::i;:::-;11373:45;;11445:1;11432:12;:14;11429:73;;;11460:30;11477:12;11460:16;:30::i;:::-;11429:73;11512:18;11531:21;11512:40;;11577:1;11566:10;:12;11563:65;;;11592:24;11605:10;11592:12;:24::i;:::-;11563:65;11318:317;;11287:348::o;5959:119::-;6025:7;6052:9;:18;6062:7;6052:18;;;;;;;;;;;;;;;;6045:25;;5959:119;;;:::o;2761:148::-;2684:12;:10;:12::i;:::-;2674:22;;:6;;;;;;;;;;:22;;;2666:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2868:1:::1;2831:40;;2852:6;::::0;::::1;;;;;;;;2831:40;;;;;;;;;;;;2899:1;2882:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2761:148::o:0;10266:196::-;2684:12;:10;:12::i;:::-;2674:22;;:6;;;;;;;;;;:22;;;2666:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4467:1:::1;4525:2;:13;;;;:::i;:::-;4510:12;:28;;;;:::i;:::-;10319:12;:22;;;;4467:1;4525:2;:13;;;;:::i;:::-;4510:12;:28;;;;:::i;:::-;10352:14;:22;;;;10406:5;10385:20;;:26;;;;;;;;;;;;;;;;;;10427:27;4467:1;4525:2;:13;;;;:::i;:::-;4510:12;:28;;;;:::i;:::-;10427:27;;;;;;:::i;:::-;;;;;;;;10266:196::o:0;4657:56::-;;;;:::o;2547:79::-;2585:7;2612:6;;;;;;;;;;;2605:13;;2547:79;:::o;4720:58::-;;;;:::o;5670:87::-;5709:13;5742:7;;;;;;;;;;;;;;;;;5735:14;;5670:87;:::o;6086:167::-;6164:4;6181:42;6191:12;:10;:12::i;:::-;6205:9;6216:6;6181:9;:42::i;:::-;6241:4;6234:11;;6086:167;;;;:::o;4785:60::-;;;;:::o;4024:39::-;;;;;;;;;;;;;:::o;6261:143::-;6342:7;6369:11;:18;6381:5;6369:18;;;;;;;;;;;;;;;:27;6388:7;6369:27;;;;;;;;;;;;;;;;6362:34;;6261:143;;;;:::o;302:98::-;355:7;382:10;375:17;;302:98;:::o;6902:335::-;7012:1;6995:19;;:5;:19;;;6987:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7093:1;7074:21;;:7;:21;;;7066:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7175:6;7145:11;:18;7157:5;7145:18;;;;;;;;;;;;;;;:27;7164:7;7145:27;;;;;;;;;;;;;;;:36;;;;7213:7;7197:32;;7206:5;7197:32;;;7222:6;7197:32;;;;;;:::i;:::-;;;;;;;;6902:335;;;:::o;7245:2414::-;7349:1;7333:18;;:4;:18;;;7325:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7426:1;7412:16;;:2;:16;;;7404:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7496:1;7487:6;:10;7479:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7554:17;7596:7;:5;:7::i;:::-;7588:15;;:4;:15;;;;:32;;;;;7613:7;:5;:7::i;:::-;7607:13;;:2;:13;;;;7588:32;7584:1719;;;7649:76;7721:3;7649:67;7671:15;;7661:9;;:25;7660:55;;7701:14;;7660:55;;;7688:12;;7660:55;7649:6;:10;;:67;;;;:::i;:::-;:71;;:76;;;;:::i;:::-;7637:88;;7746:20;;;;;;;;;;;7742:508;;;7807:15;;;;;;;;;;;7793:30;;:2;:30;;;;:62;;;;;7841:13;;;;;;;;;;;7827:28;;:2;:28;;;;7793:62;7789:444;;;7991:12;7918:28;:39;7947:9;7918:39;;;;;;;;;;;;;;;;:85;7882:250;;;;;;;;;;;;:::i;:::-;;;;;;;;;8199:12;8157:28;:39;8186:9;8157:39;;;;;;;;;;;;;;;:54;;;;7789:444;7742:508;8278:13;;;;;;;;;;;8270:21;;:4;:21;;;:55;;;;;8309:15;;;;;;;;;;;8295:30;;:2;:30;;;;8270:55;:83;;;;;8331:18;:22;8350:2;8331:22;;;;;;;;;;;;;;;;;;;;;;;;;8329:24;8270:83;8266:313;;;8393:12;;8383:6;:22;;8375:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;8488:14;;8478:6;8462:13;8472:2;8462:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;8454:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;8552:9;;:11;;;;;;;;;:::i;:::-;;;;;;8266:313;8604:13;;;;;;;;;;;8598:19;;:2;:19;;;:43;;;;;8636:4;8621:20;;:4;:20;;;;8598:43;8595:174;;;8674:79;8749:3;8674:70;8696:16;;8686:9;;:26;8685:58;;8728:15;;8685:58;;;8714:13;;8685:58;8674:6;:10;;:70;;;;:::i;:::-;:74;;:79;;;;:::i;:::-;8662:91;;8595:174;8785:28;8816:24;8834:4;8816:9;:24::i;:::-;8785:55;;8860:6;;;;;;;;;;;8859:7;:32;;;;;8878:13;;;;;;;;;;;8870:21;;:2;:21;;;8859:32;:47;;;;;8895:11;;;;;;;;;;;8859:47;:89;;;;;8931:17;;8910:20;:38;8859:89;:121;;;;;8962:18;;8952:9;;:28;8859:121;8855:437;;;9001:67;9018:49;9022:6;9029:37;9033:20;9054:11;;9029:3;:37::i;:::-;9018:3;:49::i;:::-;9001:16;:67::i;:::-;9087:26;9116:21;9087:50;;9180:17;9159:18;:38;9156:121;;;9222:35;9235:21;9222:12;:35::i;:::-;9156:121;8982:310;8855:437;7622:1681;7584:1719;9328:1;9318:9;:11;9315:161;;;9368:39;9397:9;9368;:24;9386:4;9368:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;9343:9;:24;9361:4;9343:24;;;;;;;;;;;;;;;:64;;;;9448:4;9425:39;;9434:4;9425:39;;;9454:9;9425:39;;;;;;:::i;:::-;;;;;;;;9315:161;9502:27;9522:6;9502:9;:15;9512:4;9502:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;9486:9;:15;9496:4;9486:15;;;;;;;;;;;;;;;:43;;;;9554:40;9572:21;9583:9;9572:6;:10;;:21;;;;:::i;:::-;9554:9;:13;9564:2;9554:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;9540:9;:13;9550:2;9540:13;;;;;;;;;;;;;;;:54;;;;9625:2;9610:41;;9619:4;9610:41;;;9629:21;9640:9;9629:6;:10;;:21;;;;:::i;:::-;9610:41;;;;;;:::i;:::-;;;;;;;;7314:2345;7245:2414;;;:::o;1439:190::-;1525:7;1558:1;1553;:6;;1561:12;1545:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1585:9;1601:1;1597;:5;;;;:::i;:::-;1585:17;;1620:1;1613:8;;;1439:190;;;;;:::o;9775:483::-;5197:4;5188:6;;:13;;;;;;;;;;;;;;;;;;9853:21:::1;9891:1;9877:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9853:40;;9922:4;9904;9909:1;9904:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;9948:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9938:4;9943:1;9938:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;9981:62;9998:4;10013:15;;;;;;;;;;;10031:11;9981:8;:62::i;:::-;10054:15;;;;;;;;;;;:66;;;10135:11;10161:1;10177:4;10204;10224:15;10054:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;9842:416;5233:5:::0;5224:6;;:14;;;;;;;;;;;;;;;;;;9775:483;:::o;10470:92::-;10527:10;;;;;;;;;;;:19;;:27;10547:6;10527:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10470:92;:::o;1637:246::-;1695:7;1724:1;1719;:6;1715:47;;1749:1;1742:8;;;;1715:47;1772:9;1788:1;1784;:5;;;;:::i;:::-;1772:17;;1817:1;1812;1808;:5;;;;:::i;:::-;:10;1800:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1874:1;1867:8;;;1637:246;;;;;:::o;1891:132::-;1949:7;1976:39;1980:1;1983;1976:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1969:46;;1891:132;;;;:::o;9669:98::-;9726:7;9753:1;9751;:3;9750:9;;9758:1;9750:9;;;9756:1;9750:9;9743:16;;9669:98;;;;:::o;1108:179::-;1166:7;1186:9;1202:1;1198;:5;;;;:::i;:::-;1186:17;;1227:1;1222;:6;;1214:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1278:1;1271:8;;;1108:179;;;;:::o;1295:136::-;1353:7;1380:43;1384:1;1387;1380:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1373:50;;1295:136;;;;:::o;2031:189::-;2117:7;2149:1;2145;:5;2152:12;2137:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2176:9;2192:1;2188;:5;;;;:::i;:::-;2176:17;;2211:1;2204:8;;;2031: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:329::-;4912:6;4961:2;4949:9;4940:7;4936:23;4932:32;4929:119;;;4967:79;;:::i;:::-;4929:119;5087:1;5112:53;5157:7;5148:6;5137:9;5133:22;5112:53;:::i;:::-;5102:63;;5058:117;4853:329;;;;:::o;5188:118::-;5275:24;5293:5;5275:24;:::i;:::-;5270:3;5263:37;5188:118;;:::o;5312:222::-;5405:4;5443:2;5432:9;5428:18;5420:26;;5456:71;5524:1;5513:9;5509:17;5500:6;5456:71;:::i;:::-;5312:222;;;;:::o;5540:474::-;5608:6;5616;5665:2;5653:9;5644:7;5640:23;5636:32;5633:119;;;5671:79;;:::i;:::-;5633:119;5791:1;5816:53;5861:7;5852:6;5841:9;5837:22;5816:53;:::i;:::-;5806:63;;5762:117;5918:2;5944:53;5989:7;5980:6;5969:9;5965:22;5944:53;:::i;:::-;5934:63;;5889:118;5540:474;;;;;:::o;6020:180::-;6068:77;6065:1;6058:88;6165:4;6162:1;6155:15;6189:4;6186:1;6179:15;6206:102;6248:8;6295:5;6292:1;6288:13;6267:34;;6206:102;;;:::o;6314:848::-;6375:5;6382:4;6406:6;6397:15;;6430:5;6421:14;;6444:712;6465:1;6455:8;6452:15;6444:712;;;6560:4;6555:3;6551:14;6545:4;6542:24;6539:50;;;6569:18;;:::i;:::-;6539:50;6619:1;6609:8;6605:16;6602:451;;;7034:4;7027:5;7023:16;7014:25;;6602:451;7084:4;7078;7074:15;7066:23;;7114:32;7137:8;7114:32;:::i;:::-;7102:44;;6444:712;;;6314:848;;;;;;;:::o;7168:1073::-;7222:5;7413:8;7403:40;;7434:1;7425:10;;7436:5;;7403:40;7462:4;7452:36;;7479:1;7470:10;;7481:5;;7452:36;7548:4;7596:1;7591:27;;;;7632:1;7627:191;;;;7541:277;;7591:27;7609:1;7600:10;;7611:5;;;7627:191;7672:3;7662:8;7659:17;7656:43;;;7679:18;;:::i;:::-;7656:43;7728:8;7725:1;7721:16;7712:25;;7763:3;7756:5;7753:14;7750:40;;;7770:18;;:::i;:::-;7750:40;7803:5;;;7541:277;;7927:2;7917:8;7914:16;7908:3;7902:4;7899:13;7895:36;7877:2;7867:8;7864:16;7859:2;7853:4;7850:12;7846:35;7830:111;7827:246;;;7983:8;7977:4;7973:19;7964:28;;8018:3;8011:5;8008:14;8005:40;;;8025:18;;:::i;:::-;8005:40;8058:5;;7827:246;8098:42;8136:3;8126:8;8120:4;8117:1;8098:42;:::i;:::-;8083:57;;;;8172:4;8167:3;8163:14;8156:5;8153:25;8150:51;;;8181:18;;:::i;:::-;8150:51;8230:4;8223:5;8219:16;8210:25;;7168:1073;;;;;;:::o;8247:281::-;8305:5;8329:23;8347:4;8329:23;:::i;:::-;8321:31;;8373:25;8389:8;8373:25;:::i;:::-;8361:37;;8417:104;8454:66;8444:8;8438:4;8417:104;:::i;:::-;8408:113;;8247:281;;;;:::o;8534:410::-;8574:7;8597:20;8615:1;8597:20;:::i;:::-;8592:25;;8631:20;8649:1;8631:20;:::i;:::-;8626:25;;8686:1;8683;8679:9;8708:30;8726:11;8708:30;:::i;:::-;8697:41;;8887:1;8878:7;8874:15;8871:1;8868:22;8848:1;8841:9;8821:83;8798:139;;8917:18;;:::i;:::-;8798:139;8582:362;8534:410;;;;:::o;8950:182::-;9090:34;9086:1;9078:6;9074:14;9067:58;8950:182;:::o;9138:366::-;9280:3;9301:67;9365:2;9360:3;9301:67;:::i;:::-;9294:74;;9377:93;9466:3;9377:93;:::i;:::-;9495:2;9490:3;9486:12;9479:19;;9138:366;;;:::o;9510:419::-;9676:4;9714:2;9703:9;9699:18;9691:26;;9763:9;9757:4;9753:20;9749:1;9738:9;9734:17;9727:47;9791:131;9917:4;9791:131;:::i;:::-;9783:139;;9510:419;;;:::o;9935:175::-;10075:27;10071:1;10063:6;10059:14;10052:51;9935:175;:::o;10116:366::-;10258:3;10279:67;10343:2;10338:3;10279:67;:::i;:::-;10272:74;;10355:93;10444:3;10355:93;:::i;:::-;10473:2;10468:3;10464:12;10457:19;;10116:366;;;:::o;10488:419::-;10654:4;10692:2;10681:9;10677:18;10669:26;;10741:9;10735:4;10731:20;10727:1;10716:9;10712:17;10705:47;10769:131;10895:4;10769:131;:::i;:::-;10761:139;;10488:419;;;:::o;10913:143::-;10970:5;11001:6;10995:13;10986:22;;11017:33;11044:5;11017:33;:::i;:::-;10913:143;;;;:::o;11062:351::-;11132:6;11181:2;11169:9;11160:7;11156:23;11152:32;11149:119;;;11187:79;;:::i;:::-;11149:119;11307:1;11332:64;11388:7;11379:6;11368:9;11364:22;11332:64;:::i;:::-;11322:74;;11278:128;11062:351;;;;:::o;11419:332::-;11540:4;11578:2;11567:9;11563:18;11555:26;;11591:71;11659:1;11648:9;11644:17;11635:6;11591:71;:::i;:::-;11672:72;11740:2;11729:9;11725:18;11716:6;11672:72;:::i;:::-;11419:332;;;;;:::o;11757:85::-;11802:7;11831:5;11820:16;;11757:85;;;:::o;11848:60::-;11876:3;11897:5;11890:12;;11848:60;;;:::o;11914:158::-;11972:9;12005:61;12023:42;12032:32;12058:5;12032:32;:::i;:::-;12023:42;:::i;:::-;12005:61;:::i;:::-;11992:74;;11914:158;;;:::o;12078:147::-;12173:45;12212:5;12173:45;:::i;:::-;12168:3;12161:58;12078:147;;:::o;12231:807::-;12480:4;12518:3;12507:9;12503:19;12495:27;;12532:71;12600:1;12589:9;12585:17;12576:6;12532:71;:::i;:::-;12613:72;12681:2;12670:9;12666:18;12657:6;12613:72;:::i;:::-;12695:80;12771:2;12760:9;12756:18;12747:6;12695:80;:::i;:::-;12785;12861:2;12850:9;12846:18;12837:6;12785:80;:::i;:::-;12875:73;12943:3;12932:9;12928:19;12919:6;12875:73;:::i;:::-;12958;13026:3;13015:9;13011:19;13002:6;12958:73;:::i;:::-;12231:807;;;;;;;;;:::o;13044:143::-;13101:5;13132:6;13126:13;13117:22;;13148:33;13175:5;13148:33;:::i;:::-;13044:143;;;;:::o;13193:663::-;13281:6;13289;13297;13346:2;13334:9;13325:7;13321:23;13317:32;13314:119;;;13352:79;;:::i;:::-;13314:119;13472:1;13497:64;13553:7;13544:6;13533:9;13529:22;13497:64;:::i;:::-;13487:74;;13443:128;13610:2;13636:64;13692:7;13683:6;13672:9;13668:22;13636:64;:::i;:::-;13626:74;;13581:129;13749:2;13775:64;13831:7;13822:6;13811:9;13807:22;13775:64;:::i;:::-;13765:74;;13720:129;13193:663;;;;;:::o;13862:332::-;13983:4;14021:2;14010:9;14006:18;13998:26;;14034:71;14102:1;14091:9;14087:17;14078:6;14034:71;:::i;:::-;14115:72;14183:2;14172:9;14168:18;14159:6;14115:72;:::i;:::-;13862:332;;;;;:::o;14200:116::-;14270:21;14285:5;14270:21;:::i;:::-;14263:5;14260:32;14250:60;;14306:1;14303;14296:12;14250:60;14200:116;:::o;14322:137::-;14376:5;14407:6;14401:13;14392:22;;14423:30;14447:5;14423:30;:::i;:::-;14322:137;;;;:::o;14465:345::-;14532:6;14581:2;14569:9;14560:7;14556:23;14552:32;14549:119;;;14587:79;;:::i;:::-;14549:119;14707:1;14732:61;14785:7;14776:6;14765:9;14761:22;14732:61;:::i;:::-;14722:71;;14678:125;14465:345;;;;:::o;14816:223::-;14956:34;14952:1;14944:6;14940:14;14933:58;15025:6;15020:2;15012:6;15008:15;15001:31;14816:223;:::o;15045:366::-;15187:3;15208:67;15272:2;15267:3;15208:67;:::i;:::-;15201:74;;15284:93;15373:3;15284:93;:::i;:::-;15402:2;15397:3;15393:12;15386:19;;15045:366;;;:::o;15417:419::-;15583:4;15621:2;15610:9;15606:18;15598:26;;15670:9;15664:4;15660:20;15656:1;15645:9;15641:17;15634:47;15698:131;15824:4;15698:131;:::i;:::-;15690:139;;15417:419;;;:::o;15842:221::-;15982:34;15978:1;15970:6;15966:14;15959:58;16051:4;16046:2;16038:6;16034:15;16027:29;15842:221;:::o;16069:366::-;16211:3;16232:67;16296:2;16291:3;16232:67;:::i;:::-;16225:74;;16308:93;16397:3;16308:93;:::i;:::-;16426:2;16421:3;16417:12;16410:19;;16069:366;;;:::o;16441:419::-;16607:4;16645:2;16634:9;16630:18;16622:26;;16694:9;16688:4;16684:20;16680:1;16669:9;16665:17;16658:47;16722:131;16848:4;16722:131;:::i;:::-;16714:139;;16441:419;;;:::o;16866:224::-;17006:34;17002:1;16994:6;16990:14;16983:58;17075:7;17070:2;17062:6;17058:15;17051:32;16866:224;:::o;17096:366::-;17238:3;17259:67;17323:2;17318:3;17259:67;:::i;:::-;17252:74;;17335:93;17424:3;17335:93;:::i;:::-;17453:2;17448:3;17444:12;17437:19;;17096:366;;;:::o;17468:419::-;17634:4;17672:2;17661:9;17657:18;17649:26;;17721:9;17715:4;17711:20;17707:1;17696:9;17692:17;17685:47;17749:131;17875:4;17749:131;:::i;:::-;17741:139;;17468:419;;;:::o;17893:222::-;18033:34;18029:1;18021:6;18017:14;18010:58;18102:5;18097:2;18089:6;18085:15;18078:30;17893:222;:::o;18121:366::-;18263:3;18284:67;18348:2;18343:3;18284:67;:::i;:::-;18277:74;;18360:93;18449:3;18360:93;:::i;:::-;18478:2;18473:3;18469:12;18462:19;;18121:366;;;:::o;18493:419::-;18659:4;18697:2;18686:9;18682:18;18674:26;;18746:9;18740:4;18736:20;18732:1;18721:9;18717:17;18710:47;18774:131;18900:4;18774:131;:::i;:::-;18766:139;;18493:419;;;:::o;18918:228::-;19058:34;19054:1;19046:6;19042:14;19035:58;19127:11;19122:2;19114:6;19110:15;19103:36;18918:228;:::o;19152:366::-;19294:3;19315:67;19379:2;19374:3;19315:67;:::i;:::-;19308:74;;19391:93;19480:3;19391:93;:::i;:::-;19509:2;19504:3;19500:12;19493:19;;19152:366;;;:::o;19524:419::-;19690:4;19728:2;19717:9;19713:18;19705:26;;19777:9;19771:4;19767:20;19763:1;19752:9;19748:17;19741:47;19805:131;19931:4;19805:131;:::i;:::-;19797:139;;19524:419;;;:::o;19949:297::-;20089:34;20085:1;20077:6;20073:14;20066:58;20158:34;20153:2;20145:6;20141:15;20134:59;20227:11;20222:2;20214:6;20210:15;20203:36;19949:297;:::o;20252:366::-;20394:3;20415:67;20479:2;20474:3;20415:67;:::i;:::-;20408:74;;20491:93;20580:3;20491:93;:::i;:::-;20609:2;20604:3;20600:12;20593:19;;20252:366;;;:::o;20624:419::-;20790:4;20828:2;20817:9;20813:18;20805:26;;20877:9;20871:4;20867:20;20863:1;20852:9;20848:17;20841:47;20905:131;21031:4;20905:131;:::i;:::-;20897:139;;20624:419;;;:::o;21049:175::-;21189:27;21185:1;21177:6;21173:14;21166:51;21049:175;:::o;21230:366::-;21372:3;21393:67;21457:2;21452:3;21393:67;:::i;:::-;21386:74;;21469:93;21558:3;21469:93;:::i;:::-;21587:2;21582:3;21578:12;21571:19;;21230:366;;;:::o;21602:419::-;21768:4;21806:2;21795:9;21791:18;21783:26;;21855:9;21849:4;21845:20;21841:1;21830:9;21826:17;21819:47;21883:131;22009:4;21883:131;:::i;:::-;21875:139;;21602:419;;;:::o;22027:191::-;22067:3;22086:20;22104:1;22086:20;:::i;:::-;22081:25;;22120:20;22138:1;22120:20;:::i;:::-;22115:25;;22163:1;22160;22156:9;22149:16;;22184:3;22181:1;22178:10;22175:36;;;22191:18;;:::i;:::-;22175:36;22027:191;;;;:::o;22224:176::-;22364:28;22360:1;22352:6;22348:14;22341:52;22224:176;:::o;22406:366::-;22548:3;22569:67;22633:2;22628:3;22569:67;:::i;:::-;22562:74;;22645:93;22734:3;22645:93;:::i;:::-;22763:2;22758:3;22754:12;22747:19;;22406:366;;;:::o;22778:419::-;22944:4;22982:2;22971:9;22967:18;22959:26;;23031:9;23025:4;23021:20;23017:1;23006:9;23002:17;22995:47;23059:131;23185:4;23059:131;:::i;:::-;23051:139;;22778:419;;;:::o;23203:233::-;23242:3;23265:24;23283:5;23265:24;:::i;:::-;23256:33;;23311:66;23304:5;23301:77;23298:103;;23381:18;;:::i;:::-;23298:103;23428:1;23421:5;23417:13;23410:20;;23203:233;;;:::o;23442:194::-;23482:4;23502:20;23520:1;23502:20;:::i;:::-;23497:25;;23536:20;23554:1;23536:20;:::i;:::-;23531:25;;23580:1;23577;23573:9;23565:17;;23604:1;23598:4;23595:11;23592:37;;;23609:18;;:::i;:::-;23592:37;23442:194;;;;:::o;23642:180::-;23690:77;23687:1;23680:88;23787:4;23784:1;23777:15;23811:4;23808:1;23801:15;23828:180;23876:77;23873:1;23866:88;23973:4;23970:1;23963:15;23997:4;23994:1;23987:15;24014:114;24081:6;24115:5;24109:12;24099:22;;24014:114;;;:::o;24134:184::-;24233:11;24267:6;24262:3;24255:19;24307:4;24302:3;24298:14;24283:29;;24134:184;;;;:::o;24324:132::-;24391:4;24414:3;24406:11;;24444:4;24439:3;24435:14;24427:22;;24324:132;;;:::o;24462:108::-;24539:24;24557:5;24539:24;:::i;:::-;24534:3;24527:37;24462:108;;:::o;24576:179::-;24645:10;24666:46;24708:3;24700:6;24666:46;:::i;:::-;24744:4;24739:3;24735:14;24721:28;;24576:179;;;;:::o;24761:113::-;24831:4;24863;24858:3;24854:14;24846:22;;24761:113;;;:::o;24910:732::-;25029:3;25058:54;25106:5;25058:54;:::i;:::-;25128:86;25207:6;25202:3;25128:86;:::i;:::-;25121:93;;25238:56;25288:5;25238:56;:::i;:::-;25317:7;25348:1;25333:284;25358:6;25355:1;25352:13;25333:284;;;25434:6;25428:13;25461:63;25520:3;25505:13;25461:63;:::i;:::-;25454:70;;25547:60;25600:6;25547:60;:::i;:::-;25537:70;;25393:224;25380:1;25377;25373:9;25368:14;;25333:284;;;25337:14;25633:3;25626:10;;25034:608;;;24910:732;;;;:::o;25648:831::-;25911:4;25949:3;25938:9;25934:19;25926:27;;25963:71;26031:1;26020:9;26016:17;26007:6;25963:71;:::i;:::-;26044:80;26120:2;26109:9;26105:18;26096:6;26044:80;:::i;:::-;26171:9;26165:4;26161:20;26156:2;26145:9;26141:18;26134:48;26199:108;26302:4;26293:6;26199:108;:::i;:::-;26191:116;;26317:72;26385:2;26374:9;26370:18;26361:6;26317:72;:::i;:::-;26399:73;26467:3;26456:9;26452:19;26443:6;26399:73;:::i;:::-;25648:831;;;;;;;;:::o;26485:180::-;26533:77;26530:1;26523:88;26630:4;26627:1;26620:15;26654:4;26651:1;26644:15;26671:185;26711:1;26728:20;26746:1;26728:20;:::i;:::-;26723:25;;26762:20;26780:1;26762:20;:::i;:::-;26757:25;;26801:1;26791:35;;26806:18;;:::i;:::-;26791:35;26848:1;26845;26841:9;26836:14;;26671:185;;;;:::o;26862:220::-;27002:34;26998:1;26990:6;26986:14;26979:58;27071:3;27066:2;27058:6;27054:15;27047:28;26862:220;:::o;27088:366::-;27230:3;27251:67;27315:2;27310:3;27251:67;:::i;:::-;27244:74;;27327:93;27416:3;27327:93;:::i;:::-;27445:2;27440:3;27436:12;27429:19;;27088:366;;;:::o;27460:419::-;27626:4;27664:2;27653:9;27649:18;27641:26;;27713:9;27707:4;27703:20;27699:1;27688:9;27684:17;27677:47;27741:131;27867:4;27741:131;:::i;:::-;27733:139;;27460:419;;;:::o;27885:177::-;28025:29;28021:1;28013:6;28009:14;28002:53;27885:177;:::o;28068:366::-;28210:3;28231:67;28295:2;28290:3;28231:67;:::i;:::-;28224:74;;28307:93;28396:3;28307:93;:::i;:::-;28425:2;28420:3;28416:12;28409:19;;28068:366;;;:::o;28440:419::-;28606:4;28644:2;28633:9;28629:18;28621:26;;28693:9;28687:4;28683:20;28679:1;28668:9;28664:17;28657:47;28721:131;28847:4;28721:131;:::i;:::-;28713:139;;28440:419;;;:::o

Swarm Source

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