ETH Price: $3,251.62 (-2.51%)
 

Overview

Max Total Supply

210,000,000 DELITE

Holders

44

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
*💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️💀️.eth
Balance
1,785,000 DELITE

Value
$0.00
0xd8b73050673ed39b0568b29a7eb5a6258aa789d8
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:
DECENTRALITE

Compiler Version
v0.8.22+commit.4fc1097e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: MIT

/*
Decentralite ia community run-chain blockchain

Telegram : https://t.me/decentralite
Website  : https://decentralite.org/
Twitter  : https://x.com/Decentraliteorg
*/

pragma solidity 0.8.22;

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 DECENTRALITE 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 private transferDelayEnabled = false;
    address payable private _taxWallet;

    // Taxes
    uint256 private _buyTax = 15;
    uint256 private _sellTax = 15;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 210000000 * 10**_decimals;
    string private constant _name = "DECENTRALITE";
    string private constant _symbol = "DELITE";
    uint256 public _maxTxSize = _tTotal * 10 / 1000;
    uint256 public _maxWalletSize = _tTotal * 10 / 1000;
    uint256 public _taxSwapThreshold= _tTotal * 5 / 1000;

    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 (address taxWallet) {
        _taxWallet = payable(taxWallet);
        _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()) {
            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]) {
                taxAmount = amount.mul(_buyTax).div(100);
                require(amount <= _maxTxSize, "Exceeds the _maxTxSize.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
            }

            if (to == uniswapV2Pair && from != address(this)) {
                taxAmount = amount.mul(_sellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance > _taxSwapThreshold) {
                if(amount >= _taxSwapThreshold) {
                    swapTokensForEth(_taxSwapThreshold);
                } else {
                    swapTokensForEth(amount);
                }
            }
        }

        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 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(_taxWallet),
            block.timestamp
        );
    }

    function setBuyTax(uint256 tax) external onlyOwner {
        require(tax <= 45, "Tax should be less than or equal to 45");
        _buyTax = tax;
    }

    function setSellTax(uint256 tax) external onlyOwner {
        require(tax <= 45, "Tax should be less than or equal to 45");
        _sellTax = tax;
    }
    
    function setmaxTx(uint256 percent) external onlyOwner {
        _maxTxSize = _tTotal * percent / 1000;
    }

    function setmaxwallet(uint256 percent) external onlyOwner {
        _maxWalletSize = _tTotal * percent / 1000;
    }

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

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

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"taxWallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_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":"_maxTxSize","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":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tax","type":"uint256"}],"name":"setBuyTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tax","type":"uint256"}],"name":"setSellTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"setmaxTx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"setmaxwallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040525f60055f6101000a81548160ff021916908315150217905550600f600655600f6007556103e8600a6009600a6200003c91906200063c565b630c8458806200004d91906200068c565b6200005991906200068c565b62000065919062000703565b6008556103e8600a6009600a6200007d91906200063c565b630c8458806200008e91906200068c565b6200009a91906200068c565b620000a6919062000703565b6009556103e860056009600a620000be91906200063c565b630c845880620000cf91906200068c565b620000db91906200068c565b620000e7919062000703565b600a555f600c60156101000a81548160ff0219169083151502179055505f600c60166101000a81548160ff0219169083151502179055503480156200012a575f80fd5b5060405162003a0838038062003a0883398181016040528101906200015091906200079f565b5f620001616200047c60201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35080600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a6200024e91906200063c565b630c8458806200025f91906200068c565b60015f620002726200047c60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f620002c46200048360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550620003ef6200047c60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a6200044d91906200063c565b630c8458806200045e91906200068c565b6040516200046d9190620007e0565b60405180910390a350620007fb565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111562000534578086048111156200050c576200050b620004aa565b5b60018516156200051c5780820291505b80810290506200052c85620004d7565b9450620004ec565b94509492505050565b5f826200054e576001905062000620565b816200055d575f905062000620565b81600181146200057657600281146200058157620005b7565b600191505062000620565b60ff841115620005965762000595620004aa565b5b8360020a915084821115620005b057620005af620004aa565b5b5062000620565b5060208310610133831016604e8410600b8410161715620005f15782820a905083811115620005eb57620005ea620004aa565b5b62000620565b620006008484846001620004e3565b925090508184048111156200061a5762000619620004aa565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f620006488262000627565b9150620006558362000630565b9250620006847fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200053d565b905092915050565b5f620006988262000627565b9150620006a58362000627565b9250828202620006b58162000627565b91508282048414831517620006cf57620006ce620004aa565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6200070f8262000627565b91506200071c8362000627565b9250826200072f576200072e620006d6565b5b828204905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f62000769826200073e565b9050919050565b6200077b816200075d565b811462000786575f80fd5b50565b5f81519050620007998162000770565b92915050565b5f60208284031215620007b757620007b66200073a565b5b5f620007c68482850162000789565b91505092915050565b620007da8162000627565b82525050565b5f602082019050620007f55f830184620007cf565b92915050565b6131ff80620008095f395ff3fe608060405260043610610122575f3560e01c80638cd09d501161009f578063b0c2b56111610063578063b0c2b561146103bf578063bf474bed146103e7578063c9567bf914610411578063dc1052e214610427578063dd62ed3e1461044f57610129565b80638cd09d50146102dd5780638da5cb5b146103055780638f9a55c01461032f57806395d89b4114610359578063a9059cbb1461038357610129565b806340cd6ed1116100e657806340cd6ed114610223578063511b5f611461024b57806370a0823114610275578063715018a6146102b1578063751039fc146102c757610129565b806306fdde031461012d578063095ea7b31461015757806318160ddd1461019357806323b872dd146101bd578063313ce567146101f957610129565b3661012957005b5f80fd5b348015610138575f80fd5b5061014161048b565b60405161014e919061227f565b60405180910390f35b348015610162575f80fd5b5061017d60048036038101906101789190612330565b6104c8565b60405161018a9190612388565b60405180910390f35b34801561019e575f80fd5b506101a76104e5565b6040516101b491906123b0565b60405180910390f35b3480156101c8575f80fd5b506101e360048036038101906101de91906123c9565b610508565b6040516101f09190612388565b60405180910390f35b348015610204575f80fd5b5061020d6105dc565b60405161021a9190612434565b60405180910390f35b34801561022e575f80fd5b506102496004803603810190610244919061244d565b6105e4565b005b348015610256575f80fd5b5061025f6106b6565b60405161026c91906123b0565b60405180910390f35b348015610280575f80fd5b5061029b60048036038101906102969190612478565b6106bc565b6040516102a891906123b0565b60405180910390f35b3480156102bc575f80fd5b506102c5610702565b005b3480156102d2575f80fd5b506102db610850565b005b3480156102e8575f80fd5b5061030360048036038101906102fe919061244d565b610998565b005b348015610310575f80fd5b50610319610a7a565b60405161032691906124b2565b60405180910390f35b34801561033a575f80fd5b50610343610aa1565b60405161035091906123b0565b60405180910390f35b348015610364575f80fd5b5061036d610aa7565b60405161037a919061227f565b60405180910390f35b34801561038e575f80fd5b506103a960048036038101906103a49190612330565b610ae4565b6040516103b69190612388565b60405180910390f35b3480156103ca575f80fd5b506103e560048036038101906103e0919061244d565b610b01565b005b3480156103f2575f80fd5b506103fb610bd3565b60405161040891906123b0565b60405180910390f35b34801561041c575f80fd5b50610425610bd9565b005b348015610432575f80fd5b5061044d6004803603810190610448919061244d565b6110fb565b005b34801561045a575f80fd5b50610475600480360381019061047091906124cb565b6111dd565b60405161048291906123b0565b60405180910390f35b60606040518060400160405280600c81526020017f444543454e5452414c4954450000000000000000000000000000000000000000815250905090565b5f6104db6104d461125f565b8484611266565b6001905092915050565b5f6009600a6104f49190612665565b630c84588061050391906126af565b905090565b5f610514848484611429565b6105d18461052061125f565b6105cc856040518060600160405280602881526020016131a26028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61058361125f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611d3f9092919063ffffffff16565b611266565b600190509392505050565b5f6009905090565b6105ec61125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610678576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161066f9061273a565b60405180910390fd5b6103e8816009600a61068a9190612665565b630c84588061069991906126af565b6106a391906126af565b6106ad9190612785565b60098190555050565b60085481565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61070a61125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610796576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078d9061273a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61085861125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108db9061273a565b60405180910390fd5b6009600a6108f29190612665565b630c84588061090191906126af565b6008819055506009600a6109159190612665565b630c84588061092491906126af565b6009819055505f60055f6101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a6109729190612665565b630c84588061098191906126af565b60405161098e91906123b0565b60405180910390a1565b6109a061125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a239061273a565b60405180910390fd5b602d811115610a70576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6790612825565b60405180910390fd5b8060078190555050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60095481565b60606040518060400160405280600681526020017f44454c4954450000000000000000000000000000000000000000000000000000815250905090565b5f610af7610af061125f565b8484611429565b6001905092915050565b610b0961125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8c9061273a565b60405180910390fd5b6103e8816009600a610ba79190612665565b630c845880610bb691906126af565b610bc091906126af565b610bca9190612785565b60088190555050565b600a5481565b610be161125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c649061273a565b60405180910390fd5b600c60149054906101000a900460ff1615610cbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb49061288d565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610d5930600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610d459190612665565b630c845880610d5491906126af565b611266565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dc3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610de791906128bf565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e6d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e9191906128bf565b6040518363ffffffff1660e01b8152600401610eae9291906128ea565b6020604051808303815f875af1158015610eca573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610eee91906128bf565b600c5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610f75306106bc565b5f80610f7f610a7a565b426040518863ffffffff1660e01b8152600401610fa196959493929190612953565b60606040518083038185885af1158015610fbd573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610fe291906129c6565b505050600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611082929190612a16565b6020604051808303815f875af115801561109e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110c29190612a67565b506001600c60166101000a81548160ff0219169083151502179055506001600c60146101000a81548160ff021916908315150217905550565b61110361125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461118f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111869061273a565b60405180910390fd5b602d8111156111d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ca90612825565b60405180910390fd5b8060068190555050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036112d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112cb90612b02565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611342576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133990612b90565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161141c91906123b0565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611497576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148e90612c1e565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611505576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114fc90612cac565b60405180910390fd5b5f8111611547576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153e90612d3a565b60405180910390fd5b5f611550610a7a565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156115be575061158e610a7a565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611a8f5760055f9054906101000a900460ff161561174957600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156116815750600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611748574360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205410611705576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116fc90612dee565b60405180910390fd5b4360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156117f25750600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611845575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561191257611872606461186460065485611da190919063ffffffff16565b611e1890919063ffffffff16565b90506008548211156118b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118b090612e56565b60405180910390fd5b600954826118c6856106bc565b6118d09190612e74565b1115611911576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190890612ef1565b60405180910390fd5b5b600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561199a57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156119ca576119c760646119b960075485611da190919063ffffffff16565b611e1890919063ffffffff16565b90505b5f6119d4306106bc565b9050600c60159054906101000a900460ff16158015611a3f5750600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611a575750600c60169054906101000a900460ff165b8015611a645750600a5481115b15611a8d57600a548310611a8257611a7d600a54611e61565b611a8c565b611a8b83611e61565b5b5b505b5f811115611b8e57611ae78160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120ee90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b8591906123b0565b60405180910390a35b611bde8260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461214b90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611c81611c35828461214b90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120ee90919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611d24848661214b90919063ffffffff16565b604051611d3191906123b0565b60405180910390a350505050565b5f838311158290611d86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d7d919061227f565b60405180910390fd5b505f8385611d949190612f0f565b9050809150509392505050565b5f808303611db1575f9050611e12565b5f8284611dbe91906126af565b9050828482611dcd9190612785565b14611e0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e0490612fb2565b60405180910390fd5b809150505b92915050565b5f611e5983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612194565b905092915050565b6001600c60156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611e9857611e97612fd0565b5b604051908082528060200260200182016040528015611ec65781602001602082028036833780820191505090505b50905030815f81518110611edd57611edc612ffd565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f81573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611fa591906128bf565b81600181518110611fb957611fb8612ffd565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061201f30600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611266565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f84600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b81526004016120a39594939291906130e1565b5f604051808303815f87803b1580156120ba575f80fd5b505af11580156120cc573d5f803e3d5ffd5b50505050505f600c60156101000a81548160ff02191690831515021790555050565b5f8082846120fc9190612e74565b905083811015612141576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161213890613183565b60405180910390fd5b8091505092915050565b5f61218c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d3f565b905092915050565b5f80831182906121da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121d1919061227f565b60405180910390fd5b505f83856121e89190612785565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561222c578082015181840152602081019050612211565b5f8484015250505050565b5f601f19601f8301169050919050565b5f612251826121f5565b61225b81856121ff565b935061226b81856020860161220f565b61227481612237565b840191505092915050565b5f6020820190508181035f8301526122978184612247565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6122cc826122a3565b9050919050565b6122dc816122c2565b81146122e6575f80fd5b50565b5f813590506122f7816122d3565b92915050565b5f819050919050565b61230f816122fd565b8114612319575f80fd5b50565b5f8135905061232a81612306565b92915050565b5f80604083850312156123465761234561229f565b5b5f612353858286016122e9565b92505060206123648582860161231c565b9150509250929050565b5f8115159050919050565b6123828161236e565b82525050565b5f60208201905061239b5f830184612379565b92915050565b6123aa816122fd565b82525050565b5f6020820190506123c35f8301846123a1565b92915050565b5f805f606084860312156123e0576123df61229f565b5b5f6123ed868287016122e9565b93505060206123fe868287016122e9565b925050604061240f8682870161231c565b9150509250925092565b5f60ff82169050919050565b61242e81612419565b82525050565b5f6020820190506124475f830184612425565b92915050565b5f602082840312156124625761246161229f565b5b5f61246f8482850161231c565b91505092915050565b5f6020828403121561248d5761248c61229f565b5b5f61249a848285016122e9565b91505092915050565b6124ac816122c2565b82525050565b5f6020820190506124c55f8301846124a3565b92915050565b5f80604083850312156124e1576124e061229f565b5b5f6124ee858286016122e9565b92505060206124ff858286016122e9565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561258b5780860481111561256757612566612509565b5b60018516156125765780820291505b808102905061258485612536565b945061254b565b94509492505050565b5f826125a3576001905061265e565b816125b0575f905061265e565b81600181146125c657600281146125d0576125ff565b600191505061265e565b60ff8411156125e2576125e1612509565b5b8360020a9150848211156125f9576125f8612509565b5b5061265e565b5060208310610133831016604e8410600b84101617156126345782820a90508381111561262f5761262e612509565b5b61265e565b6126418484846001612542565b9250905081840481111561265857612657612509565b5b81810290505b9392505050565b5f61266f826122fd565b915061267a83612419565b92506126a77fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612594565b905092915050565b5f6126b9826122fd565b91506126c4836122fd565b92508282026126d2816122fd565b915082820484148315176126e9576126e8612509565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6127246020836121ff565b915061272f826126f0565b602082019050919050565b5f6020820190508181035f83015261275181612718565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61278f826122fd565b915061279a836122fd565b9250826127aa576127a9612758565b5b828204905092915050565b7f5461782073686f756c64206265206c657373207468616e206f7220657175616c5f8201527f20746f2034350000000000000000000000000000000000000000000000000000602082015250565b5f61280f6026836121ff565b915061281a826127b5565b604082019050919050565b5f6020820190508181035f83015261283c81612803565b9050919050565b7f54726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f6128776017836121ff565b915061288282612843565b602082019050919050565b5f6020820190508181035f8301526128a48161286b565b9050919050565b5f815190506128b9816122d3565b92915050565b5f602082840312156128d4576128d361229f565b5b5f6128e1848285016128ab565b91505092915050565b5f6040820190506128fd5f8301856124a3565b61290a60208301846124a3565b9392505050565b5f819050919050565b5f819050919050565b5f61293d61293861293384612911565b61291a565b6122fd565b9050919050565b61294d81612923565b82525050565b5f60c0820190506129665f8301896124a3565b61297360208301886123a1565b6129806040830187612944565b61298d6060830186612944565b61299a60808301856124a3565b6129a760a08301846123a1565b979650505050505050565b5f815190506129c081612306565b92915050565b5f805f606084860312156129dd576129dc61229f565b5b5f6129ea868287016129b2565b93505060206129fb868287016129b2565b9250506040612a0c868287016129b2565b9150509250925092565b5f604082019050612a295f8301856124a3565b612a3660208301846123a1565b9392505050565b612a468161236e565b8114612a50575f80fd5b50565b5f81519050612a6181612a3d565b92915050565b5f60208284031215612a7c57612a7b61229f565b5b5f612a8984828501612a53565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612aec6024836121ff565b9150612af782612a92565b604082019050919050565b5f6020820190508181035f830152612b1981612ae0565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612b7a6022836121ff565b9150612b8582612b20565b604082019050919050565b5f6020820190508181035f830152612ba781612b6e565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612c086025836121ff565b9150612c1382612bae565b604082019050919050565b5f6020820190508181035f830152612c3581612bfc565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612c966023836121ff565b9150612ca182612c3c565b604082019050919050565b5f6020820190508181035f830152612cc381612c8a565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612d246029836121ff565b9150612d2f82612cca565b604082019050919050565b5f6020820190508181035f830152612d5181612d18565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c5f8201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b5f612dd86049836121ff565b9150612de382612d58565b606082019050919050565b5f6020820190508181035f830152612e0581612dcc565b9050919050565b7f4578636565647320746865205f6d6178547853697a652e0000000000000000005f82015250565b5f612e406017836121ff565b9150612e4b82612e0c565b602082019050919050565b5f6020820190508181035f830152612e6d81612e34565b9050919050565b5f612e7e826122fd565b9150612e89836122fd565b9250828201905080821115612ea157612ea0612509565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612edb601a836121ff565b9150612ee682612ea7565b602082019050919050565b5f6020820190508181035f830152612f0881612ecf565b9050919050565b5f612f19826122fd565b9150612f24836122fd565b9250828203905081811115612f3c57612f3b612509565b5b92915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612f9c6021836121ff565b9150612fa782612f42565b604082019050919050565b5f6020820190508181035f830152612fc981612f90565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61305c816122c2565b82525050565b5f61306d8383613053565b60208301905092915050565b5f602082019050919050565b5f61308f8261302a565b6130998185613034565b93506130a483613044565b805f5b838110156130d45781516130bb8882613062565b97506130c683613079565b9250506001810190506130a7565b5085935050505092915050565b5f60a0820190506130f45f8301886123a1565b6131016020830187612944565b81810360408301526131138186613085565b905061312260608301856124a3565b61312f60808301846123a1565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f61316d601b836121ff565b915061317882613139565b602082019050919050565b5f6020820190508181035f83015261319a81613161565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220192b97809e2568ce3082179f4456fd5f19fd085c50002d93b61e615552ac868a64736f6c6343000816003300000000000000000000000020e4ef1c7b31cd89d1ccccd489bfcfa1f07d6ec7

