ETH Price: $2,416.43 (+0.61%)

Token

Etherblend (EBLEND)
 

Overview

Max Total Supply

100,000,000 EBLEND

Holders

70

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
0.000000001 EBLEND

Value
$0.00
0xb067F89e00A76558071084A22BAb126D6E2B24d4
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:
ETHERBLEND

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

/**

Etheblend - Redefines Confidential Crypto Swaps in Telegram

Website     : https://etherblend.io
Twitter     : https://twitter.com/etherblend
Telegram    : https://t.me/etherblend
Utillity    : https://t.me/etherblend_bot

**/


// SPDX-License-Identifier: MIT

pragma solidity 0.8.19;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

contract ETHERBLEND 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;
    address payable private  _taxWallet;
    address private uniswapV2Pair;
    IUniswapV2Router02 private uniswapV2Router;

    uint256 private constant _initialBuyTax =25;
    uint256 private constant _initialSellTax=25;
    uint256 private constant _reduceBuyTaxAt=35;
    uint256 private constant _reduceSellTaxAt=35;
    uint256 private constant _prevSwapBefore=35;
    uint256 private _finalBuyTax=5;
    uint256 private _finalSellTax=5;
    uint256 private _buyCount=0;
    uint256 private _countTax;
    
    string  private constant _name   = unicode"Etherblend";
    string  private constant _symbol = unicode"EBLEND";
    uint8   private constant _decimals = 9;
    uint256 private constant _tTotal = 100000000 * 10**_decimals;
    uint256 private constant _countTrigger = 81000 * 10**_decimals;
    uint256 public  constant _txSwapThreshold = 200000 * 10**_decimals;
    uint256 public  constant _maxTaxSwap = 1000000 * 10**_decimals;
    uint256 public _maxWalletSize = 1000000 * 10**_decimals;   
    uint256 public _maxTxAmount = 1000000 * 10**_decimals;

    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

    event FinalTax (uint256 _valueBuy, uint256 _valueSell);
    event TradingActive (bool _tradingOpen,bool _swapEnabled);
    event maxAmount(uint256 _value);

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor (address taxWallet) {
         _taxWallet = payable(taxWallet);
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[_taxWallet] = true;
        _isExcludedFromFee[address(this)] = 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) && spender != address(0), "ERC20: approve 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) && to != address(0), "ERC20: transfer the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;

        if (from != owner() && to != owner()) { 

            if(!tradingOpen){
                require(
                    _isExcludedFromFee[to] || _isExcludedFromFee[from],
                    "trading not yet open"
                );
            }

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                _buyCount++;
            }
            
            if ( to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax)/100;    
            } 
            else if (from == uniswapV2Pair && to!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax)/100;
            }

            _countTax += taxAmount;
            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap && 
                to == uniswapV2Pair && 
                swapEnabled && 
                contractTokenBalance > _txSwapThreshold && 
                _buyCount > _prevSwapBefore &&
                _countTax > _countTrigger
            ){
                uint256 getMinValue = (contractTokenBalance > _maxTaxSwap)?_maxTaxSwap:contractTokenBalance;
                swapTokensForEth((amount > getMinValue)?getMinValue:amount);
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
                _countTax = 0;
            }
        }

        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 sendETHToFee(uint256 amount) private {
        _taxWallet.transfer(amount);
    }

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

    function initPair () external onlyOwner {
        require(!tradingOpen,"init already called");
        uint256 tokenAmount = balanceOf(address(this)).sub(_tTotal.mul(_initialBuyTax).div(100));
        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),
            tokenAmount,
            0,
            0,
            _msgSender(),
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); 
    }

    function enableTrading () external onlyOwner {
        require(!tradingOpen,"trading already open");
        swapEnabled = true;
        tradingOpen = true;
        emit TradingActive (tradingOpen,swapEnabled);
    }

    function clearLimit () external onlyOwner {
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
        emit maxAmount (_tTotal);
    }
    
    function updateFinalTax (uint256 _valueBuy, uint256 _valueSell) external onlyOwner {
        require(_valueBuy <= 30 && _valueSell <= 30 && tradingOpen, "Exceeds value");
        _finalBuyTax = _valueBuy;
        _finalSellTax = _valueSell;
        emit FinalTax(_valueBuy, _valueSell);
    }

    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":"_valueBuy","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_valueSell","type":"uint256"}],"name":"FinalTax","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":false,"internalType":"bool","name":"_tradingOpen","type":"bool"},{"indexed":false,"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"TradingActive","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"maxAmount","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_txSwapThreshold","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":"clearLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"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"},{"inputs":[{"internalType":"uint256","name":"_valueBuy","type":"uint256"},{"internalType":"uint256","name":"_valueSell","type":"uint256"}],"name":"updateFinalTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526005600755600560085560006009556009600a620000239190620005c8565b620f424062000033919062000619565b600b556009600a620000469190620005c8565b620f424062000056919062000619565b600c556000600d60016101000a81548160ff0219169083151502179055506000600d60026101000a81548160ff0219169083151502179055503480156200009c57600080fd5b50604051620039a4380380620039a48339818101604052810190620000c29190620006ce565b6000620000d4620003fd60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35080600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a620001c39190620005c8565b6305f5e100620001d4919062000619565b60016000620001e8620003fd60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600360006200023c6200040560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160036000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200036f620003fd60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a620003ce9190620005c8565b6305f5e100620003df919062000619565b604051620003ee919062000711565b60405180910390a3506200072e565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115620004bc578086048111156200049457620004936200042e565b5b6001851615620004a45780820291505b8081029050620004b4856200045d565b945062000474565b94509492505050565b600082620004d75760019050620005aa565b81620004e75760009050620005aa565b81600181146200050057600281146200050b5762000541565b6001915050620005aa565b60ff84111562000520576200051f6200042e565b5b8360020a9150848211156200053a57620005396200042e565b5b50620005aa565b5060208310610133831016604e8410600b84101617156200057b5782820a9050838111156200057557620005746200042e565b5b620005aa565b6200058a84848460016200046a565b92509050818404811115620005a457620005a36200042e565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b6000620005d582620005b1565b9150620005e283620005bb565b9250620006117fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620004c5565b905092915050565b60006200062682620005b1565b91506200063383620005b1565b92508282026200064381620005b1565b915082820484148315176200065d576200065c6200042e565b5b5092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620006968262000669565b9050919050565b620006a88162000689565b8114620006b457600080fd5b50565b600081519050620006c8816200069d565b92915050565b600060208284031215620006e757620006e662000664565b5b6000620006f784828501620006b7565b91505092915050565b6200070b81620005b1565b82525050565b600060208201905062000728600083018462000700565b92915050565b613266806200073e6000396000f3fe6080604052600436106101185760003560e01c8063715018a6116100a057806395d89b411161006457806395d89b411461038a578063a9059cbb146103b5578063c95647c5146103f2578063dd62ed3e14610409578063feb1dfcc146104465761011f565b8063715018a6146102db5780637d1db4a5146102f25780638a8c523c1461031d5780638da5cb5b146103345780638f9a55c01461035f5761011f565b806318160ddd116100e757806318160ddd146101e057806323b872dd1461020b578063313ce56714610248578063594acc441461027357806370a082311461029e5761011f565b8063049d16f11461012457806306fdde031461014d578063095ea7b3146101785780630faee56f146101b55761011f565b3661011f57005b600080fd5b34801561013057600080fd5b5061014b600480360381019061014691906122d9565b61045d565b005b34801561015957600080fd5b506101626105a6565b60405161016f91906123a9565b60405180910390f35b34801561018457600080fd5b5061019f600480360381019061019a9190612429565b6105e3565b6040516101ac9190612484565b60405180910390f35b3480156101c157600080fd5b506101ca610601565b6040516101d791906124ae565b60405180910390f35b3480156101ec57600080fd5b506101f5610620565b60405161020291906124ae565b60405180910390f35b34801561021757600080fd5b50610232600480360381019061022d91906124c9565b610644565b60405161023f9190612484565b60405180910390f35b34801561025457600080fd5b5061025d61071d565b60405161026a9190612538565b60405180910390f35b34801561027f57600080fd5b50610288610726565b60405161029591906124ae565b60405180910390f35b3480156102aa57600080fd5b506102c560048036038101906102c09190612553565b610745565b6040516102d291906124ae565b60405180910390f35b3480156102e757600080fd5b506102f061078e565b005b3480156102fe57600080fd5b506103076108e1565b60405161031491906124ae565b60405180910390f35b34801561032957600080fd5b506103326108e7565b005b34801561034057600080fd5b50610349610a5b565b604051610356919061258f565b60405180910390f35b34801561036b57600080fd5b50610374610a84565b60405161038191906124ae565b60405180910390f35b34801561039657600080fd5b5061039f610a8a565b6040516103ac91906123a9565b60405180910390f35b3480156103c157600080fd5b506103dc60048036038101906103d79190612429565b610ac7565b6040516103e99190612484565b60405180910390f35b3480156103fe57600080fd5b50610407610ae5565b005b34801561041557600080fd5b50610430600480360381019061042b91906125aa565b610c15565b60405161043d91906124ae565b60405180910390f35b34801561045257600080fd5b5061045b610c9c565b005b6104656111f8565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104e990612636565b60405180910390fd5b601e82111580156105045750601e8111155b801561051c5750600d60009054906101000a900460ff165b61055b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610552906126a2565b60405180910390fd5b81600781905550806008819055507f78009e5656a5c60b3c047015fb856b2efbc6f42beed76119406d7d4e3fc161f4828260405161059a9291906126c2565b60405180910390a15050565b60606040518060400160405280600a81526020017f4574686572626c656e6400000000000000000000000000000000000000000000815250905090565b60006105f76105f06111f8565b8484611200565b6001905092915050565b6009600a61060f919061284d565b620f424061061d9190612898565b81565b60006009600a610630919061284d565b6305f5e10061063f9190612898565b905090565b6000610651848484611394565b6107128461065d6111f8565b61070d8560405180606001604052806028815260200161320960289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106c36111f8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d869092919063ffffffff16565b611200565b600190509392505050565b60006009905090565b6009600a610734919061284d565b62030d406107429190612898565b81565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6107966111f8565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610823576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081a90612636565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600c5481565b6108ef6111f8565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461097c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097390612636565b60405180910390fd5b600d60009054906101000a900460ff16156109cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109c390612926565b60405180910390fd5b6001600d60026101000a81548160ff0219169083151502179055506001600d60006101000a81548160ff0219169083151502179055507f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c600d60009054906101000a900460ff16600d60029054906101000a900460ff16604051610a51929190612946565b60405180910390a1565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600b5481565b60606040518060400160405280600681526020017f45424c454e440000000000000000000000000000000000000000000000000000815250905090565b6000610adb610ad46111f8565b8484611394565b6001905092915050565b610aed6111f8565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b7a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7190612636565b60405180910390fd5b6009600a610b88919061284d565b6305f5e100610b979190612898565b600c819055506009600a610bab919061284d565b6305f5e100610bba9190612898565b600b819055507f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96009600a610bef919061284d565b6305f5e100610bfe9190612898565b604051610c0b91906124ae565b60405180910390a1565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610ca46111f8565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2890612636565b60405180910390fd5b600d60009054906101000a900460ff1615610d81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d78906129bb565b60405180910390fd5b6000610de0610dc96064610dbb60196009600a610d9e919061284d565b6305f5e100610dad9190612898565b611dea90919063ffffffff16565b611e6490919063ffffffff16565b610dd230610745565b611eae90919063ffffffff16565b9050737a250d5630b4cf539739df2c5dacb4c659f2488d600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610e8030600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610e6c919061284d565b6305f5e100610e7b9190612898565b611200565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610eed573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f1191906129f0565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f9a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fbe91906129f0565b6040518363ffffffff1660e01b8152600401610fdb929190612a1d565b6020604051808303816000875af1158015610ffa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101e91906129f0565b600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730846000806110aa6111f8565b426040518863ffffffff1660e01b81526004016110cc96959493929190612a8b565b60606040518083038185885af11580156110ea573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061110f9190612b01565b505050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016111b1929190612b54565b6020604051808303816000875af11580156111d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f49190612ba9565b5050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561126a5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b6112a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a090612c22565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161138791906124ae565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156113fe5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b61143d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143490612c8e565b60405180910390fd5b60008111611480576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161147790612d20565b60405180910390fd5b600061148a610a5b565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156114f857506114c8610a5b565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611ac957600d60009054906101000a900460ff166115f257600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806115b25750600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6115f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e890612d8c565b60405180910390fd5b5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561169d5750600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156116f35750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156117ae57600c5482111561173d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161173490612df8565b60405180910390fd5b600b548261174a85610745565b6117549190612e18565b1115611795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178c90612e98565b60405180910390fd5b600960008154809291906117a890612eb8565b91905055505b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561183757503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611876576064611865602360095411611852576019611856565b6008545b84611dea90919063ffffffff16565b61186f9190612f2f565b905061193b565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156118ff57503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561193a57606461192d60236009541161191a57601961191e565b6007545b84611dea90919063ffffffff16565b6119379190612f2f565b90505b5b80600a600082825461194d9190612e18565b92505081905550600061195f30610745565b9050600d60019054906101000a900460ff161580156119cb5750600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156119e35750600d60029054906101000a900460ff165b8015611a0957506009600a6119f8919061284d565b62030d40611a069190612898565b81115b8015611a1757506023600954115b8015611a3f57506009600a611a2c919061284d565b62013c68611a3a9190612898565b600a54115b15611ac75760006009600a611a54919061284d565b620f4240611a629190612898565b8211611a6e5781611a8b565b6009600a611a7c919061284d565b620f4240611a8a9190612898565b5b9050611aa4818511611a9d5784611a9f565b815b611ef8565b60004790506000811115611abc57611abb47612171565b5b6000600a8190555050505b505b6000811115611bcd57611b2481600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121dd90919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611bc491906124ae565b60405180910390a35b611c1f82600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611eae90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611cc6611c788284611eae90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121dd90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611d6b8486611eae90919063ffffffff16565b604051611d7891906124ae565b60405180910390a350505050565b6000838311158290611dce576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dc591906123a9565b60405180910390fd5b5060008385611ddd9190612f60565b9050809150509392505050565b6000808303611dfc5760009050611e5e565b60008284611e0a9190612898565b9050828482611e199190612f2f565b14611e59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e5090613006565b60405180910390fd5b809150505b92915050565b6000611ea683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061223b565b905092915050565b6000611ef083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d86565b905092915050565b6001600d60016101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611f3057611f2f613026565b5b604051908082528060200260200182016040528015611f5e5781602001602082028036833780820191505090505b5090503081600081518110611f7657611f75613055565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561201d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061204191906129f0565b8160018151811061205557612054613055565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506120bc30600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611200565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612120959493929190613142565b600060405180830381600087803b15801561213a57600080fd5b505af115801561214e573d6000803e3d6000fd5b50505050506000600d60016101000a81548160ff02191690831515021790555050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156121d9573d6000803e3d6000fd5b5050565b60008082846121ec9190612e18565b905083811015612231576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612228906131e8565b60405180910390fd5b8091505092915050565b60008083118290612282576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161227991906123a9565b60405180910390fd5b50600083856122919190612f2f565b9050809150509392505050565b600080fd5b6000819050919050565b6122b6816122a3565b81146122c157600080fd5b50565b6000813590506122d3816122ad565b92915050565b600080604083850312156122f0576122ef61229e565b5b60006122fe858286016122c4565b925050602061230f858286016122c4565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612353578082015181840152602081019050612338565b60008484015250505050565b6000601f19601f8301169050919050565b600061237b82612319565b6123858185612324565b9350612395818560208601612335565b61239e8161235f565b840191505092915050565b600060208201905081810360008301526123c38184612370565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006123f6826123cb565b9050919050565b612406816123eb565b811461241157600080fd5b50565b600081359050612423816123fd565b92915050565b600080604083850312156124405761243f61229e565b5b600061244e85828601612414565b925050602061245f858286016122c4565b9150509250929050565b60008115159050919050565b61247e81612469565b82525050565b60006020820190506124996000830184612475565b92915050565b6124a8816122a3565b82525050565b60006020820190506124c3600083018461249f565b92915050565b6000806000606084860312156124e2576124e161229e565b5b60006124f086828701612414565b935050602061250186828701612414565b9250506040612512868287016122c4565b9150509250925092565b600060ff82169050919050565b6125328161251c565b82525050565b600060208201905061254d6000830184612529565b92915050565b6000602082840312156125695761256861229e565b5b600061257784828501612414565b91505092915050565b612589816123eb565b82525050565b60006020820190506125a46000830184612580565b92915050565b600080604083850312156125c1576125c061229e565b5b60006125cf85828601612414565b92505060206125e085828601612414565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612620602083612324565b915061262b826125ea565b602082019050919050565b6000602082019050818103600083015261264f81612613565b9050919050565b7f457863656564732076616c756500000000000000000000000000000000000000600082015250565b600061268c600d83612324565b915061269782612656565b602082019050919050565b600060208201905081810360008301526126bb8161267f565b9050919050565b60006040820190506126d7600083018561249f565b6126e4602083018461249f565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156127715780860481111561274d5761274c6126eb565b5b600185161561275c5780820291505b808102905061276a8561271a565b9450612731565b94509492505050565b60008261278a5760019050612846565b816127985760009050612846565b81600181146127ae57600281146127b8576127e7565b6001915050612846565b60ff8411156127ca576127c96126eb565b5b8360020a9150848211156127e1576127e06126eb565b5b50612846565b5060208310610133831016604e8410600b841016171561281c5782820a905083811115612817576128166126eb565b5b612846565b6128298484846001612727565b925090508184048111156128405761283f6126eb565b5b81810290505b9392505050565b6000612858826122a3565b91506128638361251c565b92506128907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461277a565b905092915050565b60006128a3826122a3565b91506128ae836122a3565b92508282026128bc816122a3565b915082820484148315176128d3576128d26126eb565b5b5092915050565b7f74726164696e6720616c7265616479206f70656e000000000000000000000000600082015250565b6000612910601483612324565b915061291b826128da565b602082019050919050565b6000602082019050818103600083015261293f81612903565b9050919050565b600060408201905061295b6000830185612475565b6129686020830184612475565b9392505050565b7f696e697420616c72656164792063616c6c656400000000000000000000000000600082015250565b60006129a5601383612324565b91506129b08261296f565b602082019050919050565b600060208201905081810360008301526129d481612998565b9050919050565b6000815190506129ea816123fd565b92915050565b600060208284031215612a0657612a0561229e565b5b6000612a14848285016129db565b91505092915050565b6000604082019050612a326000830185612580565b612a3f6020830184612580565b9392505050565b6000819050919050565b6000819050919050565b6000612a75612a70612a6b84612a46565b612a50565b6122a3565b9050919050565b612a8581612a5a565b82525050565b600060c082019050612aa06000830189612580565b612aad602083018861249f565b612aba6040830187612a7c565b612ac76060830186612a7c565b612ad46080830185612580565b612ae160a083018461249f565b979650505050505050565b600081519050612afb816122ad565b92915050565b600080600060608486031215612b1a57612b1961229e565b5b6000612b2886828701612aec565b9350506020612b3986828701612aec565b9250506040612b4a86828701612aec565b9150509250925092565b6000604082019050612b696000830185612580565b612b76602083018461249f565b9392505050565b612b8681612469565b8114612b9157600080fd5b50565b600081519050612ba381612b7d565b92915050565b600060208284031215612bbf57612bbe61229e565b5b6000612bcd84828501612b94565b91505092915050565b7f45524332303a20617070726f766520746865207a65726f206164647265737300600082015250565b6000612c0c601f83612324565b9150612c1782612bd6565b602082019050919050565b60006020820190508181036000830152612c3b81612bff565b9050919050565b7f45524332303a207472616e7366657220746865207a65726f2061646472657373600082015250565b6000612c78602083612324565b9150612c8382612c42565b602082019050919050565b60006020820190508181036000830152612ca781612c6b565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612d0a602983612324565b9150612d1582612cae565b604082019050919050565b60006020820190508181036000830152612d3981612cfd565b9050919050565b7f74726164696e67206e6f7420796574206f70656e000000000000000000000000600082015250565b6000612d76601483612324565b9150612d8182612d40565b602082019050919050565b60006020820190508181036000830152612da581612d69565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612de2601983612324565b9150612ded82612dac565b602082019050919050565b60006020820190508181036000830152612e1181612dd5565b9050919050565b6000612e23826122a3565b9150612e2e836122a3565b9250828201905080821115612e4657612e456126eb565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000612e82601a83612324565b9150612e8d82612e4c565b602082019050919050565b60006020820190508181036000830152612eb181612e75565b9050919050565b6000612ec3826122a3565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612ef557612ef46126eb565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612f3a826122a3565b9150612f45836122a3565b925082612f5557612f54612f00565b5b828204905092915050565b6000612f6b826122a3565b9150612f76836122a3565b9250828203905081811115612f8e57612f8d6126eb565b5b92915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612ff0602183612324565b9150612ffb82612f94565b604082019050919050565b6000602082019050818103600083015261301f81612fe3565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6130b9816123eb565b82525050565b60006130cb83836130b0565b60208301905092915050565b6000602082019050919050565b60006130ef82613084565b6130f9818561308f565b9350613104836130a0565b8060005b8381101561313557815161311c88826130bf565b9750613127836130d7565b925050600181019050613108565b5085935050505092915050565b600060a082019050613157600083018861249f565b6131646020830187612a7c565b818103604083015261317681866130e4565b90506131856060830185612580565b613192608083018461249f565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006131d2601b83612324565b91506131dd8261319c565b602082019050919050565b60006020820190508181036000830152613201816131c5565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f6654e327d6262cf5c82e2a227368ced82cf62f49be3534d3a365ceff48f2fcd64736f6c63430008130033000000000000000000000000bff9f158fa1ef3214b09f93adbc9407d9e59ff6f

Deployed Bytecode

0x6080604052600436106101185760003560e01c8063715018a6116100a057806395d89b411161006457806395d89b411461038a578063a9059cbb146103b5578063c95647c5146103f2578063dd62ed3e14610409578063feb1dfcc146104465761011f565b8063715018a6146102db5780637d1db4a5146102f25780638a8c523c1461031d5780638da5cb5b146103345780638f9a55c01461035f5761011f565b806318160ddd116100e757806318160ddd146101e057806323b872dd1461020b578063313ce56714610248578063594acc441461027357806370a082311461029e5761011f565b8063049d16f11461012457806306fdde031461014d578063095ea7b3146101785780630faee56f146101b55761011f565b3661011f57005b600080fd5b34801561013057600080fd5b5061014b600480360381019061014691906122d9565b61045d565b005b34801561015957600080fd5b506101626105a6565b60405161016f91906123a9565b60405180910390f35b34801561018457600080fd5b5061019f600480360381019061019a9190612429565b6105e3565b6040516101ac9190612484565b60405180910390f35b3480156101c157600080fd5b506101ca610601565b6040516101d791906124ae565b60405180910390f35b3480156101ec57600080fd5b506101f5610620565b60405161020291906124ae565b60405180910390f35b34801561021757600080fd5b50610232600480360381019061022d91906124c9565b610644565b60405161023f9190612484565b60405180910390f35b34801561025457600080fd5b5061025d61071d565b60405161026a9190612538565b60405180910390f35b34801561027f57600080fd5b50610288610726565b60405161029591906124ae565b60405180910390f35b3480156102aa57600080fd5b506102c560048036038101906102c09190612553565b610745565b6040516102d291906124ae565b60405180910390f35b3480156102e757600080fd5b506102f061078e565b005b3480156102fe57600080fd5b506103076108e1565b60405161031491906124ae565b60405180910390f35b34801561032957600080fd5b506103326108e7565b005b34801561034057600080fd5b50610349610a5b565b604051610356919061258f565b60405180910390f35b34801561036b57600080fd5b50610374610a84565b60405161038191906124ae565b60405180910390f35b34801561039657600080fd5b5061039f610a8a565b6040516103ac91906123a9565b60405180910390f35b3480156103c157600080fd5b506103dc60048036038101906103d79190612429565b610ac7565b6040516103e99190612484565b60405180910390f35b3480156103fe57600080fd5b50610407610ae5565b005b34801561041557600080fd5b50610430600480360381019061042b91906125aa565b610c15565b60405161043d91906124ae565b60405180910390f35b34801561045257600080fd5b5061045b610c9c565b005b6104656111f8565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104e990612636565b60405180910390fd5b601e82111580156105045750601e8111155b801561051c5750600d60009054906101000a900460ff165b61055b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610552906126a2565b60405180910390fd5b81600781905550806008819055507f78009e5656a5c60b3c047015fb856b2efbc6f42beed76119406d7d4e3fc161f4828260405161059a9291906126c2565b60405180910390a15050565b60606040518060400160405280600a81526020017f4574686572626c656e6400000000000000000000000000000000000000000000815250905090565b60006105f76105f06111f8565b8484611200565b6001905092915050565b6009600a61060f919061284d565b620f424061061d9190612898565b81565b60006009600a610630919061284d565b6305f5e10061063f9190612898565b905090565b6000610651848484611394565b6107128461065d6111f8565b61070d8560405180606001604052806028815260200161320960289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106c36111f8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d869092919063ffffffff16565b611200565b600190509392505050565b60006009905090565b6009600a610734919061284d565b62030d406107429190612898565b81565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6107966111f8565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610823576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081a90612636565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600c5481565b6108ef6111f8565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461097c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097390612636565b60405180910390fd5b600d60009054906101000a900460ff16156109cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109c390612926565b60405180910390fd5b6001600d60026101000a81548160ff0219169083151502179055506001600d60006101000a81548160ff0219169083151502179055507f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c600d60009054906101000a900460ff16600d60029054906101000a900460ff16604051610a51929190612946565b60405180910390a1565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600b5481565b60606040518060400160405280600681526020017f45424c454e440000000000000000000000000000000000000000000000000000815250905090565b6000610adb610ad46111f8565b8484611394565b6001905092915050565b610aed6111f8565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b7a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7190612636565b60405180910390fd5b6009600a610b88919061284d565b6305f5e100610b979190612898565b600c819055506009600a610bab919061284d565b6305f5e100610bba9190612898565b600b819055507f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96009600a610bef919061284d565b6305f5e100610bfe9190612898565b604051610c0b91906124ae565b60405180910390a1565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610ca46111f8565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2890612636565b60405180910390fd5b600d60009054906101000a900460ff1615610d81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d78906129bb565b60405180910390fd5b6000610de0610dc96064610dbb60196009600a610d9e919061284d565b6305f5e100610dad9190612898565b611dea90919063ffffffff16565b611e6490919063ffffffff16565b610dd230610745565b611eae90919063ffffffff16565b9050737a250d5630b4cf539739df2c5dacb4c659f2488d600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610e8030600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610e6c919061284d565b6305f5e100610e7b9190612898565b611200565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610eed573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f1191906129f0565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f9a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fbe91906129f0565b6040518363ffffffff1660e01b8152600401610fdb929190612a1d565b6020604051808303816000875af1158015610ffa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101e91906129f0565b600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730846000806110aa6111f8565b426040518863ffffffff1660e01b81526004016110cc96959493929190612a8b565b60606040518083038185885af11580156110ea573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061110f9190612b01565b505050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016111b1929190612b54565b6020604051808303816000875af11580156111d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f49190612ba9565b5050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561126a5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b6112a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a090612c22565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161138791906124ae565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156113fe5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b61143d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143490612c8e565b60405180910390fd5b60008111611480576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161147790612d20565b60405180910390fd5b600061148a610a5b565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156114f857506114c8610a5b565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611ac957600d60009054906101000a900460ff166115f257600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806115b25750600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6115f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e890612d8c565b60405180910390fd5b5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561169d5750600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156116f35750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156117ae57600c5482111561173d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161173490612df8565b60405180910390fd5b600b548261174a85610745565b6117549190612e18565b1115611795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178c90612e98565b60405180910390fd5b600960008154809291906117a890612eb8565b91905055505b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561183757503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611876576064611865602360095411611852576019611856565b6008545b84611dea90919063ffffffff16565b61186f9190612f2f565b905061193b565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156118ff57503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561193a57606461192d60236009541161191a57601961191e565b6007545b84611dea90919063ffffffff16565b6119379190612f2f565b90505b5b80600a600082825461194d9190612e18565b92505081905550600061195f30610745565b9050600d60019054906101000a900460ff161580156119cb5750600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156119e35750600d60029054906101000a900460ff165b8015611a0957506009600a6119f8919061284d565b62030d40611a069190612898565b81115b8015611a1757506023600954115b8015611a3f57506009600a611a2c919061284d565b62013c68611a3a9190612898565b600a54115b15611ac75760006009600a611a54919061284d565b620f4240611a629190612898565b8211611a6e5781611a8b565b6009600a611a7c919061284d565b620f4240611a8a9190612898565b5b9050611aa4818511611a9d5784611a9f565b815b611ef8565b60004790506000811115611abc57611abb47612171565b5b6000600a8190555050505b505b6000811115611bcd57611b2481600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121dd90919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611bc491906124ae565b60405180910390a35b611c1f82600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611eae90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611cc6611c788284611eae90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121dd90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611d6b8486611eae90919063ffffffff16565b604051611d7891906124ae565b60405180910390a350505050565b6000838311158290611dce576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dc591906123a9565b60405180910390fd5b5060008385611ddd9190612f60565b9050809150509392505050565b6000808303611dfc5760009050611e5e565b60008284611e0a9190612898565b9050828482611e199190612f2f565b14611e59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e5090613006565b60405180910390fd5b809150505b92915050565b6000611ea683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061223b565b905092915050565b6000611ef083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d86565b905092915050565b6001600d60016101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611f3057611f2f613026565b5b604051908082528060200260200182016040528015611f5e5781602001602082028036833780820191505090505b5090503081600081518110611f7657611f75613055565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561201d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061204191906129f0565b8160018151811061205557612054613055565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506120bc30600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611200565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612120959493929190613142565b600060405180830381600087803b15801561213a57600080fd5b505af115801561214e573d6000803e3d6000fd5b50505050506000600d60016101000a81548160ff02191690831515021790555050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156121d9573d6000803e3d6000fd5b5050565b60008082846121ec9190612e18565b905083811015612231576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612228906131e8565b60405180910390fd5b8091505092915050565b60008083118290612282576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161227991906123a9565b60405180910390fd5b50600083856122919190612f2f565b9050809150509392505050565b600080fd5b6000819050919050565b6122b6816122a3565b81146122c157600080fd5b50565b6000813590506122d3816122ad565b92915050565b600080604083850312156122f0576122ef61229e565b5b60006122fe858286016122c4565b925050602061230f858286016122c4565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612353578082015181840152602081019050612338565b60008484015250505050565b6000601f19601f8301169050919050565b600061237b82612319565b6123858185612324565b9350612395818560208601612335565b61239e8161235f565b840191505092915050565b600060208201905081810360008301526123c38184612370565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006123f6826123cb565b9050919050565b612406816123eb565b811461241157600080fd5b50565b600081359050612423816123fd565b92915050565b600080604083850312156124405761243f61229e565b5b600061244e85828601612414565b925050602061245f858286016122c4565b9150509250929050565b60008115159050919050565b61247e81612469565b82525050565b60006020820190506124996000830184612475565b92915050565b6124a8816122a3565b82525050565b60006020820190506124c3600083018461249f565b92915050565b6000806000606084860312156124e2576124e161229e565b5b60006124f086828701612414565b935050602061250186828701612414565b9250506040612512868287016122c4565b9150509250925092565b600060ff82169050919050565b6125328161251c565b82525050565b600060208201905061254d6000830184612529565b92915050565b6000602082840312156125695761256861229e565b5b600061257784828501612414565b91505092915050565b612589816123eb565b82525050565b60006020820190506125a46000830184612580565b92915050565b600080604083850312156125c1576125c061229e565b5b60006125cf85828601612414565b92505060206125e085828601612414565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612620602083612324565b915061262b826125ea565b602082019050919050565b6000602082019050818103600083015261264f81612613565b9050919050565b7f457863656564732076616c756500000000000000000000000000000000000000600082015250565b600061268c600d83612324565b915061269782612656565b602082019050919050565b600060208201905081810360008301526126bb8161267f565b9050919050565b60006040820190506126d7600083018561249f565b6126e4602083018461249f565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156127715780860481111561274d5761274c6126eb565b5b600185161561275c5780820291505b808102905061276a8561271a565b9450612731565b94509492505050565b60008261278a5760019050612846565b816127985760009050612846565b81600181146127ae57600281146127b8576127e7565b6001915050612846565b60ff8411156127ca576127c96126eb565b5b8360020a9150848211156127e1576127e06126eb565b5b50612846565b5060208310610133831016604e8410600b841016171561281c5782820a905083811115612817576128166126eb565b5b612846565b6128298484846001612727565b925090508184048111156128405761283f6126eb565b5b81810290505b9392505050565b6000612858826122a3565b91506128638361251c565b92506128907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461277a565b905092915050565b60006128a3826122a3565b91506128ae836122a3565b92508282026128bc816122a3565b915082820484148315176128d3576128d26126eb565b5b5092915050565b7f74726164696e6720616c7265616479206f70656e000000000000000000000000600082015250565b6000612910601483612324565b915061291b826128da565b602082019050919050565b6000602082019050818103600083015261293f81612903565b9050919050565b600060408201905061295b6000830185612475565b6129686020830184612475565b9392505050565b7f696e697420616c72656164792063616c6c656400000000000000000000000000600082015250565b60006129a5601383612324565b91506129b08261296f565b602082019050919050565b600060208201905081810360008301526129d481612998565b9050919050565b6000815190506129ea816123fd565b92915050565b600060208284031215612a0657612a0561229e565b5b6000612a14848285016129db565b91505092915050565b6000604082019050612a326000830185612580565b612a3f6020830184612580565b9392505050565b6000819050919050565b6000819050919050565b6000612a75612a70612a6b84612a46565b612a50565b6122a3565b9050919050565b612a8581612a5a565b82525050565b600060c082019050612aa06000830189612580565b612aad602083018861249f565b612aba6040830187612a7c565b612ac76060830186612a7c565b612ad46080830185612580565b612ae160a083018461249f565b979650505050505050565b600081519050612afb816122ad565b92915050565b600080600060608486031215612b1a57612b1961229e565b5b6000612b2886828701612aec565b9350506020612b3986828701612aec565b9250506040612b4a86828701612aec565b9150509250925092565b6000604082019050612b696000830185612580565b612b76602083018461249f565b9392505050565b612b8681612469565b8114612b9157600080fd5b50565b600081519050612ba381612b7d565b92915050565b600060208284031215612bbf57612bbe61229e565b5b6000612bcd84828501612b94565b91505092915050565b7f45524332303a20617070726f766520746865207a65726f206164647265737300600082015250565b6000612c0c601f83612324565b9150612c1782612bd6565b602082019050919050565b60006020820190508181036000830152612c3b81612bff565b9050919050565b7f45524332303a207472616e7366657220746865207a65726f2061646472657373600082015250565b6000612c78602083612324565b9150612c8382612c42565b602082019050919050565b60006020820190508181036000830152612ca781612c6b565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612d0a602983612324565b9150612d1582612cae565b604082019050919050565b60006020820190508181036000830152612d3981612cfd565b9050919050565b7f74726164696e67206e6f7420796574206f70656e000000000000000000000000600082015250565b6000612d76601483612324565b9150612d8182612d40565b602082019050919050565b60006020820190508181036000830152612da581612d69565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612de2601983612324565b9150612ded82612dac565b602082019050919050565b60006020820190508181036000830152612e1181612dd5565b9050919050565b6000612e23826122a3565b9150612e2e836122a3565b9250828201905080821115612e4657612e456126eb565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000612e82601a83612324565b9150612e8d82612e4c565b602082019050919050565b60006020820190508181036000830152612eb181612e75565b9050919050565b6000612ec3826122a3565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612ef557612ef46126eb565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612f3a826122a3565b9150612f45836122a3565b925082612f5557612f54612f00565b5b828204905092915050565b6000612f6b826122a3565b9150612f76836122a3565b9250828203905081811115612f8e57612f8d6126eb565b5b92915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612ff0602183612324565b9150612ffb82612f94565b604082019050919050565b6000602082019050818103600083015261301f81612fe3565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6130b9816123eb565b82525050565b60006130cb83836130b0565b60208301905092915050565b6000602082019050919050565b60006130ef82613084565b6130f9818561308f565b9350613104836130a0565b8060005b8381101561313557815161311c88826130bf565b9750613127836130d7565b925050600181019050613108565b5085935050505092915050565b600060a082019050613157600083018861249f565b6131646020830187612a7c565b818103604083015261317681866130e4565b90506131856060830185612580565b613192608083018461249f565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006131d2601b83612324565b91506131dd8261319c565b602082019050919050565b60006020820190508181036000830152613201816131c5565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f6654e327d6262cf5c82e2a227368ced82cf62f49be3534d3a365ceff48f2fcd64736f6c63430008130033

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

000000000000000000000000bff9f158fa1ef3214b09f93adbc9407d9e59ff6f

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

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000bff9f158fa1ef3214b09f93adbc9407d9e59ff6f


Deployed Bytecode Sourcemap

3715:8322:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11700:297;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5805:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6638:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4892:62;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6082:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6807:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5991:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4819:66;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6185:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2798:148;;;;;;;;;;;;;:::i;:::-;;5026:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11306:221;;;;;;;;;;;;;:::i;:::-;;2584:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4961:55;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5896:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6312:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11535:153;;;;;;;;;;;;;:::i;:::-;;6487:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10454:844;;;;;;;;;;;;;:::i;:::-;;11700:297;2721:12;:10;:12::i;:::-;2711:22;;:6;;;;;;;;;;:22;;;2703:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11815:2:::1;11802:9;:15;;:35;;;;;11835:2;11821:10;:16;;11802:35;:50;;;;;11841:11;;;;;;;;;;;11802:50;11794:76;;;;;;;;;;;;:::i;:::-;;;;;;;;;11896:9;11881:12;:24;;;;11932:10;11916:13;:26;;;;11958:31;11967:9;11978:10;11958:31;;;;;;;:::i;:::-;;;;;;;;11700:297:::0;;:::o;5805:83::-;5842:13;5875:5;;;;;;;;;;;;;;;;;5868:12;;5805:83;:::o;6638:161::-;6713:4;6730:39;6739:12;:10;:12::i;:::-;6753:7;6762:6;6730:8;:39::i;:::-;6787:4;6780:11;;6638:161;;;;:::o;4892:62::-;4675:1;4941:2;:13;;;;:::i;:::-;4931:7;:23;;;;:::i;:::-;4892:62;:::o;6082:95::-;6135:7;4675:1;4730:2;:13;;;;:::i;:::-;4718:9;:25;;;;:::i;:::-;6155:14;;6082:95;:::o;6807:313::-;6905:4;6922:36;6932:6;6940:9;6951:6;6922:9;:36::i;:::-;6969:121;6978:6;6986:12;:10;:12::i;:::-;7000:89;7038:6;7000:89;;;;;;;;;;;;;;;;;:11;:19;7012:6;7000:19;;;;;;;;;;;;;;;:33;7020:12;:10;:12::i;:::-;7000:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6969:8;:121::i;:::-;7108:4;7101:11;;6807:313;;;;;:::o;5991:83::-;6032:5;4675:1;6050:16;;5991:83;:::o;4819:66::-;4675:1;4872:2;:13;;;;:::i;:::-;4863:6;:22;;;;:::i;:::-;4819:66;:::o;6185:119::-;6251:7;6278:9;:18;6288:7;6278:18;;;;;;;;;;;;;;;;6271:25;;6185:119;;;:::o;2798:148::-;2721:12;:10;:12::i;:::-;2711:22;;:6;;;;;;;;;;:22;;;2703:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2905:1:::1;2868:40;;2889:6;::::0;::::1;;;;;;;;2868:40;;;;;;;;;;;;2936:1;2919:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2798:148::o:0;5026:53::-;;;;:::o;11306:221::-;2721:12;:10;:12::i;:::-;2711:22;;:6;;;;;;;;;;:22;;;2703:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11371:11:::1;;;;;;;;;;;11370:12;11362:44;;;;;;;;;;;;:::i;:::-;;;;;;;;;11431:4;11417:11;;:18;;;;;;;;;;;;;;;;;;11460:4;11446:11;;:18;;;;;;;;;;;;;;;;;;11480:39;11495:11;;;;;;;;;;;11507;;;;;;;;;;;11480:39;;;;;;;:::i;:::-;;;;;;;;11306:221::o:0;2584:79::-;2622:7;2649:6;;;;;;;;;;;2642:13;;2584:79;:::o;4961:55::-;;;;:::o;5896:87::-;5935:13;5968:7;;;;;;;;;;;;;;;;;5961:14;;5896:87;:::o;6312:167::-;6390:4;6407:42;6417:12;:10;:12::i;:::-;6431:9;6442:6;6407:9;:42::i;:::-;6467:4;6460:11;;6312:167;;;;:::o;11535:153::-;2721:12;:10;:12::i;:::-;2711:22;;:6;;;;;;;;;;:22;;;2703:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4675:1:::1;4730:2;:13;;;;:::i;:::-;4718:9;:25;;;;:::i;:::-;11588:12;:22;;;;4675:1;4730:2;:13;;;;:::i;:::-;4718:9;:25;;;;:::i;:::-;11621:14;:24;;;;11661:19;4675:1;4730:2;:13;;;;:::i;:::-;4718:9;:25;;;;:::i;:::-;11661:19;;;;;;:::i;:::-;;;;;;;;11535:153::o:0;6487:143::-;6568:7;6595:11;:18;6607:5;6595:18;;;;;;;;;;;;;;;:27;6614:7;6595:27;;;;;;;;;;;;;;;;6588:34;;6487:143;;;;:::o;10454:844::-;2721:12;:10;:12::i;:::-;2711:22;;:6;;;;;;;;;;:22;;;2703:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10514:11:::1;;;;;;;;;;;10513:12;10505:43;;;;;;;;;;;;:::i;:::-;;;;;;;;;10559:19;10581:66;10610:36;10642:3;10610:27;4163:2;4675:1;4730:2;:13;;;;:::i;:::-;4718:9;:25;;;;:::i;:::-;10610:11;;:27;;;;:::i;:::-;:31;;:36;;;;:::i;:::-;10581:24;10599:4;10581:9;:24::i;:::-;:28;;:66;;;;:::i;:::-;10559:88;;10695:42;10658:15;;:80;;;;;;;;;;;;;;;;;;10749:58;10766:4;10781:15;;;;;;;;;;;4675:1;4730:2;:13;;;;:::i;:::-;4718:9;:25;;;;:::i;:::-;10749:8;:58::i;:::-;10866:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10834:83;;;10926:4;10947:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10834:146;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10818:13;;:162;;;;;;;;;;;;;;;;;;10991:15;;;;;;;;;;;:31;;;11030:21;11076:4;11096:11;11122:1;11138::::0;11154:12:::1;:10;:12::i;:::-;11181:15;10991:216;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;11225:13;;;;;;;;;;;11218:29;;;11256:15;;;;;;;;;;;11274:14;11218:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10494:804;10454:844::o:0;341:98::-;394:7;421:10;414:17;;341:98;:::o;7128:276::-;7238:1;7221:19;;:5;:19;;;;:44;;;;;7263:1;7244:21;;:7;:21;;;;7221:44;7213:88;;;;;;;;;;;;:::i;:::-;;;;;;;;;7342:6;7312:11;:18;7324:5;7312:18;;;;;;;;;;;;;;;:27;7331:7;7312:27;;;;;;;;;;;;;;;:36;;;;7380:7;7364:32;;7373:5;7364:32;;;7389:6;7364:32;;;;;;:::i;:::-;;;;;;;;7128:276;;;:::o;7412:2443::-;7516:1;7500:18;;:4;:18;;;;:38;;;;;7536:1;7522:16;;:2;:16;;;;7500:38;7492:83;;;;;;;;;;;;:::i;:::-;;;;;;;;;7603:1;7594:6;:10;7586:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7661:17;7705:7;:5;:7::i;:::-;7697:15;;:4;:15;;;;:32;;;;;7722:7;:5;:7::i;:::-;7716:13;;:2;:13;;;;7697:32;7693:1806;;;7753:11;;;;;;;;;;;7749:195;;7814:18;:22;7833:2;7814:22;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;7840:18;:24;7859:4;7840:24;;;;;;;;;;;;;;;;;;;;;;;;;7814:50;7784:144;;;;;;;;;;;;:::i;:::-;;;;;;;;;7749:195;7972:13;;;;;;;;;;;7964:21;;:4;:21;;;:55;;;;;8003:15;;;;;;;;;;;7989:30;;:2;:30;;;;7964:55;:83;;;;;8025:18;:22;8044:2;8025:22;;;;;;;;;;;;;;;;;;;;;;;;;8023:24;7964:83;7960:313;;;8087:12;;8077:6;:22;;8069:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;8182:14;;8172:6;8156:13;8166:2;8156:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;8148:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;8246:9;;:11;;;;;;;;;:::i;:::-;;;;;;7960:313;8312:13;;;;;;;;;;;8306:19;;:2;:19;;;:43;;;;;8344:4;8329:20;;:4;:20;;;;8306:43;8301:362;;;8453:3;8382:70;4314:2;8394:9;;:26;8393:58;;4213:2;8393:58;;;8422:13;;8393:58;8382:6;:10;;:70;;;;:::i;:::-;:74;;;;:::i;:::-;8370:86;;8301:362;;;8508:13;;;;;;;;;;;8500:21;;:4;:21;;;:43;;;;;8538:4;8525:18;;:2;:18;;;;8500:43;8496:167;;;8644:3;8576:67;4263:2;8588:9;;:25;8587:55;;4163:2;8587:55;;;8615:12;;8587:55;8576:6;:10;;:67;;;;:::i;:::-;:71;;;;:::i;:::-;8564:83;;8496:167;8301:362;8692:9;8679;;:22;;;;;;;:::i;:::-;;;;;;;;8716:28;8747:24;8765:4;8747:9;:24::i;:::-;8716:55;;8809:6;;;;;;;;;;;8808:7;:48;;;;;8843:13;;;;;;;;;;;8837:19;;:2;:19;;;8808:48;:81;;;;;8878:11;;;;;;;;;;;8808:81;:142;;;;;4675:1;4872:2;:13;;;;:::i;:::-;4863:6;:22;;;;:::i;:::-;8911:20;:39;8808:142;:191;;;;;4364:2;8972:9;;:27;8808:191;:237;;;;;4675:1;4799:2;:13;;;;:::i;:::-;4791:5;:21;;;;:::i;:::-;9020:9;;:25;8808:237;8786:702;;;9079:19;4675:1;4941:2;:13;;;;:::i;:::-;4931:7;:23;;;;:::i;:::-;9102:20;:34;9101:69;;9150:20;9101:69;;;4675:1;4941:2;:13;;;;:::i;:::-;4931:7;:23;;;;:::i;:::-;9101:69;9079:91;;9189:59;9216:11;9207:6;:20;9206:41;;9241:6;9206:41;;;9229:11;9206:41;9189:16;:59::i;:::-;9267:26;9296:21;9267:50;;9360:1;9339:18;:22;9336:105;;;9386:35;9399:21;9386:12;:35::i;:::-;9336:105;9471:1;9459:9;:13;;;;9060:428;;8786:702;7731:1768;7693:1806;9524:1;9514:9;:11;9511:161;;;9564:39;9593:9;9564;:24;9582:4;9564:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;9539:9;:24;9557:4;9539:24;;;;;;;;;;;;;;;:64;;;;9644:4;9621:39;;9630:4;9621:39;;;9650:9;9621:39;;;;;;:::i;:::-;;;;;;;;9511:161;9698:27;9718:6;9698:9;:15;9708:4;9698:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;9682:9;:15;9692:4;9682:15;;;;;;;;;;;;;;;:43;;;;9750:40;9768:21;9779:9;9768:6;:10;;:21;;;;:::i;:::-;9750:9;:13;9760:2;9750:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;9736:9;:13;9746:2;9736:13;;;;;;;;;;;;;;;:54;;;;9821:2;9806:41;;9815:4;9806:41;;;9825:21;9836:9;9825:6;:10;;:21;;;;:::i;:::-;9806:41;;;;;;:::i;:::-;;;;;;;;7481:2374;7412:2443;;;:::o;1478:190::-;1564:7;1597:1;1592;:6;;1600:12;1584:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1624:9;1640:1;1636;:5;;;;:::i;:::-;1624:17;;1659:1;1652:8;;;1478:190;;;;;:::o;1676:246::-;1734:7;1763:1;1758;:6;1754:47;;1788:1;1781:8;;;;1754:47;1811:9;1827:1;1823;:5;;;;:::i;:::-;1811:17;;1856:1;1851;1847;:5;;;;:::i;:::-;:10;1839:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1913:1;1906:8;;;1676:246;;;;;:::o;1930:132::-;1988:7;2015:39;2019:1;2022;2015:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2008:46;;1930:132;;;;:::o;1334:136::-;1392:7;1419:43;1423:1;1426;1419:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1412:50;;1334:136;;;;:::o;9963:483::-;5400:4;5391:6;;:13;;;;;;;;;;;;;;;;;;10041:21:::1;10079:1;10065:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10041:40;;10110:4;10092;10097:1;10092:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;10136:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10126:4;10131:1;10126:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;10169:62;10186:4;10201:15;;;;;;;;;;;10219:11;10169:8;:62::i;:::-;10242:15;;;;;;;;;;;:66;;;10323:11;10349:1;10365:4;10392;10412:15;10242:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10030:416;5436:5:::0;5427:6;;:14;;;;;;;;;;;;;;;;;;9963:483;:::o;9863:92::-;9920:10;;;;;;;;;;;:19;;:27;9940:6;9920:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9863:92;:::o;1147:179::-;1205:7;1225:9;1241:1;1237;:5;;;;:::i;:::-;1225:17;;1266:1;1261;:6;;1253:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1317:1;1310:8;;;1147:179;;;;:::o;2070:189::-;2156:7;2188:1;2184;:5;2191:12;2176:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2215:9;2231:1;2227;:5;;;;:::i;:::-;2215:17;;2250:1;2243:8;;;2070:189;;;;;:::o;88:117:1:-;197:1;194;187:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:474::-;758:6;766;815:2;803:9;794:7;790:23;786:32;783:119;;;821:79;;:::i;:::-;783:119;941:1;966:53;1011:7;1002:6;991:9;987:22;966:53;:::i;:::-;956:63;;912:117;1068:2;1094:53;1139:7;1130:6;1119:9;1115:22;1094:53;:::i;:::-;1084:63;;1039:118;690:474;;;;;:::o;1170:99::-;1222:6;1256:5;1250:12;1240:22;;1170:99;;;:::o;1275:169::-;1359:11;1393:6;1388:3;1381:19;1433:4;1428:3;1424:14;1409:29;;1275:169;;;;:::o;1450:246::-;1531:1;1541:113;1555:6;1552:1;1549:13;1541:113;;;1640:1;1635:3;1631:11;1625:18;1621:1;1616:3;1612:11;1605:39;1577:2;1574:1;1570:10;1565:15;;1541:113;;;1688:1;1679:6;1674:3;1670:16;1663:27;1512:184;1450:246;;;:::o;1702:102::-;1743:6;1794:2;1790:7;1785:2;1778:5;1774:14;1770:28;1760:38;;1702:102;;;:::o;1810:377::-;1898:3;1926:39;1959:5;1926:39;:::i;:::-;1981:71;2045:6;2040:3;1981:71;:::i;:::-;1974:78;;2061:65;2119:6;2114:3;2107:4;2100:5;2096:16;2061:65;:::i;:::-;2151:29;2173:6;2151:29;:::i;:::-;2146:3;2142:39;2135:46;;1902:285;1810:377;;;;:::o;2193:313::-;2306:4;2344:2;2333:9;2329:18;2321:26;;2393:9;2387:4;2383:20;2379:1;2368:9;2364:17;2357:47;2421:78;2494:4;2485:6;2421:78;:::i;:::-;2413:86;;2193:313;;;;:::o;2512:126::-;2549:7;2589:42;2582:5;2578:54;2567:65;;2512:126;;;:::o;2644:96::-;2681:7;2710:24;2728:5;2710:24;:::i;:::-;2699:35;;2644:96;;;:::o;2746:122::-;2819:24;2837:5;2819:24;:::i;:::-;2812:5;2809:35;2799:63;;2858:1;2855;2848:12;2799:63;2746:122;:::o;2874:139::-;2920:5;2958:6;2945:20;2936:29;;2974:33;3001:5;2974:33;:::i;:::-;2874:139;;;;:::o;3019:474::-;3087:6;3095;3144:2;3132:9;3123:7;3119:23;3115:32;3112:119;;;3150:79;;:::i;:::-;3112:119;3270:1;3295:53;3340:7;3331:6;3320:9;3316:22;3295:53;:::i;:::-;3285:63;;3241:117;3397:2;3423:53;3468:7;3459:6;3448:9;3444:22;3423:53;:::i;:::-;3413:63;;3368:118;3019:474;;;;;:::o;3499:90::-;3533:7;3576:5;3569:13;3562:21;3551:32;;3499:90;;;:::o;3595:109::-;3676:21;3691:5;3676:21;:::i;:::-;3671:3;3664:34;3595:109;;:::o;3710:210::-;3797:4;3835:2;3824:9;3820:18;3812:26;;3848:65;3910:1;3899:9;3895:17;3886:6;3848:65;:::i;:::-;3710:210;;;;:::o;3926:118::-;4013:24;4031:5;4013:24;:::i;:::-;4008:3;4001:37;3926:118;;:::o;4050:222::-;4143:4;4181:2;4170:9;4166:18;4158:26;;4194:71;4262:1;4251:9;4247:17;4238:6;4194:71;:::i;:::-;4050:222;;;;:::o;4278:619::-;4355:6;4363;4371;4420:2;4408:9;4399:7;4395:23;4391:32;4388:119;;;4426:79;;:::i;:::-;4388:119;4546:1;4571:53;4616:7;4607:6;4596:9;4592:22;4571:53;:::i;:::-;4561:63;;4517:117;4673:2;4699:53;4744:7;4735:6;4724:9;4720:22;4699:53;:::i;:::-;4689:63;;4644:118;4801:2;4827:53;4872:7;4863:6;4852:9;4848:22;4827:53;:::i;:::-;4817:63;;4772:118;4278:619;;;;;:::o;4903:86::-;4938:7;4978:4;4971:5;4967:16;4956:27;;4903:86;;;:::o;4995:112::-;5078:22;5094:5;5078:22;:::i;:::-;5073:3;5066:35;4995:112;;:::o;5113:214::-;5202:4;5240:2;5229:9;5225:18;5217:26;;5253:67;5317:1;5306:9;5302:17;5293:6;5253:67;:::i;:::-;5113:214;;;;:::o;5333:329::-;5392:6;5441:2;5429:9;5420:7;5416:23;5412:32;5409:119;;;5447:79;;:::i;:::-;5409:119;5567:1;5592:53;5637:7;5628:6;5617:9;5613:22;5592:53;:::i;:::-;5582:63;;5538:117;5333:329;;;;:::o;5668:118::-;5755:24;5773:5;5755:24;:::i;:::-;5750:3;5743:37;5668:118;;:::o;5792:222::-;5885:4;5923:2;5912:9;5908:18;5900:26;;5936:71;6004:1;5993:9;5989:17;5980:6;5936:71;:::i;:::-;5792:222;;;;:::o;6020:474::-;6088:6;6096;6145:2;6133:9;6124:7;6120:23;6116:32;6113:119;;;6151:79;;:::i;:::-;6113:119;6271:1;6296:53;6341:7;6332:6;6321:9;6317:22;6296:53;:::i;:::-;6286:63;;6242:117;6398:2;6424:53;6469:7;6460:6;6449:9;6445:22;6424:53;:::i;:::-;6414:63;;6369:118;6020:474;;;;;:::o;6500:182::-;6640:34;6636:1;6628:6;6624:14;6617:58;6500:182;:::o;6688:366::-;6830:3;6851:67;6915:2;6910:3;6851:67;:::i;:::-;6844:74;;6927:93;7016:3;6927:93;:::i;:::-;7045:2;7040:3;7036:12;7029:19;;6688:366;;;:::o;7060:419::-;7226:4;7264:2;7253:9;7249:18;7241:26;;7313:9;7307:4;7303:20;7299:1;7288:9;7284:17;7277:47;7341:131;7467:4;7341:131;:::i;:::-;7333:139;;7060:419;;;:::o;7485:163::-;7625:15;7621:1;7613:6;7609:14;7602:39;7485:163;:::o;7654:366::-;7796:3;7817:67;7881:2;7876:3;7817:67;:::i;:::-;7810:74;;7893:93;7982:3;7893:93;:::i;:::-;8011:2;8006:3;8002:12;7995:19;;7654:366;;;:::o;8026:419::-;8192:4;8230:2;8219:9;8215:18;8207:26;;8279:9;8273:4;8269:20;8265:1;8254:9;8250:17;8243:47;8307:131;8433:4;8307:131;:::i;:::-;8299:139;;8026:419;;;:::o;8451:332::-;8572:4;8610:2;8599:9;8595:18;8587:26;;8623:71;8691:1;8680:9;8676:17;8667:6;8623:71;:::i;:::-;8704:72;8772:2;8761:9;8757:18;8748:6;8704:72;:::i;:::-;8451:332;;;;;:::o;8789:180::-;8837:77;8834:1;8827:88;8934:4;8931:1;8924:15;8958:4;8955:1;8948:15;8975:102;9017:8;9064:5;9061:1;9057:13;9036:34;;8975:102;;;:::o;9083:848::-;9144:5;9151:4;9175:6;9166:15;;9199:5;9190:14;;9213:712;9234:1;9224:8;9221:15;9213:712;;;9329:4;9324:3;9320:14;9314:4;9311:24;9308:50;;;9338:18;;:::i;:::-;9308:50;9388:1;9378:8;9374:16;9371:451;;;9803:4;9796:5;9792:16;9783:25;;9371:451;9853:4;9847;9843:15;9835:23;;9883:32;9906:8;9883:32;:::i;:::-;9871:44;;9213:712;;;9083:848;;;;;;;:::o;9937:1073::-;9991:5;10182:8;10172:40;;10203:1;10194:10;;10205:5;;10172:40;10231:4;10221:36;;10248:1;10239:10;;10250:5;;10221:36;10317:4;10365:1;10360:27;;;;10401:1;10396:191;;;;10310:277;;10360:27;10378:1;10369:10;;10380:5;;;10396:191;10441:3;10431:8;10428:17;10425:43;;;10448:18;;:::i;:::-;10425:43;10497:8;10494:1;10490:16;10481:25;;10532:3;10525:5;10522:14;10519:40;;;10539:18;;:::i;:::-;10519:40;10572:5;;;10310:277;;10696:2;10686:8;10683:16;10677:3;10671:4;10668:13;10664:36;10646:2;10636:8;10633:16;10628:2;10622:4;10619:12;10615:35;10599:111;10596:246;;;10752:8;10746:4;10742:19;10733:28;;10787:3;10780:5;10777:14;10774:40;;;10794:18;;:::i;:::-;10774:40;10827:5;;10596:246;10867:42;10905:3;10895:8;10889:4;10886:1;10867:42;:::i;:::-;10852:57;;;;10941:4;10936:3;10932:14;10925:5;10922:25;10919:51;;;10950:18;;:::i;:::-;10919:51;10999:4;10992:5;10988:16;10979:25;;9937:1073;;;;;;:::o;11016:281::-;11074:5;11098:23;11116:4;11098:23;:::i;:::-;11090:31;;11142:25;11158:8;11142:25;:::i;:::-;11130:37;;11186:104;11223:66;11213:8;11207:4;11186:104;:::i;:::-;11177:113;;11016:281;;;;:::o;11303:410::-;11343:7;11366:20;11384:1;11366:20;:::i;:::-;11361:25;;11400:20;11418:1;11400:20;:::i;:::-;11395:25;;11455:1;11452;11448:9;11477:30;11495:11;11477:30;:::i;:::-;11466:41;;11656:1;11647:7;11643:15;11640:1;11637:22;11617:1;11610:9;11590:83;11567:139;;11686:18;;:::i;:::-;11567:139;11351:362;11303:410;;;;:::o;11719:170::-;11859:22;11855:1;11847:6;11843:14;11836:46;11719:170;:::o;11895:366::-;12037:3;12058:67;12122:2;12117:3;12058:67;:::i;:::-;12051:74;;12134:93;12223:3;12134:93;:::i;:::-;12252:2;12247:3;12243:12;12236:19;;11895:366;;;:::o;12267:419::-;12433:4;12471:2;12460:9;12456:18;12448:26;;12520:9;12514:4;12510:20;12506:1;12495:9;12491:17;12484:47;12548:131;12674:4;12548:131;:::i;:::-;12540:139;;12267:419;;;:::o;12692:308::-;12801:4;12839:2;12828:9;12824:18;12816:26;;12852:65;12914:1;12903:9;12899:17;12890:6;12852:65;:::i;:::-;12927:66;12989:2;12978:9;12974:18;12965:6;12927:66;:::i;:::-;12692:308;;;;;:::o;13006:169::-;13146:21;13142:1;13134:6;13130:14;13123:45;13006:169;:::o;13181:366::-;13323:3;13344:67;13408:2;13403:3;13344:67;:::i;:::-;13337:74;;13420:93;13509:3;13420:93;:::i;:::-;13538:2;13533:3;13529:12;13522:19;;13181:366;;;:::o;13553:419::-;13719:4;13757:2;13746:9;13742:18;13734:26;;13806:9;13800:4;13796:20;13792:1;13781:9;13777:17;13770:47;13834:131;13960:4;13834:131;:::i;:::-;13826:139;;13553:419;;;:::o;13978:143::-;14035:5;14066:6;14060:13;14051:22;;14082:33;14109:5;14082:33;:::i;:::-;13978:143;;;;:::o;14127:351::-;14197:6;14246:2;14234:9;14225:7;14221:23;14217:32;14214:119;;;14252:79;;:::i;:::-;14214:119;14372:1;14397:64;14453:7;14444:6;14433:9;14429:22;14397:64;:::i;:::-;14387:74;;14343:128;14127:351;;;;:::o;14484:332::-;14605:4;14643:2;14632:9;14628:18;14620:26;;14656:71;14724:1;14713:9;14709:17;14700:6;14656:71;:::i;:::-;14737:72;14805:2;14794:9;14790:18;14781:6;14737:72;:::i;:::-;14484:332;;;;;:::o;14822:85::-;14867:7;14896:5;14885:16;;14822:85;;;:::o;14913:60::-;14941:3;14962:5;14955:12;;14913:60;;;:::o;14979:158::-;15037:9;15070:61;15088:42;15097:32;15123:5;15097:32;:::i;:::-;15088:42;:::i;:::-;15070:61;:::i;:::-;15057:74;;14979:158;;;:::o;15143:147::-;15238:45;15277:5;15238:45;:::i;:::-;15233:3;15226:58;15143:147;;:::o;15296:807::-;15545:4;15583:3;15572:9;15568:19;15560:27;;15597:71;15665:1;15654:9;15650:17;15641:6;15597:71;:::i;:::-;15678:72;15746:2;15735:9;15731:18;15722:6;15678:72;:::i;:::-;15760:80;15836:2;15825:9;15821:18;15812:6;15760:80;:::i;:::-;15850;15926:2;15915:9;15911:18;15902:6;15850:80;:::i;:::-;15940:73;16008:3;15997:9;15993:19;15984:6;15940:73;:::i;:::-;16023;16091:3;16080:9;16076:19;16067:6;16023:73;:::i;:::-;15296:807;;;;;;;;;:::o;16109:143::-;16166:5;16197:6;16191:13;16182:22;;16213:33;16240:5;16213:33;:::i;:::-;16109:143;;;;:::o;16258:663::-;16346:6;16354;16362;16411:2;16399:9;16390:7;16386:23;16382:32;16379:119;;;16417:79;;:::i;:::-;16379:119;16537:1;16562:64;16618:7;16609:6;16598:9;16594:22;16562:64;:::i;:::-;16552:74;;16508:128;16675:2;16701:64;16757:7;16748:6;16737:9;16733:22;16701:64;:::i;:::-;16691:74;;16646:129;16814:2;16840:64;16896:7;16887:6;16876:9;16872:22;16840:64;:::i;:::-;16830:74;;16785:129;16258:663;;;;;:::o;16927:332::-;17048:4;17086:2;17075:9;17071:18;17063:26;;17099:71;17167:1;17156:9;17152:17;17143:6;17099:71;:::i;:::-;17180:72;17248:2;17237:9;17233:18;17224:6;17180:72;:::i;:::-;16927:332;;;;;:::o;17265:116::-;17335:21;17350:5;17335:21;:::i;:::-;17328:5;17325:32;17315:60;;17371:1;17368;17361:12;17315:60;17265:116;:::o;17387:137::-;17441:5;17472:6;17466:13;17457:22;;17488:30;17512:5;17488:30;:::i;:::-;17387:137;;;;:::o;17530:345::-;17597:6;17646:2;17634:9;17625:7;17621:23;17617:32;17614:119;;;17652:79;;:::i;:::-;17614:119;17772:1;17797:61;17850:7;17841:6;17830:9;17826:22;17797:61;:::i;:::-;17787:71;;17743:125;17530:345;;;;:::o;17881:181::-;18021:33;18017:1;18009:6;18005:14;17998:57;17881:181;:::o;18068:366::-;18210:3;18231:67;18295:2;18290:3;18231:67;:::i;:::-;18224:74;;18307:93;18396:3;18307:93;:::i;:::-;18425:2;18420:3;18416:12;18409:19;;18068:366;;;:::o;18440:419::-;18606:4;18644:2;18633:9;18629:18;18621:26;;18693:9;18687:4;18683:20;18679:1;18668:9;18664:17;18657:47;18721:131;18847:4;18721:131;:::i;:::-;18713:139;;18440:419;;;:::o;18865:182::-;19005:34;19001:1;18993:6;18989:14;18982:58;18865:182;:::o;19053:366::-;19195:3;19216:67;19280:2;19275:3;19216:67;:::i;:::-;19209:74;;19292:93;19381:3;19292:93;:::i;:::-;19410:2;19405:3;19401:12;19394:19;;19053:366;;;:::o;19425:419::-;19591:4;19629:2;19618:9;19614:18;19606:26;;19678:9;19672:4;19668:20;19664:1;19653:9;19649:17;19642:47;19706:131;19832:4;19706:131;:::i;:::-;19698:139;;19425:419;;;:::o;19850:228::-;19990:34;19986:1;19978:6;19974:14;19967:58;20059:11;20054:2;20046:6;20042:15;20035:36;19850:228;:::o;20084:366::-;20226:3;20247:67;20311:2;20306:3;20247:67;:::i;:::-;20240:74;;20323:93;20412:3;20323:93;:::i;:::-;20441:2;20436:3;20432:12;20425:19;;20084:366;;;:::o;20456:419::-;20622:4;20660:2;20649:9;20645:18;20637:26;;20709:9;20703:4;20699:20;20695:1;20684:9;20680:17;20673:47;20737:131;20863:4;20737:131;:::i;:::-;20729:139;;20456:419;;;:::o;20881:170::-;21021:22;21017:1;21009:6;21005:14;20998:46;20881:170;:::o;21057:366::-;21199:3;21220:67;21284:2;21279:3;21220:67;:::i;:::-;21213:74;;21296:93;21385:3;21296:93;:::i;:::-;21414:2;21409:3;21405:12;21398:19;;21057:366;;;:::o;21429:419::-;21595:4;21633:2;21622:9;21618:18;21610:26;;21682:9;21676:4;21672:20;21668:1;21657:9;21653:17;21646:47;21710:131;21836:4;21710:131;:::i;:::-;21702:139;;21429:419;;;:::o;21854:175::-;21994:27;21990:1;21982:6;21978:14;21971:51;21854:175;:::o;22035:366::-;22177:3;22198:67;22262:2;22257:3;22198:67;:::i;:::-;22191:74;;22274:93;22363:3;22274:93;:::i;:::-;22392:2;22387:3;22383:12;22376:19;;22035:366;;;:::o;22407:419::-;22573:4;22611:2;22600:9;22596:18;22588:26;;22660:9;22654:4;22650:20;22646:1;22635:9;22631:17;22624:47;22688:131;22814:4;22688:131;:::i;:::-;22680:139;;22407:419;;;:::o;22832:191::-;22872:3;22891:20;22909:1;22891:20;:::i;:::-;22886:25;;22925:20;22943:1;22925:20;:::i;:::-;22920:25;;22968:1;22965;22961:9;22954:16;;22989:3;22986:1;22983:10;22980:36;;;22996:18;;:::i;:::-;22980:36;22832:191;;;;:::o;23029:176::-;23169:28;23165:1;23157:6;23153:14;23146:52;23029:176;:::o;23211:366::-;23353:3;23374:67;23438:2;23433:3;23374:67;:::i;:::-;23367:74;;23450:93;23539:3;23450:93;:::i;:::-;23568:2;23563:3;23559:12;23552:19;;23211:366;;;:::o;23583:419::-;23749:4;23787:2;23776:9;23772:18;23764:26;;23836:9;23830:4;23826:20;23822:1;23811:9;23807:17;23800:47;23864:131;23990:4;23864:131;:::i;:::-;23856:139;;23583:419;;;:::o;24008:233::-;24047:3;24070:24;24088:5;24070:24;:::i;:::-;24061:33;;24116:66;24109:5;24106:77;24103:103;;24186:18;;:::i;:::-;24103:103;24233:1;24226:5;24222:13;24215:20;;24008:233;;;:::o;24247:180::-;24295:77;24292:1;24285:88;24392:4;24389:1;24382:15;24416:4;24413:1;24406:15;24433:185;24473:1;24490:20;24508:1;24490:20;:::i;:::-;24485:25;;24524:20;24542:1;24524:20;:::i;:::-;24519:25;;24563:1;24553:35;;24568:18;;:::i;:::-;24553:35;24610:1;24607;24603:9;24598:14;;24433:185;;;;:::o;24624:194::-;24664:4;24684:20;24702:1;24684:20;:::i;:::-;24679:25;;24718:20;24736:1;24718:20;:::i;:::-;24713:25;;24762:1;24759;24755:9;24747:17;;24786:1;24780:4;24777:11;24774:37;;;24791:18;;:::i;:::-;24774:37;24624:194;;;;:::o;24824:220::-;24964:34;24960:1;24952:6;24948:14;24941:58;25033:3;25028:2;25020:6;25016:15;25009:28;24824:220;:::o;25050:366::-;25192:3;25213:67;25277:2;25272:3;25213:67;:::i;:::-;25206:74;;25289:93;25378:3;25289:93;:::i;:::-;25407:2;25402:3;25398:12;25391:19;;25050:366;;;:::o;25422:419::-;25588:4;25626:2;25615:9;25611:18;25603:26;;25675:9;25669:4;25665:20;25661:1;25650:9;25646:17;25639:47;25703:131;25829:4;25703:131;:::i;:::-;25695:139;;25422:419;;;:::o;25847:180::-;25895:77;25892:1;25885:88;25992:4;25989:1;25982:15;26016:4;26013:1;26006:15;26033:180;26081:77;26078:1;26071:88;26178:4;26175:1;26168:15;26202:4;26199:1;26192:15;26219:114;26286:6;26320:5;26314:12;26304:22;;26219:114;;;:::o;26339:184::-;26438:11;26472:6;26467:3;26460:19;26512:4;26507:3;26503:14;26488:29;;26339:184;;;;:::o;26529:132::-;26596:4;26619:3;26611:11;;26649:4;26644:3;26640:14;26632:22;;26529:132;;;:::o;26667:108::-;26744:24;26762:5;26744:24;:::i;:::-;26739:3;26732:37;26667:108;;:::o;26781:179::-;26850:10;26871:46;26913:3;26905:6;26871:46;:::i;:::-;26949:4;26944:3;26940:14;26926:28;;26781:179;;;;:::o;26966:113::-;27036:4;27068;27063:3;27059:14;27051:22;;26966:113;;;:::o;27115:732::-;27234:3;27263:54;27311:5;27263:54;:::i;:::-;27333:86;27412:6;27407:3;27333:86;:::i;:::-;27326:93;;27443:56;27493:5;27443:56;:::i;:::-;27522:7;27553:1;27538:284;27563:6;27560:1;27557:13;27538:284;;;27639:6;27633:13;27666:63;27725:3;27710:13;27666:63;:::i;:::-;27659:70;;27752:60;27805:6;27752:60;:::i;:::-;27742:70;;27598:224;27585:1;27582;27578:9;27573:14;;27538:284;;;27542:14;27838:3;27831:10;;27239:608;;;27115:732;;;;:::o;27853:831::-;28116:4;28154:3;28143:9;28139:19;28131:27;;28168:71;28236:1;28225:9;28221:17;28212:6;28168:71;:::i;:::-;28249:80;28325:2;28314:9;28310:18;28301:6;28249:80;:::i;:::-;28376:9;28370:4;28366:20;28361:2;28350:9;28346:18;28339:48;28404:108;28507:4;28498:6;28404:108;:::i;:::-;28396:116;;28522:72;28590:2;28579:9;28575:18;28566:6;28522:72;:::i;:::-;28604:73;28672:3;28661:9;28657:19;28648:6;28604:73;:::i;:::-;27853:831;;;;;;;;:::o;28690:177::-;28830:29;28826:1;28818:6;28814:14;28807:53;28690:177;:::o;28873:366::-;29015:3;29036:67;29100:2;29095:3;29036:67;:::i;:::-;29029:74;;29112:93;29201:3;29112:93;:::i;:::-;29230:2;29225:3;29221:12;29214:19;;28873:366;;;:::o;29245:419::-;29411:4;29449:2;29438:9;29434:18;29426:26;;29498:9;29492:4;29488:20;29484:1;29473:9;29469:17;29462:47;29526:131;29652:4;29526:131;:::i;:::-;29518:139;;29245:419;;;:::o

Swarm Source

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