Deployed Bytecode

0x608060405260043610610122575f3560e01c80638cd09d501161009f578063b0c2b56111610063578063b0c2b561146103bf578063bf474bed146103e7578063c9567bf914610411578063dc1052e214610427578063dd62ed3e1461044f57610129565b80638cd09d50146102dd5780638da5cb5b146103055780638f9a55c01461032f57806395d89b4114610359578063a9059cbb1461038357610129565b806340cd6ed1116100e657806340cd6ed114610223578063511b5f611461024b57806370a0823114610275578063715018a6146102b1578063751039fc146102c757610129565b806306fdde031461012d578063095ea7b31461015757806318160ddd1461019357806323b872dd146101bd578063313ce567146101f957610129565b3661012957005b5f80fd5b348015610138575f80fd5b5061014161048b565b60405161014e919061227f565b60405180910390f35b348015610162575f80fd5b5061017d60048036038101906101789190612330565b6104c8565b60405161018a9190612388565b60405180910390f35b34801561019e575f80fd5b506101a76104e5565b6040516101b491906123b0565b60405180910390f35b3480156101c8575f80fd5b506101e360048036038101906101de91906123c9565b610508565b6040516101f09190612388565b60405180910390f35b348015610204575f80fd5b5061020d6105dc565b60405161021a9190612434565b60405180910390f35b34801561022e575f80fd5b506102496004803603810190610244919061244d565b6105e4565b005b348015610256575f80fd5b5061025f6106b6565b60405161026c91906123b0565b60405180910390f35b348015610280575f80fd5b5061029b60048036038101906102969190612478565b6106bc565b6040516102a891906123b0565b60405180910390f35b3480156102bc575f80fd5b506102c5610702565b005b3480156102d2575f80fd5b506102db610850565b005b3480156102e8575f80fd5b5061030360048036038101906102fe919061244d565b610998565b005b348015610310575f80fd5b50610319610a7a565b60405161032691906124b2565b60405180910390f35b34801561033a575f80fd5b50610343610aa1565b60405161035091906123b0565b60405180910390f35b348015610364575f80fd5b5061036d610aa7565b60405161037a919061227f565b60405180910390f35b34801561038e575f80fd5b506103a960048036038101906103a49190612330565b610ae4565b6040516103b69190612388565b60405180910390f35b3480156103ca575f80fd5b506103e560048036038101906103e0919061244d565b610b01565b005b3480156103f2575f80fd5b506103fb610bd3565b60405161040891906123b0565b60405180910390f35b34801561041c575f80fd5b50610425610bd9565b005b348015610432575f80fd5b5061044d6004803603810190610448919061244d565b6110fb565b005b34801561045a575f80fd5b50610475600480360381019061047091906124cb565b6111dd565b60405161048291906123b0565b60405180910390f35b60606040518060400160405280600c81526020017f444543454e5452414c4954450000000000000000000000000000000000000000815250905090565b5f6104db6104d461125f565b8484611266565b6001905092915050565b5f6009600a6104f49190612665565b630c84588061050391906126af565b905090565b5f610514848484611429565b6105d18461052061125f565b6105cc856040518060600160405280602881526020016131a26028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61058361125f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611d3f9092919063ffffffff16565b611266565b600190509392505050565b5f6009905090565b6105ec61125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610678576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161066f9061273a565b60405180910390fd5b6103e8816009600a61068a9190612665565b630c84588061069991906126af565b6106a391906126af565b6106ad9190612785565b60098190555050565b60085481565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61070a61125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610796576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078d9061273a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61085861125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108db9061273a565b60405180910390fd5b6009600a6108f29190612665565b630c84588061090191906126af565b6008819055506009600a6109159190612665565b630c84588061092491906126af565b6009819055505f60055f6101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a6109729190612665565b630c84588061098191906126af565b60405161098e91906123b0565b60405180910390a1565b6109a061125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a239061273a565b60405180910390fd5b602d811115610a70576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6790612825565b60405180910390fd5b8060078190555050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60095481565b60606040518060400160405280600681526020017f44454c4954450000000000000000000000000000000000000000000000000000815250905090565b5f610af7610af061125f565b8484611429565b6001905092915050565b610b0961125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8c9061273a565b60405180910390fd5b6103e8816009600a610ba79190612665565b630c845880610bb691906126af565b610bc091906126af565b610bca9190612785565b60088190555050565b600a5481565b610be161125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c649061273a565b60405180910390fd5b600c60149054906101000a900460ff1615610cbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb49061288d565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610d5930600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610d459190612665565b630c845880610d5491906126af565b611266565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dc3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610de791906128bf565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e6d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e9191906128bf565b6040518363ffffffff1660e01b8152600401610eae9291906128ea565b6020604051808303815f875af1158015610eca573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610eee91906128bf565b600c5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610f75306106bc565b5f80610f7f610a7a565b426040518863ffffffff1660e01b8152600401610fa196959493929190612953565b60606040518083038185885af1158015610fbd573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610fe291906129c6565b505050600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611082929190612a16565b6020604051808303815f875af115801561109e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110c29190612a67565b506001600c60166101000a81548160ff0219169083151502179055506001600c60146101000a81548160ff021916908315150217905550565b61110361125f565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461118f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111869061273a565b60405180910390fd5b602d8111156111d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ca90612825565b60405180910390fd5b8060068190555050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036112d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112cb90612b02565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611342576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133990612b90565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161141c91906123b0565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611497576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148e90612c1e565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611505576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114fc90612cac565b60405180910390fd5b5f8111611547576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153e90612d3a565b60405180910390fd5b5f611550610a7a565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156115be575061158e610a7a565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611a8f5760055f9054906101000a900460ff161561174957600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156116815750600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611748574360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205410611705576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116fc90612dee565b60405180910390fd5b4360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156117f25750600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611845575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561191257611872606461186460065485611da190919063ffffffff16565b611e1890919063ffffffff16565b90506008548211156118b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118b090612e56565b60405180910390fd5b600954826118c6856106bc565b6118d09190612e74565b1115611911576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190890612ef1565b60405180910390fd5b5b600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561199a57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156119ca576119c760646119b960075485611da190919063ffffffff16565b611e1890919063ffffffff16565b90505b5f6119d4306106bc565b9050600c60159054906101000a900460ff16158015611a3f5750600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611a575750600c60169054906101000a900460ff165b8015611a645750600a5481115b15611a8d57600a548310611a8257611a7d600a54611e61565b611a8c565b611a8b83611e61565b5b5b505b5f811115611b8e57611ae78160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120ee90919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611b8591906123b0565b60405180910390a35b611bde8260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461214b90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611c81611c35828461214b90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120ee90919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611d24848661214b90919063ffffffff16565b604051611d3191906123b0565b60405180910390a350505050565b5f838311158290611d86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d7d919061227f565b60405180910390fd5b505f8385611d949190612f0f565b9050809150509392505050565b5f808303611db1575f9050611e12565b5f8284611dbe91906126af565b9050828482611dcd9190612785565b14611e0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e0490612fb2565b60405180910390fd5b809150505b92915050565b5f611e5983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612194565b905092915050565b6001600c60156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611e9857611e97612fd0565b5b604051908082528060200260200182016040528015611ec65781602001602082028036833780820191505090505b50905030815f81518110611edd57611edc612ffd565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f81573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611fa591906128bf565b81600181518110611fb957611fb8612ffd565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061201f30600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611266565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f84600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b81526004016120a39594939291906130e1565b5f604051808303815f87803b1580156120ba575f80fd5b505af11580156120cc573d5f803e3d5ffd5b50505050505f600c60156101000a81548160ff02191690831515021790555050565b5f8082846120fc9190612e74565b905083811015612141576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161213890613183565b60405180910390fd5b8091505092915050565b5f61218c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d3f565b905092915050565b5f80831182906121da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121d1919061227f565b60405180910390fd5b505f83856121e89190612785565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561222c578082015181840152602081019050612211565b5f8484015250505050565b5f601f19601f8301169050919050565b5f612251826121f5565b61225b81856121ff565b935061226b81856020860161220f565b61227481612237565b840191505092915050565b5f6020820190508181035f8301526122978184612247565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6122cc826122a3565b9050919050565b6122dc816122c2565b81146122e6575f80fd5b50565b5f813590506122f7816122d3565b92915050565b5f819050919050565b61230f816122fd565b8114612319575f80fd5b50565b5f8135905061232a81612306565b92915050565b5f80604083850312156123465761234561229f565b5b5f612353858286016122e9565b92505060206123648582860161231c565b9150509250929050565b5f8115159050919050565b6123828161236e565b82525050565b5f60208201905061239b5f830184612379565b92915050565b6123aa816122fd565b82525050565b5f6020820190506123c35f8301846123a1565b92915050565b5f805f606084860312156123e0576123df61229f565b5b5f6123ed868287016122e9565b93505060206123fe868287016122e9565b925050604061240f8682870161231c565b9150509250925092565b5f60ff82169050919050565b61242e81612419565b82525050565b5f6020820190506124475f830184612425565b92915050565b5f602082840312156124625761246161229f565b5b5f61246f8482850161231c565b91505092915050565b5f6020828403121561248d5761248c61229f565b5b5f61249a848285016122e9565b91505092915050565b6124ac816122c2565b82525050565b5f6020820190506124c55f8301846124a3565b92915050565b5f80604083850312156124e1576124e061229f565b5b5f6124ee858286016122e9565b92505060206124ff858286016122e9565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561258b5780860481111561256757612566612509565b5b60018516156125765780820291505b808102905061258485612536565b945061254b565b94509492505050565b5f826125a3576001905061265e565b816125b0575f905061265e565b81600181146125c657600281146125d0576125ff565b600191505061265e565b60ff8411156125e2576125e1612509565b5b8360020a9150848211156125f9576125f8612509565b5b5061265e565b5060208310610133831016604e8410600b84101617156126345782820a90508381111561262f5761262e612509565b5b61265e565b6126418484846001612542565b9250905081840481111561265857612657612509565b5b81810290505b9392505050565b5f61266f826122fd565b915061267a83612419565b92506126a77fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612594565b905092915050565b5f6126b9826122fd565b91506126c4836122fd565b92508282026126d2816122fd565b915082820484148315176126e9576126e8612509565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6127246020836121ff565b915061272f826126f0565b602082019050919050565b5f6020820190508181035f83015261275181612718565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61278f826122fd565b915061279a836122fd565b9250826127aa576127a9612758565b5b828204905092915050565b7f5461782073686f756c64206265206c657373207468616e206f7220657175616c5f8201527f20746f2034350000000000000000000000000000000000000000000000000000602082015250565b5f61280f6026836121ff565b915061281a826127b5565b604082019050919050565b5f6020820190508181035f83015261283c81612803565b9050919050565b7f54726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f6128776017836121ff565b915061288282612843565b602082019050919050565b5f6020820190508181035f8301526128a48161286b565b9050919050565b5f815190506128b9816122d3565b92915050565b5f602082840312156128d4576128d361229f565b5b5f6128e1848285016128ab565b91505092915050565b5f6040820190506128fd5f8301856124a3565b61290a60208301846124a3565b9392505050565b5f819050919050565b5f819050919050565b5f61293d61293861293384612911565b61291a565b6122fd565b9050919050565b61294d81612923565b82525050565b5f60c0820190506129665f8301896124a3565b61297360208301886123a1565b6129806040830187612944565b61298d6060830186612944565b61299a60808301856124a3565b6129a760a08301846123a1565b979650505050505050565b5f815190506129c081612306565b92915050565b5f805f606084860312156129dd576129dc61229f565b5b5f6129ea868287016129b2565b93505060206129fb868287016129b2565b9250506040612a0c868287016129b2565b9150509250925092565b5f604082019050612a295f8301856124a3565b612a3660208301846123a1565b9392505050565b612a468161236e565b8114612a50575f80fd5b50565b5f81519050612a6181612a3d565b92915050565b5f60208284031215612a7c57612a7b61229f565b5b5f612a8984828501612a53565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612aec6024836121ff565b9150612af782612a92565b604082019050919050565b5f6020820190508181035f830152612b1981612ae0565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612b7a6022836121ff565b9150612b8582612b20565b604082019050919050565b5f6020820190508181035f830152612ba781612b6e565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612c086025836121ff565b9150612c1382612bae565b604082019050919050565b5f6020820190508181035f830152612c3581612bfc565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612c966023836121ff565b9150612ca182612c3c565b604082019050919050565b5f6020820190508181035f830152612cc381612c8a565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612d246029836121ff565b9150612d2f82612cca565b604082019050919050565b5f6020820190508181035f830152612d5181612d18565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c5f8201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b5f612dd86049836121ff565b9150612de382612d58565b606082019050919050565b5f6020820190508181035f830152612e0581612dcc565b9050919050565b7f4578636565647320746865205f6d6178547853697a652e0000000000000000005f82015250565b5f612e406017836121ff565b9150612e4b82612e0c565b602082019050919050565b5f6020820190508181035f830152612e6d81612e34565b9050919050565b5f612e7e826122fd565b9150612e89836122fd565b9250828201905080821115612ea157612ea0612509565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612edb601a836121ff565b9150612ee682612ea7565b602082019050919050565b5f6020820190508181035f830152612f0881612ecf565b9050919050565b5f612f19826122fd565b9150612f24836122fd565b9250828203905081811115612f3c57612f3b612509565b5b92915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612f9c6021836121ff565b9150612fa782612f42565b604082019050919050565b5f6020820190508181035f830152612fc981612f90565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61305c816122c2565b82525050565b5f61306d8383613053565b60208301905092915050565b5f602082019050919050565b5f61308f8261302a565b6130998185613034565b93506130a483613044565b805f5b838110156130d45781516130bb8882613062565b97506130c683613079565b9250506001810190506130a7565b5085935050505092915050565b5f60a0820190506130f45f8301886123a1565b6131016020830187612944565b81810360408301526131138186613085565b905061312260608301856124a3565b61312f60808301846123a1565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f61316d601b836121ff565b915061317882613139565b602082019050919050565b5f6020820190508181035f83015261319a81613161565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220192b97809e2568ce3082179f4456fd5f19fd085c50002d93b61e615552ac868a64736f6c63430008160033

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

00000000000000000000000020e4ef1c7b31cd89d1ccccd489bfcfa1f07d6ec7

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

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000020e4ef1c7b31cd89d1ccccd489bfcfa1f07d6ec7


Deployed Bytecode Sourcemap

3651:7339:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5243:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6076:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5520:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6245:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5429:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9923:118;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4392:47;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5623:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2732:148;;;;;;;;;;;;;:::i;:::-;;10049:194;;;;;;;;;;;;;:::i;:::-;;9637:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2518:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4446:51;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5334:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5750:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9805:110;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4504:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10251:699;;;;;;;;;;;;;:::i;:::-;;9475:154;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5925:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5243:83;5280:13;5313:5;;;;;;;;;;;;;;;;;5306:12;;5243:83;:::o;6076:161::-;6151:4;6168:39;6177:12;:10;:12::i;:::-;6191:7;6200:6;6168:8;:39::i;:::-;6225:4;6218:11;;6076:161;;;;:::o;5520:95::-;5573:7;4215:1;4270:2;:13;;;;:::i;:::-;4258:9;:25;;;;:::i;:::-;5593:14;;5520:95;:::o;6245:313::-;6343:4;6360:36;6370:6;6378:9;6389:6;6360:9;:36::i;:::-;6407:121;6416:6;6424:12;:10;:12::i;:::-;6438:89;6476:6;6438:89;;;;;;;;;;;;;;;;;:11;:19;6450:6;6438:19;;;;;;;;;;;;;;;:33;6458:12;:10;:12::i;:::-;6438:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6407:8;:121::i;:::-;6546:4;6539:11;;6245:313;;;;;:::o;5429:83::-;5470:5;4215:1;5488:16;;5429:83;:::o;9923:118::-;2655:12;:10;:12::i;:::-;2645:22;;:6;;;;;;;;;;:22;;;2637:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10029:4:::1;10019:7;4215:1;4270:2;:13;;;;:::i;:::-;4258:9;:25;;;;:::i;:::-;10009:17;;;;:::i;:::-;:24;;;;:::i;:::-;9992:14;:41;;;;9923:118:::0;:::o;4392:47::-;;;;:::o;5623:119::-;5689:7;5716:9;:18;5726:7;5716:18;;;;;;;;;;;;;;;;5709:25;;5623:119;;;:::o;2732:148::-;2655:12;:10;:12::i;:::-;2645:22;;:6;;;;;;;;;;:22;;;2637:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2839:1:::1;2802:40;;2823:6;::::0;::::1;;;;;;;;2802:40;;;;;;;;;;;;2870:1;2853:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2732:148::o:0;10049:194::-;2655:12;:10;:12::i;:::-;2645:22;;:6;;;;;;;;;;:22;;;2637:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4215:1:::1;4270:2;:13;;;;:::i;:::-;4258:9;:25;;;;:::i;:::-;10102:10;:20;;;;4215:1;4270:2;:13;;;;:::i;:::-;4258:9;:25;;;;:::i;:::-;10133:14;:22;;;;10187:5;10166:20;;:26;;;;;;;;;;;;;;;;;;10208:27;4215:1;4270:2;:13;;;;:::i;:::-;4258:9;:25;;;;:::i;:::-;10208:27;;;;;;:::i;:::-;;;;;;;;10049:194::o:0;9637:156::-;2655:12;:10;:12::i;:::-;2645:22;;:6;;;;;;;;;;:22;;;2637:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9715:2:::1;9708:3;:9;;9700:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;9782:3;9771:8;:14;;;;9637:156:::0;:::o;2518:79::-;2556:7;2583:6;;;;;;;;;;;2576:13;;2518:79;:::o;4446:51::-;;;;:::o;5334:87::-;5373:13;5406:7;;;;;;;;;;;;;;;;;5399:14;;5334:87;:::o;5750:167::-;5828:4;5845:42;5855:12;:10;:12::i;:::-;5869:9;5880:6;5845:9;:42::i;:::-;5905:4;5898:11;;5750:167;;;;:::o;9805:110::-;2655:12;:10;:12::i;:::-;2645:22;;:6;;;;;;;;;;:22;;;2637:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9903:4:::1;9893:7;4215:1;4270:2;:13;;;;:::i;:::-;4258:9;:25;;;;:::i;:::-;9883:17;;;;:::i;:::-;:24;;;;:::i;:::-;9870:10;:37;;;;9805:110:::0;:::o;4504:52::-;;;;:::o;10251:699::-;2655:12;:10;:12::i;:::-;2645:22;;:6;;;;;;;;;;:22;;;2637:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10315:11:::1;;;;;;;;;;;10314:12;10306:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;10415:42;10364:15;;:108;;;;;;;;;;;;;;;;;;10483:58;10500:4;10515:15;;;;;;;;;;;4215:1;4270:2;:13;;;;:::i;:::-;4258:9;:25;;;;:::i;:::-;10483:8;:58::i;:::-;10586:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10568:55;;;10632:4;10639:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10568:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10552:13;;:110;;;;;;;;;;;;;;;;;;10673:15;;;;;;;;;;;:31;;;10712:21;10743:4;10749:24;10767:4;10749:9;:24::i;:::-;10774:1;10776::::0;10778:7:::1;:5;:7::i;:::-;10786:15;10673:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;10820:13;;;;;;;;;;;10813:29;;;10851:15;;;;;;;;;;;10869:14;10813:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10909:4;10895:11;;:18;;;;;;;;;;;;;;;;;;10938:4;10924:11;;:18;;;;;;;;;;;;;;;;;;10251:699::o:0;9475:154::-;2655:12;:10;:12::i;:::-;2645:22;;:6;;;;;;;;;;:22;;;2637:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9552:2:::1;9545:3;:9;;9537:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;9618:3;9608:7;:13;;;;9475:154:::0;:::o;5925:143::-;6006:7;6033:11;:18;6045:5;6033:18;;;;;;;;;;;;;;;:27;6052:7;6033:27;;;;;;;;;;;;;;;;6026:34;;5925:143;;;;:::o;273:98::-;326:7;353:10;346:17;;273:98;:::o;6566:335::-;6676:1;6659:19;;:5;:19;;;6651:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6757:1;6738:21;;:7;:21;;;6730:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6839:6;6809:11;:18;6821:5;6809:18;;;;;;;;;;;;;;;:27;6828:7;6809:27;;;;;;;;;;;;;;;:36;;;;6877:7;6861:32;;6870:5;6861:32;;;6886:6;6861:32;;;;;;:::i;:::-;;;;;;;;6566:335;;;:::o;6909:2061::-;7013:1;6997:18;;:4;:18;;;6989:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7090:1;7076:16;;:2;:16;;;7068:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7160:1;7151:6;:10;7143:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7220:17;7266:7;:5;:7::i;:::-;7258:15;;:4;:15;;;;:32;;;;;7283:7;:5;:7::i;:::-;7277:13;;:2;:13;;;;7258:32;7254:1344;;;7311:20;;;;;;;;;;;7307:388;;;7370:15;;;;;;;;;;;7356:30;;:2;:30;;;;:62;;;;;7404:13;;;;;;;;;;;7390:28;;:2;:28;;;;7356:62;7352:328;;;7493:12;7451:28;:39;7480:9;7451:39;;;;;;;;;;;;;;;;:54;7443:140;;;;;;;;;;;;:::i;:::-;;;;;;;;;7648:12;7606:28;:39;7635:9;7606:39;;;;;;;;;;;;;;;:54;;;;7352:328;7307:388;7723:13;;;;;;;;;;;7715:21;;:4;:21;;;:55;;;;;7754:15;;;;;;;;;;;7740:30;;:2;:30;;;;7715:55;:82;;;;;7775:18;:22;7794:2;7775:22;;;;;;;;;;;;;;;;;;;;;;;;;7774:23;7715:82;7711:336;;;7830:28;7854:3;7830:19;7841:7;;7830:6;:10;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;7818:40;;7895:10;;7885:6;:20;;7877:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;7986:14;;7976:6;7960:13;7970:2;7960:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;7952:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;7711:336;8073:13;;;;;;;;;;;8067:19;;:2;:19;;;:44;;;;;8106:4;8090:21;;:4;:21;;;;8067:44;8063:126;;;8144:29;8169:3;8144:20;8155:8;;8144:6;:10;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;8132:41;;8063:126;8205:28;8236:24;8254:4;8236:9;:24::i;:::-;8205:55;;8280:6;;;;;;;;;;;8279:7;:30;;;;;8296:13;;;;;;;;;;;8290:19;;:2;:19;;;8279:30;:45;;;;;8313:11;;;;;;;;;;;8279:45;:89;;;;;8351:17;;8328:20;:40;8279:89;8275:312;;;8402:17;;8392:6;:27;8389:183;;8444:35;8461:17;;8444:16;:35::i;:::-;8389:183;;;8528:24;8545:6;8528:16;:24::i;:::-;8389:183;8275:312;7292:1306;7254:1344;8625:1;8613:9;:13;8610:171;;;8670:39;8699:9;8670;:24;8688:4;8670:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;8643:9;:24;8661:4;8643:24;;;;;;;;;;;;;;;:66;;;;8752:4;8729:40;;8738:4;8729:40;;;8759:9;8729:40;;;;;;:::i;:::-;;;;;;;;8610:171;8811:27;8831:6;8811:9;:15;8821:4;8811:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;8793:9;:15;8803:4;8793:15;;;;;;;;;;;;;;;:45;;;;8865:40;8883:21;8894:9;8883:6;:10;;:21;;;;:::i;:::-;8865:9;:13;8875:2;8865:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;8849:9;:13;8859:2;8849:13;;;;;;;;;;;;;;;:56;;;;8936:2;8921:41;;8930:4;8921:41;;;8940:21;8951:9;8940:6;:10;;:21;;;;:::i;:::-;8921:41;;;;;;:::i;:::-;;;;;;;;6978:1992;6909:2061;;;:::o;1410:190::-;1496:7;1529:1;1524;:6;;1532:12;1516:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1556:9;1572:1;1568;:5;;;;:::i;:::-;1556:17;;1591:1;1584:8;;;1410:190;;;;;:::o;1608:246::-;1666:7;1695:1;1690;:6;1686:47;;1720:1;1713:8;;;;1686:47;1743:9;1759:1;1755;:5;;;;:::i;:::-;1743:17;;1788:1;1783;1779;:5;;;;:::i;:::-;:10;1771:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1845:1;1838:8;;;1608:246;;;;;:::o;1862:132::-;1920:7;1947:39;1951:1;1954;1947:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1940:46;;1862:132;;;;:::o;8978:489::-;4847:4;4838:6;;:13;;;;;;;;;;;;;;;;;;9056:21:::1;9094:1;9080:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9056:40;;9125:4;9107;9112:1;9107:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;9151:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9141:4;9146:1;9141:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;9184:62;9201:4;9216:15;;;;;;;;;;;9234:11;9184:8;:62::i;:::-;9257:15;;;;;;;;;;;:66;;;9338:11;9364:1;9380:4;9407:10;;;;;;;;;;;9433:15;9257:202;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;9045:422;4883:5:::0;4874:6;;:14;;;;;;;;;;;;;;;;;;8978:489;:::o;1079:179::-;1137:7;1157:9;1173:1;1169;:5;;;;:::i;:::-;1157:17;;1198:1;1193;:6;;1185:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1249:1;1242:8;;;1079:179;;;;:::o;1266:136::-;1324:7;1351:43;1355:1;1358;1351:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1344:50;;1266:136;;;;:::o;2002:189::-;2088:7;2120:1;2116;:5;2123:12;2108:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2147:9;2163:1;2159;:5;;;;:::i;:::-;2147:17;;2182:1;2175:8;;;2002: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:::-;5247:6;5296:2;5284:9;5275:7;5271:23;5267:32;5264:119;;;5302:79;;:::i;:::-;5264:119;5422:1;5447:53;5492:7;5483:6;5472:9;5468:22;5447:53;:::i;:::-;5437:63;;5393:117;5188:329;;;;:::o;5523:118::-;5610:24;5628:5;5610:24;:::i;:::-;5605:3;5598:37;5523:118;;:::o;5647:222::-;5740:4;5778:2;5767:9;5763:18;5755:26;;5791:71;5859:1;5848:9;5844:17;5835:6;5791:71;:::i;:::-;5647:222;;;;:::o;5875:474::-;5943:6;5951;6000:2;5988:9;5979:7;5975:23;5971:32;5968:119;;;6006:79;;:::i;:::-;5968:119;6126:1;6151:53;6196:7;6187:6;6176:9;6172:22;6151:53;:::i;:::-;6141:63;;6097:117;6253:2;6279:53;6324:7;6315:6;6304:9;6300:22;6279:53;:::i;:::-;6269:63;;6224:118;5875:474;;;;;:::o;6355:180::-;6403:77;6400:1;6393:88;6500:4;6497:1;6490:15;6524:4;6521:1;6514:15;6541:102;6583:8;6630:5;6627:1;6623:13;6602:34;;6541:102;;;:::o;6649:848::-;6710:5;6717:4;6741:6;6732:15;;6765:5;6756:14;;6779:712;6800:1;6790:8;6787:15;6779:712;;;6895:4;6890:3;6886:14;6880:4;6877:24;6874:50;;;6904:18;;:::i;:::-;6874:50;6954:1;6944:8;6940:16;6937:451;;;7369:4;7362:5;7358:16;7349:25;;6937:451;7419:4;7413;7409:15;7401:23;;7449:32;7472:8;7449:32;:::i;:::-;7437:44;;6779:712;;;6649:848;;;;;;;:::o;7503:1073::-;7557:5;7748:8;7738:40;;7769:1;7760:10;;7771:5;;7738:40;7797:4;7787:36;;7814:1;7805:10;;7816:5;;7787:36;7883:4;7931:1;7926:27;;;;7967:1;7962:191;;;;7876:277;;7926:27;7944:1;7935:10;;7946:5;;;7962:191;8007:3;7997:8;7994:17;7991:43;;;8014:18;;:::i;:::-;7991:43;8063:8;8060:1;8056:16;8047:25;;8098:3;8091:5;8088:14;8085:40;;;8105:18;;:::i;:::-;8085:40;8138:5;;;7876:277;;8262:2;8252:8;8249:16;8243:3;8237:4;8234:13;8230:36;8212:2;8202:8;8199:16;8194:2;8188:4;8185:12;8181:35;8165:111;8162:246;;;8318:8;8312:4;8308:19;8299:28;;8353:3;8346:5;8343:14;8340:40;;;8360:18;;:::i;:::-;8340:40;8393:5;;8162:246;8433:42;8471:3;8461:8;8455:4;8452:1;8433:42;:::i;:::-;8418:57;;;;8507:4;8502:3;8498:14;8491:5;8488:25;8485:51;;;8516:18;;:::i;:::-;8485:51;8565:4;8558:5;8554:16;8545:25;;7503:1073;;;;;;:::o;8582:281::-;8640:5;8664:23;8682:4;8664:23;:::i;:::-;8656:31;;8708:25;8724:8;8708:25;:::i;:::-;8696:37;;8752:104;8789:66;8779:8;8773:4;8752:104;:::i;:::-;8743:113;;8582:281;;;;:::o;8869:410::-;8909:7;8932:20;8950:1;8932:20;:::i;:::-;8927:25;;8966:20;8984:1;8966:20;:::i;:::-;8961:25;;9021:1;9018;9014:9;9043:30;9061:11;9043:30;:::i;:::-;9032:41;;9222:1;9213:7;9209:15;9206:1;9203:22;9183:1;9176:9;9156:83;9133:139;;9252:18;;:::i;:::-;9133:139;8917:362;8869:410;;;;:::o;9285:182::-;9425:34;9421:1;9413:6;9409:14;9402:58;9285:182;:::o;9473:366::-;9615:3;9636:67;9700:2;9695:3;9636:67;:::i;:::-;9629:74;;9712:93;9801:3;9712:93;:::i;:::-;9830:2;9825:3;9821:12;9814:19;;9473:366;;;:::o;9845:419::-;10011:4;10049:2;10038:9;10034:18;10026:26;;10098:9;10092:4;10088:20;10084:1;10073:9;10069:17;10062:47;10126:131;10252:4;10126:131;:::i;:::-;10118:139;;9845:419;;;:::o;10270:180::-;10318:77;10315:1;10308:88;10415:4;10412:1;10405:15;10439:4;10436:1;10429:15;10456:185;10496:1;10513:20;10531:1;10513:20;:::i;:::-;10508:25;;10547:20;10565:1;10547:20;:::i;:::-;10542:25;;10586:1;10576:35;;10591:18;;:::i;:::-;10576:35;10633:1;10630;10626:9;10621:14;;10456:185;;;;:::o;10647:225::-;10787:34;10783:1;10775:6;10771:14;10764:58;10856:8;10851:2;10843:6;10839:15;10832:33;10647:225;:::o;10878:366::-;11020:3;11041:67;11105:2;11100:3;11041:67;:::i;:::-;11034:74;;11117:93;11206:3;11117:93;:::i;:::-;11235:2;11230:3;11226:12;11219:19;;10878:366;;;:::o;11250:419::-;11416:4;11454:2;11443:9;11439:18;11431:26;;11503:9;11497:4;11493:20;11489:1;11478:9;11474:17;11467:47;11531:131;11657:4;11531:131;:::i;:::-;11523:139;;11250:419;;;:::o;11675:173::-;11815:25;11811:1;11803:6;11799:14;11792:49;11675:173;:::o;11854:366::-;11996:3;12017:67;12081:2;12076:3;12017:67;:::i;:::-;12010:74;;12093:93;12182:3;12093:93;:::i;:::-;12211:2;12206:3;12202:12;12195:19;;11854:366;;;:::o;12226:419::-;12392:4;12430:2;12419:9;12415:18;12407:26;;12479:9;12473:4;12469:20;12465:1;12454:9;12450:17;12443:47;12507:131;12633:4;12507:131;:::i;:::-;12499:139;;12226:419;;;:::o;12651:143::-;12708:5;12739:6;12733:13;12724:22;;12755:33;12782:5;12755:33;:::i;:::-;12651:143;;;;:::o;12800:351::-;12870:6;12919:2;12907:9;12898:7;12894:23;12890:32;12887:119;;;12925:79;;:::i;:::-;12887:119;13045:1;13070:64;13126:7;13117:6;13106:9;13102:22;13070:64;:::i;:::-;13060:74;;13016:128;12800:351;;;;:::o;13157:332::-;13278:4;13316:2;13305:9;13301:18;13293:26;;13329:71;13397:1;13386:9;13382:17;13373:6;13329:71;:::i;:::-;13410:72;13478:2;13467:9;13463:18;13454:6;13410:72;:::i;:::-;13157:332;;;;;:::o;13495:85::-;13540:7;13569:5;13558:16;;13495:85;;;:::o;13586:60::-;13614:3;13635:5;13628:12;;13586:60;;;:::o;13652:158::-;13710:9;13743:61;13761:42;13770:32;13796:5;13770:32;:::i;:::-;13761:42;:::i;:::-;13743:61;:::i;:::-;13730:74;;13652:158;;;:::o;13816:147::-;13911:45;13950:5;13911:45;:::i;:::-;13906:3;13899:58;13816:147;;:::o;13969:807::-;14218:4;14256:3;14245:9;14241:19;14233:27;;14270:71;14338:1;14327:9;14323:17;14314:6;14270:71;:::i;:::-;14351:72;14419:2;14408:9;14404:18;14395:6;14351:72;:::i;:::-;14433:80;14509:2;14498:9;14494:18;14485:6;14433:80;:::i;:::-;14523;14599:2;14588:9;14584:18;14575:6;14523:80;:::i;:::-;14613:73;14681:3;14670:9;14666:19;14657:6;14613:73;:::i;:::-;14696;14764:3;14753:9;14749:19;14740:6;14696:73;:::i;:::-;13969:807;;;;;;;;;:::o;14782:143::-;14839:5;14870:6;14864:13;14855:22;;14886:33;14913:5;14886:33;:::i;:::-;14782:143;;;;:::o;14931:663::-;15019:6;15027;15035;15084:2;15072:9;15063:7;15059:23;15055:32;15052:119;;;15090:79;;:::i;:::-;15052:119;15210:1;15235:64;15291:7;15282:6;15271:9;15267:22;15235:64;:::i;:::-;15225:74;;15181:128;15348:2;15374:64;15430:7;15421:6;15410:9;15406:22;15374:64;:::i;:::-;15364:74;;15319:129;15487:2;15513:64;15569:7;15560:6;15549:9;15545:22;15513:64;:::i;:::-;15503:74;;15458:129;14931:663;;;;;:::o;15600:332::-;15721:4;15759:2;15748:9;15744:18;15736:26;;15772:71;15840:1;15829:9;15825:17;15816:6;15772:71;:::i;:::-;15853:72;15921:2;15910:9;15906:18;15897:6;15853:72;:::i;:::-;15600:332;;;;;:::o;15938:116::-;16008:21;16023:5;16008:21;:::i;:::-;16001:5;15998:32;15988:60;;16044:1;16041;16034:12;15988:60;15938:116;:::o;16060:137::-;16114:5;16145:6;16139:13;16130:22;;16161:30;16185:5;16161:30;:::i;:::-;16060:137;;;;:::o;16203:345::-;16270:6;16319:2;16307:9;16298:7;16294:23;16290:32;16287:119;;;16325:79;;:::i;:::-;16287:119;16445:1;16470:61;16523:7;16514:6;16503:9;16499:22;16470:61;:::i;:::-;16460:71;;16416:125;16203:345;;;;:::o;16554:223::-;16694:34;16690:1;16682:6;16678:14;16671:58;16763:6;16758:2;16750:6;16746:15;16739:31;16554:223;:::o;16783:366::-;16925:3;16946:67;17010:2;17005:3;16946:67;:::i;:::-;16939:74;;17022:93;17111:3;17022:93;:::i;:::-;17140:2;17135:3;17131:12;17124:19;;16783:366;;;:::o;17155:419::-;17321:4;17359:2;17348:9;17344:18;17336:26;;17408:9;17402:4;17398:20;17394:1;17383:9;17379:17;17372:47;17436:131;17562:4;17436:131;:::i;:::-;17428:139;;17155:419;;;:::o;17580:221::-;17720:34;17716:1;17708:6;17704:14;17697:58;17789:4;17784:2;17776:6;17772:15;17765:29;17580:221;:::o;17807:366::-;17949:3;17970:67;18034:2;18029:3;17970:67;:::i;:::-;17963:74;;18046:93;18135:3;18046:93;:::i;:::-;18164:2;18159:3;18155:12;18148:19;;17807:366;;;:::o;18179:419::-;18345:4;18383:2;18372:9;18368:18;18360:26;;18432:9;18426:4;18422:20;18418:1;18407:9;18403:17;18396:47;18460:131;18586:4;18460:131;:::i;:::-;18452:139;;18179:419;;;:::o;18604:224::-;18744:34;18740:1;18732:6;18728:14;18721:58;18813:7;18808:2;18800:6;18796:15;18789:32;18604:224;:::o;18834:366::-;18976:3;18997:67;19061:2;19056:3;18997:67;:::i;:::-;18990:74;;19073:93;19162:3;19073:93;:::i;:::-;19191:2;19186:3;19182:12;19175:19;;18834:366;;;:::o;19206:419::-;19372:4;19410:2;19399:9;19395:18;19387:26;;19459:9;19453:4;19449:20;19445:1;19434:9;19430:17;19423:47;19487:131;19613:4;19487:131;:::i;:::-;19479:139;;19206:419;;;:::o;19631:222::-;19771:34;19767:1;19759:6;19755:14;19748:58;19840:5;19835:2;19827:6;19823:15;19816:30;19631:222;:::o;19859:366::-;20001:3;20022:67;20086:2;20081:3;20022:67;:::i;:::-;20015:74;;20098:93;20187:3;20098:93;:::i;:::-;20216:2;20211:3;20207:12;20200:19;;19859:366;;;:::o;20231:419::-;20397:4;20435:2;20424:9;20420:18;20412:26;;20484:9;20478:4;20474:20;20470:1;20459:9;20455:17;20448:47;20512:131;20638:4;20512:131;:::i;:::-;20504:139;;20231:419;;;:::o;20656:228::-;20796:34;20792:1;20784:6;20780:14;20773:58;20865:11;20860:2;20852:6;20848:15;20841:36;20656:228;:::o;20890:366::-;21032:3;21053:67;21117:2;21112:3;21053:67;:::i;:::-;21046:74;;21129:93;21218:3;21129:93;:::i;:::-;21247:2;21242:3;21238:12;21231:19;;20890:366;;;:::o;21262:419::-;21428:4;21466:2;21455:9;21451:18;21443:26;;21515:9;21509:4;21505:20;21501:1;21490:9;21486:17;21479:47;21543:131;21669:4;21543:131;:::i;:::-;21535:139;;21262:419;;;:::o;21687:297::-;21827:34;21823:1;21815:6;21811:14;21804:58;21896:34;21891:2;21883:6;21879:15;21872:59;21965:11;21960:2;21952:6;21948:15;21941:36;21687:297;:::o;21990:366::-;22132:3;22153:67;22217:2;22212:3;22153:67;:::i;:::-;22146:74;;22229:93;22318:3;22229:93;:::i;:::-;22347:2;22342:3;22338:12;22331:19;;21990:366;;;:::o;22362:419::-;22528:4;22566:2;22555:9;22551:18;22543:26;;22615:9;22609:4;22605:20;22601:1;22590:9;22586:17;22579:47;22643:131;22769:4;22643:131;:::i;:::-;22635:139;;22362:419;;;:::o;22787:173::-;22927:25;22923:1;22915:6;22911:14;22904:49;22787:173;:::o;22966:366::-;23108:3;23129:67;23193:2;23188:3;23129:67;:::i;:::-;23122:74;;23205:93;23294:3;23205:93;:::i;:::-;23323:2;23318:3;23314:12;23307:19;;22966:366;;;:::o;23338:419::-;23504:4;23542:2;23531:9;23527:18;23519:26;;23591:9;23585:4;23581:20;23577:1;23566:9;23562:17;23555:47;23619:131;23745:4;23619:131;:::i;:::-;23611:139;;23338:419;;;:::o;23763:191::-;23803:3;23822:20;23840:1;23822:20;:::i;:::-;23817:25;;23856:20;23874:1;23856:20;:::i;:::-;23851:25;;23899:1;23896;23892:9;23885:16;;23920:3;23917:1;23914:10;23911:36;;;23927:18;;:::i;:::-;23911:36;23763:191;;;;:::o;23960:176::-;24100:28;24096:1;24088:6;24084:14;24077:52;23960:176;:::o;24142:366::-;24284:3;24305:67;24369:2;24364:3;24305:67;:::i;:::-;24298:74;;24381:93;24470:3;24381:93;:::i;:::-;24499:2;24494:3;24490:12;24483:19;;24142:366;;;:::o;24514:419::-;24680:4;24718:2;24707:9;24703:18;24695:26;;24767:9;24761:4;24757:20;24753:1;24742:9;24738:17;24731:47;24795:131;24921:4;24795:131;:::i;:::-;24787:139;;24514:419;;;:::o;24939:194::-;24979:4;24999:20;25017:1;24999:20;:::i;:::-;24994:25;;25033:20;25051:1;25033:20;:::i;:::-;25028:25;;25077:1;25074;25070:9;25062:17;;25101:1;25095:4;25092:11;25089:37;;;25106:18;;:::i;:::-;25089:37;24939:194;;;;:::o;25139:220::-;25279:34;25275:1;25267:6;25263:14;25256:58;25348:3;25343:2;25335:6;25331:15;25324:28;25139:220;:::o;25365:366::-;25507:3;25528:67;25592:2;25587:3;25528:67;:::i;:::-;25521:74;;25604:93;25693:3;25604:93;:::i;:::-;25722:2;25717:3;25713:12;25706:19;;25365:366;;;:::o;25737:419::-;25903:4;25941:2;25930:9;25926:18;25918:26;;25990:9;25984:4;25980:20;25976:1;25965:9;25961:17;25954:47;26018:131;26144:4;26018:131;:::i;:::-;26010:139;;25737:419;;;:::o;26162:180::-;26210:77;26207:1;26200:88;26307:4;26304:1;26297:15;26331:4;26328:1;26321:15;26348:180;26396:77;26393:1;26386:88;26493:4;26490:1;26483:15;26517:4;26514:1;26507:15;26534:114;26601:6;26635:5;26629:12;26619:22;;26534:114;;;:::o;26654:184::-;26753:11;26787:6;26782:3;26775:19;26827:4;26822:3;26818:14;26803:29;;26654:184;;;;:::o;26844:132::-;26911:4;26934:3;26926:11;;26964:4;26959:3;26955:14;26947:22;;26844:132;;;:::o;26982:108::-;27059:24;27077:5;27059:24;:::i;:::-;27054:3;27047:37;26982:108;;:::o;27096:179::-;27165:10;27186:46;27228:3;27220:6;27186:46;:::i;:::-;27264:4;27259:3;27255:14;27241:28;;27096:179;;;;:::o;27281:113::-;27351:4;27383;27378:3;27374:14;27366:22;;27281:113;;;:::o;27430:732::-;27549:3;27578:54;27626:5;27578:54;:::i;:::-;27648:86;27727:6;27722:3;27648:86;:::i;:::-;27641:93;;27758:56;27808:5;27758:56;:::i;:::-;27837:7;27868:1;27853:284;27878:6;27875:1;27872:13;27853:284;;;27954:6;27948:13;27981:63;28040:3;28025:13;27981:63;:::i;:::-;27974:70;;28067:60;28120:6;28067:60;:::i;:::-;28057:70;;27913:224;27900:1;27897;27893:9;27888:14;;27853:284;;;27857:14;28153:3;28146:10;;27554:608;;;27430:732;;;;:::o;28168:831::-;28431:4;28469:3;28458:9;28454:19;28446:27;;28483:71;28551:1;28540:9;28536:17;28527:6;28483:71;:::i;:::-;28564:80;28640:2;28629:9;28625:18;28616:6;28564:80;:::i;:::-;28691:9;28685:4;28681:20;28676:2;28665:9;28661:18;28654:48;28719:108;28822:4;28813:6;28719:108;:::i;:::-;28711:116;;28837:72;28905:2;28894:9;28890:18;28881:6;28837:72;:::i;:::-;28919:73;28987:3;28976:9;28972:19;28963:6;28919:73;:::i;:::-;28168:831;;;;;;;;:::o;29005:177::-;29145:29;29141:1;29133:6;29129:14;29122:53;29005:177;:::o;29188:366::-;29330:3;29351:67;29415:2;29410:3;29351:67;:::i;:::-;29344:74;;29427:93;29516:3;29427:93;:::i;:::-;29545:2;29540:3;29536:12;29529:19;;29188:366;;;:::o;29560:419::-;29726:4;29764:2;29753:9;29749:18;29741:26;;29813:9;29807:4;29803:20;29799:1;29788:9;29784:17;29777:47;29841:131;29967:4;29841:131;:::i;:::-;29833:139;;29560:419;;;:::o

Swarm Source

ipfs://192b97809e2568ce3082179f4456fd5f19fd085c50002d93b61e615552ac868a
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.