ETH Price: $2,313.27 (-7.86%)

Token

Burn LINQ (bLINQ)
 

Overview

Max Total Supply

988,167.818763 bLINQ

Holders

15

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 6 Decimals)

Balance
18,528.794763 bLINQ

Value
$0.00
0x507834873C010c058579BbAeD1220929Bd725EdB
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:
BurnLINQ

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

/*
🔥 Introducing Burn LINQ - Ignite Your Investments! 🔥

🚀 Join the revolution of decentralized finance with Burn LINQ ($bLINQ)!

🔥 Tokenomics:
- 1% Burn of $bLINQ on every transaction
- 1% Automatic Liquidity Pool (LP) generation
- 3% Burn of $LINQ on every transaction

📢 Telegram:  https://t.me/BurnLINQ

*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.4;

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;
    }
}

library Address {
        
    function isContract(address account) internal view returns (bool) {
        
        bytes32 codehash;
        bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;
        // solhint-disable-next-line no-inline-assembly
        assembly { codehash := extcodehash(account) }
        return (codehash != accountHash && codehash != 0x0);
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        // solhint-disable-next-line avoid-low-level-calls, avoid-call-value
        (bool success, ) = recipient.call{ value: amount }("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionCall(target, data, "Address: low-level call failed");
    }

    function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        return _functionCallWithValue(target, data, 0, errorMessage);
    }

    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }

    function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        return _functionCallWithValue(target, data, value, errorMessage);
    }

    function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) {
        require(isContract(target), "Address: call to non-contract");

        // solhint-disable-next-line avoid-low-level-calls
        (bool success, bytes memory returndata) = target.call{ value: weiValue }(data);
        if (success) {
            return returndata;
        } else {
            // Look for revert reason and bubble it up if present
            if (returndata.length > 0) {
                
                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    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);
    }
    
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

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

interface IUniswapV2Router01 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETH(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountToken, uint amountETH);
    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETHWithPermit(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountToken, uint amountETH);
    function swapExactTokensForTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapTokensForExactTokens(
        uint amountOut,
        uint amountInMax,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);
    function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);

    function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB);
    function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut);
    function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn);
    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        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,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    ) external payable returns (uint256 amountToken, uint256 amountETH, uint256 liquidity);
    function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB);
    function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut);
    function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn);
    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts);
}

contract BurnLINQ is Context, IERC20, Ownable {
    using SafeMath for uint256;
    using Address for address;

    string private constant _name = "Burn LINQ";
    string private constant _symbol = "bLINQ";
    uint8 private constant _decimals = 6;
    mapping(address => uint256) private _balances;

    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    uint256 public _tTotal = 1000 * 1e3 * 1e6; //1,000,000

    uint256 public _maxWalletAmount = 50 * 1e3 * 1e6; //2%
    uint256 public j_maxtxn = 20 * 1e3 * 1e6; //2%
    uint256 public swapAmount = 7 * 1e2 * 1e6; //.07%
    uint256 private buyLINQUpperLimit = 200 * 1e14; // 0.01

    // fees
    uint256 public j_liqBuy = 1; 
    uint256 public j_burnBuy = 1;
    uint256 public j_linqBuy = 3;
    uint256 public j_jeetBuy = 0;

    uint256 public j_liqSell = 1; 
    uint256 public j_burnSell = 1;
    uint256 public j_linqSell = 3;
    uint256 public j_jeetSell = 10;
 
    uint256 private j_previousLiqFee = j_liqFee;
    uint256 private j_previousBurnFee = j_burnFee;
    uint256 private j_previouslinqFee = j_linqFee;
    uint256 private j_previousJeetTax = j_jeetTax;
    
    uint256 private j_liqFee;
    uint256 private j_burnFee;
    uint256 private j_linqFee;
    uint256 private j_jeetTax;

    uint256 public _totalBurned;

    struct FeeBreakdown {
        uint256 tLiq;
        uint256 tBurn;
        uint256 tLINQ;
        uint256 tJeet;
        uint256 tAmount;
    }

    mapping(address => bool) private bots;
    address payable private linqburnWallet = payable(0xDF57EFa804513B76f9d259C27101629027073C2b);
    address payable public dead = payable(0x000000000000000000000000000000000000dEaD);
    address LINQ = 0x3e34eabF5858a126cb583107E643080cEE20cA64;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;

    bool private swapping = false;
    bool public burnMode = false;

    modifier lockSwap {
        swapping = true;
        _;
        swapping = false;
    }

    constructor() {
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[linqburnWallet] = true;
        _isExcludedFromFee[dead] = 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 view override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }
    
    function transfer(address recipient, uint256 amount) external override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

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

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

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

    function totalBurned() public view returns (uint256) {
        return _totalBurned;
    }

    function burning(address _account, uint _amount) private {  
        require( _amount <= balanceOf(_account));
        _balances[_account] = _balances[_account].sub(_amount);
        _tTotal = _tTotal.sub(_amount);
        _totalBurned = _totalBurned.add(_amount);
        emit Transfer(_account, address(0), _amount);
    }

    function removeAllFee() private {
        if (j_burnFee == 0 && j_liqFee == 0 && j_linqFee == 0 && j_jeetTax == 0) return;
        j_previousBurnFee = j_burnFee;
        j_previousLiqFee = j_liqFee;
        j_previouslinqFee = j_linqFee;
        j_previousJeetTax = j_jeetTax;

        j_burnFee = 0;
        j_liqFee = 0;
        j_linqFee = 0;
        j_jeetTax = 0;
    }
    
    function restoreAllFee() private {
        j_liqFee = j_previousLiqFee;
        j_burnFee = j_previousBurnFee;
        j_linqFee = j_previouslinqFee;
        j_jeetTax = j_previousJeetTax;
    }

    function removeJeetTax() external {
        require(_msgSender() == linqburnWallet);
        j_jeetSell = 0;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
    
    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        require(!bots[from] && !bots[to]);

        bool takeFee = true;

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

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ((!_isExcludedFromFee[from] || !_isExcludedFromFee[to]))) {
                require(balanceOf(to).add(amount) <= _maxWalletAmount, "You are being greedy. Exceeding Max Wallet.");
                require(amount <= j_maxtxn, "Slow down buddy...there is a max transaction");
            }

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && !bots[to] && !bots[from]) {
                j_liqFee = j_liqBuy;
                j_burnFee = j_burnBuy;
                j_linqFee = j_linqBuy;
                j_jeetTax = j_jeetBuy;
            }
                
            if (to == uniswapV2Pair && from != address(uniswapV2Router) && !bots[to] && !bots[from]) {
                j_liqFee = j_liqSell;
                j_burnFee = j_burnSell;
                j_linqFee = j_linqSell;
                j_jeetTax = j_jeetSell;
            }
           
            if (!swapping && from != uniswapV2Pair) {

                uint256 contractTokenBalance = balanceOf(address(this));

                if (contractTokenBalance > swapAmount) {
                    swapAndLiquify(contractTokenBalance);
                }

                uint256 contractETHBalance = address(this).balance;
            
                if (!burnMode && (contractETHBalance > 0)) {
                    sendETHToFee(address(this).balance);
                } else if (burnMode && (contractETHBalance > buyLINQUpperLimit)) {
                        uint256 buyAmount = (contractETHBalance.div(2));
                    buyLINQ(buyAmount);
                }                    
            }
        }

        if (_isExcludedFromFee[from] || _isExcludedFromFee[to]) {
            takeFee = false;
        }
        
        _transferAgain(from, to, amount, takeFee);
        restoreAllFee();
    }

    function setMaxTxn(uint256 maxTransaction) external {
        require(maxTransaction >= 10 * 1e3 * 1e6,"not today Zurg");
        require(_msgSender() == linqburnWallet);
        j_maxtxn = maxTransaction;
    }

    function swapTokensForEth(uint256 tokenAmount) private lockSwap {
        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 swapETHForTokens(uint256 amount) private {
        // generate the uniswap pair path of token -> weth
        address[] memory path = new address[](2);
        path[0] = uniswapV2Router.WETH();
        path[1] = address(LINQ);

      // make the swap
        uniswapV2Router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(
            0, // accept any amount of Tokens
            path,
            dead, // Burn address
            block.timestamp
        );        
    }

    function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private {
        _approve(address(this), address(uniswapV2Router), tokenAmount);

        // add the liquidity
        uniswapV2Router.addLiquidityETH{value: ethAmount}(
            address(this),
            tokenAmount,
            0, // slippage is unavoidable
            0, // slippage is unavoidable
            linqburnWallet,
            block.timestamp
          );
    }
  
    function swapAndLiquify(uint256 contractTokenBalance) private lockSwap {
        uint256 autoLPamount = j_liqFee.mul(contractTokenBalance).div(j_burnFee.add(j_linqFee).add(j_jeetTax).add(j_liqFee));
        uint256 half =  autoLPamount.div(2);
        uint256 otherHalf = contractTokenBalance.sub(half);
        uint256 initialBalance = address(this).balance;
        swapTokensForEth(otherHalf);
        uint256 newBalance = ((address(this).balance.sub(initialBalance)).mul(half)).div(otherHalf);
        addLiquidity(half, newBalance);
    }

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

    function manualSwap() external {
        require(_msgSender() == linqburnWallet);
        uint256 contractBalance = balanceOf(address(this));
        if (contractBalance > 0) {
            swapTokensForEth(contractBalance);
        }
    }

    function manualSend() external {
        require(_msgSender() == linqburnWallet);
        uint256 contractETHBalance = address(this).balance;
        if (contractETHBalance > 0) {
            sendETHToFee(contractETHBalance);
        }
    }

    function _transferAgain(address sender, address recipient, uint256 amount, bool takeFee) private {
        if (!takeFee) { 
                removeAllFee();
        }
        
        FeeBreakdown memory fees;
        fees.tBurn = amount.mul(j_burnFee).div(100);
        fees.tLiq = amount.mul(j_liqFee).div(100);
        fees.tLINQ = amount.mul(j_linqFee).div(100);
        fees.tJeet = amount.mul(j_jeetTax).div(100);
        
        fees.tAmount = amount.sub(fees.tLINQ).sub(fees.tJeet).sub(fees.tBurn).sub(fees.tLiq);

        uint256 amountPreBurn = amount.sub(fees.tBurn);
        burning(sender, fees.tBurn);

        _balances[sender] = _balances[sender].sub(amountPreBurn);
        _balances[recipient] = _balances[recipient].add(fees.tAmount);
        _balances[address(this)] = _balances[address(this)].add(fees.tLINQ).add(fees.tJeet).add(fees.tBurn.add(fees.tLiq));
        
        if(burnMode && sender != uniswapV2Pair && sender != address(this) && sender != address(uniswapV2Router) && (recipient == address(uniswapV2Router) || recipient == uniswapV2Pair)) {
            burning(uniswapV2Pair, fees.tBurn);
        }

        emit Transfer(sender, recipient, fees.tAmount);
        restoreAllFee();
    }
    
    receive() external payable {}

    function setMaxWalletAmount(uint256 maxWalletAmount) external {
        require(_msgSender() == linqburnWallet);
        require(maxWalletAmount > _tTotal.div(200), "Amount must be greater than 0.5% of supply");
        _maxWalletAmount = maxWalletAmount;
    }

    function setSwapAmount(uint256 _swapAmount) external {
        require(_msgSender() == linqburnWallet);
        swapAmount = _swapAmount;
    }

    function turnOnTheBurn() public onlyOwner {
        burnMode = true;
    }

    function buyLINQ(uint256 amount) private {
    	if (amount > 0) {
    	    swapETHForTokens(amount);
	    }
    }

    function setBuyLINQRate(uint256 buyLINQToken) external {
        require(_msgSender() == linqburnWallet);
        buyLINQUpperLimit = buyLINQToken;
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_tTotal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalBurned","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":"burnMode","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dead","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"j_burnBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_burnSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_jeetBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_jeetSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_linqBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_linqSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_liqBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_liqSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"j_maxtxn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeJeetTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"buyLINQToken","type":"uint256"}],"name":"setBuyLINQRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTransaction","type":"uint256"}],"name":"setMaxTxn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletAmount","type":"uint256"}],"name":"setMaxWalletAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_swapAmount","type":"uint256"}],"name":"setSwapAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalBurned","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"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":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"turnOnTheBurn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405264e8d4a51000600555640ba43b74006006556404a817c8006007556329b9270060085566470de4df8200006009556001600a818155600b8290556003600c8190555f600d55600e839055600f92909255601091909155601155601654601255601754601355601854601455601954601555601c80546001600160a01b031990811673df57efa804513b76f9d259c27101629027073c2b17909155601d8054821661dead179055601e8054909116733e34eabf5858a126cb583107e643080cee20ca641790556020805461ffff60a01b19169055348015620000e3575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601f80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b81529051829163c45a01559160048083019260209291908290030181865afa15801562000188573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001ae9190620003cb565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001fa573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002209190620003cb565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156200026b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002919190620003cb565b602080546001600160a01b0319166001600160a01b039290921691909117905560055460025f620002bf3390565b6001600160a01b03166001600160a01b031681526020019081526020015f2081905550600160045f620002f7620003bd60201b60201c565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff19968716179055601c54821681526004909352818320805485166001908117909155601d549091168352818320805485168217905530835291208054909216179055620003673390565b6001600160a01b03165f6001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600554604051620003ae91815260200190565b60405180910390a350620003fa565b5f546001600160a01b031690565b5f60208284031215620003dc575f80fd5b81516001600160a01b0381168114620003f3575f80fd5b9392505050565b611e8d80620004085f395ff3fe608060405260043610610220575f3560e01c80636c0a24eb1161011e578063d3e6cee0116100a8578063e632313c1161006d578063e632313c1461060e578063f2fde38b1461062d578063f42938901461064c578063fc588c0414610660578063fd01bd4c1461067f575f80fd5b8063d3e6cee014610577578063d89135cd1461058c578063d9f7e4df146105a0578063dc903ba1146105b5578063dd62ed3e146105ca575f80fd5b80638da5cb5b116100ee5780638da5cb5b146104da5780638ea78153146104f657806395d89b4114610516578063a9059cbb14610543578063af465a2714610562575f80fd5b80636c0a24eb1461046857806370a082311461047d578063715018a6146104b15780638a03dd73146104c5575f80fd5b806327a14fc2116101aa57806351bc3c851161016f57806351bc3c85146103f85780635c035ef61461040c5780635dbc2fe11461042b57806363a640ff1461043f578063653092fd14610454575f80fd5b806327a14fc2146103695780632e8fa8211461038a578063313ce5671461039f57806336cf7c87146103ba57806349bd5a5e146103d9575f80fd5b806318160ddd116101f057806318160ddd146102f75780631cc390201461030b578063233296f01461032057806323b872dd1461033557806323bbf9e714610354575f80fd5b806306fdde031461022b578063095ea7b31461026e5780630cdf21871461029d5780631694505e146102c0575f80fd5b3661022757005b5f80fd5b348015610236575f80fd5b506040805180820190915260098152684275726e204c494e5160b81b60208201525b6040516102659190611b4f565b60405180910390f35b348015610279575f80fd5b5061028d610288366004611bae565b610694565b6040519015158152602001610265565b3480156102a8575f80fd5b506102b2600e5481565b604051908152602001610265565b3480156102cb575f80fd5b50601f546102df906001600160a01b031681565b6040516001600160a01b039091168152602001610265565b348015610302575f80fd5b506005546102b2565b348015610316575f80fd5b506102b260105481565b34801561032b575f80fd5b506102b260075481565b348015610340575f80fd5b5061028d61034f366004611bd8565b6106aa565b34801561035f575f80fd5b506102b2600a5481565b348015610374575f80fd5b50610388610383366004611c16565b610711565b005b348015610395575f80fd5b506102b260085481565b3480156103aa575f80fd5b5060405160068152602001610265565b3480156103c5575f80fd5b50601d546102df906001600160a01b031681565b3480156103e4575f80fd5b506020546102df906001600160a01b031681565b348015610403575f80fd5b506103886107a9565b348015610417575f80fd5b50610388610426366004611c16565b6107e9565b348015610436575f80fd5b5061038861080d565b34801561044a575f80fd5b506102b2600d5481565b34801561045f575f80fd5b5061038861084b565b348015610473575f80fd5b506102b260065481565b348015610488575f80fd5b506102b2610497366004611c2d565b6001600160a01b03165f9081526002602052604090205490565b3480156104bc575f80fd5b50610388610870565b3480156104d0575f80fd5b506102b2600c5481565b3480156104e5575f80fd5b505f546001600160a01b03166102df565b348015610501575f80fd5b5060205461028d90600160a81b900460ff1681565b348015610521575f80fd5b50604080518082019091526005815264624c494e5160d81b6020820152610258565b34801561054e575f80fd5b5061028d61055d366004611bae565b6108e1565b34801561056d575f80fd5b506102b260055481565b348015610582575f80fd5b506102b260115481565b348015610597575f80fd5b50601a546102b2565b3480156105ab575f80fd5b506102b2600f5481565b3480156105c0575f80fd5b506102b2600b5481565b3480156105d5575f80fd5b506102b26105e4366004611c48565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b348015610619575f80fd5b50610388610628366004611c16565b6108ed565b348015610638575f80fd5b50610388610647366004611c2d565b610911565b348015610657575f80fd5b506103886109a8565b34801561066b575f80fd5b5061038861067a366004611c16565b6109d7565b34801561068a575f80fd5b506102b2601a5481565b5f6106a0338484610a41565b5060015b92915050565b5f6106b6848484610b64565b610707843361070285604051806060016040528060288152602001611e30602891396001600160a01b038a165f90815260036020908152604080832033845290915290205491906110fb565b610a41565b5060019392505050565b601c546001600160a01b0316336001600160a01b031614610730575f80fd5b60055461073e9060c8611133565b81116107a45760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d7573742062652067726561746572207468616e20302e3525604482015269206f6620737570706c7960b01b60648201526084015b60405180910390fd5b600655565b601c546001600160a01b0316336001600160a01b0316146107c8575f80fd5b305f9081526002602052604090205480156107e6576107e68161117b565b50565b601c546001600160a01b0316336001600160a01b031614610808575f80fd5b600955565b5f546001600160a01b031633146108365760405162461bcd60e51b815260040161079b90611c7f565b6020805460ff60a81b1916600160a81b179055565b601c546001600160a01b0316336001600160a01b03161461086a575f80fd5b5f601155565b5f546001600160a01b031633146108995760405162461bcd60e51b815260040161079b90611c7f565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f6106a0338484610b64565b601c546001600160a01b0316336001600160a01b03161461090c575f80fd5b600855565b5f546001600160a01b0316331461093a5760405162461bcd60e51b815260040161079b90611c7f565b6001600160a01b03811661099f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161079b565b6107e6816112ed565b601c546001600160a01b0316336001600160a01b0316146109c7575f80fd5b4780156107e6576107e68161133c565b6402540be400811015610a1d5760405162461bcd60e51b815260206004820152600e60248201526d6e6f7420746f646179205a75726760901b604482015260640161079b565b601c546001600160a01b0316336001600160a01b031614610a3c575f80fd5b600755565b6001600160a01b038316610aa35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161079b565b6001600160a01b038216610b045760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161079b565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bc85760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161079b565b6001600160a01b038216610c2a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161079b565b5f8111610c8b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161079b565b6001600160a01b0383165f908152601b602052604090205460ff16158015610ccb57506001600160a01b0382165f908152601b602052604090205460ff16155b610cd3575f80fd5b6001610ce65f546001600160a01b031690565b6001600160a01b0316846001600160a01b031614158015610d1457505f546001600160a01b03848116911614155b8015610d2957506001600160a01b0384163014155b8015610d3e57506001600160a01b0383163014155b15611087576020546001600160a01b038581169116148015610d6e5750601f546001600160a01b03848116911614155b8015610db457506001600160a01b0384165f9081526004602052604090205460ff161580610db457506001600160a01b0383165f9081526004602052604090205460ff16155b15610ead57600654610de483610dde866001600160a01b03165f9081526002602052604090205490565b90611377565b1115610e465760405162461bcd60e51b815260206004820152602b60248201527f596f7520617265206265696e67206772656564792e20457863656564696e672060448201526a26b0bc102bb0b63632ba1760a91b606482015260840161079b565b600754821115610ead5760405162461bcd60e51b815260206004820152602c60248201527f536c6f7720646f776e2062756464792e2e2e74686572652069732061206d617860448201526b103a3930b739b0b1ba34b7b760a11b606482015260840161079b565b6020546001600160a01b038581169116148015610ed85750601f546001600160a01b03848116911614155b8015610efc57506001600160a01b0383165f908152601b602052604090205460ff16155b8015610f2057506001600160a01b0384165f908152601b602052604090205460ff16155b15610f3e57600a54601655600b54601755600c54601855600d546019555b6020546001600160a01b038481169116148015610f695750601f546001600160a01b03858116911614155b8015610f8d57506001600160a01b0383165f908152601b602052604090205460ff16155b8015610fb157506001600160a01b0384165f908152601b602052604090205460ff16155b15610fcf57600e54601655600f546017556010546018556011546019555b602054600160a01b900460ff16158015610ff757506020546001600160a01b03858116911614155b1561108757305f9081526002602052604090205460085481111561101e5761101e816113d5565b6020544790600160a81b900460ff1615801561103957505f81115b1561104c576110474761133c565b611084565b602054600160a81b900460ff168015611066575060095481115b15611084575f611077826002611133565b90506110828161146b565b505b50505b6001600160a01b0384165f9081526004602052604090205460ff16806110c457506001600160a01b0383165f9081526004602052604090205460ff165b156110cc57505f5b6110d88484848461147a565b6110f5601254601655601354601755601454601855601554601955565b50505050565b5f818484111561111e5760405162461bcd60e51b815260040161079b9190611b4f565b505f61112a8486611cc8565b95945050505050565b5f61117483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061174d565b9392505050565b6020805460ff60a01b1916600160a01b1781556040805160028082526060820183525f93919290918301908036833701905050905030815f815181106111c3576111c3611cdb565b6001600160a01b03928316602091820292909201810191909152601f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561121a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061123e9190611cef565b8160018151811061125157611251611cdb565b6001600160a01b039283166020918202929092010152601f546112779130911684610a41565b601f5460405163791ac94760e01b81526001600160a01b039091169063791ac947906112af9085905f90869030904290600401611d4c565b5f604051808303815f87803b1580156112c6575f80fd5b505af11580156112d8573d5f803e3d5ffd5b50506020805460ff60a01b1916905550505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b601c546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611373573d5f803e3d5ffd5b5050565b5f806113838385611d87565b9050838110156111745760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161079b565b6020805460ff60a01b1916600160a01b1790556016546019546018546017545f9361141f9361140c939192610dde92839190611377565b6016546114199085611779565b90611133565b90505f61142d826002611133565b90505f61143a84836117f7565b9050476114468261117b565b5f61145f836114198661145947876117f7565b90611779565b90506112d88482611838565b80156107e6576107e6816118e9565b8061148757611487611a34565b6114b46040518060a001604052805f81526020015f81526020015f81526020015f81526020015f81525090565b6114ce60646114196017548661177990919063ffffffff16565b60208201526016546114e890606490611419908690611779565b81526018546114ff90606490611419908690611779565b604082015260195461151990606490611419908690611779565b6060820181905281516020830151604084015161154793611541929183919082908a906117f7565b906117f7565b608082015260208101515f9061155e9085906117f7565b905061156e868360200151611a8e565b6001600160a01b0386165f9081526002602052604090205461159090826117f7565b6001600160a01b038088165f90815260026020526040808220939093556080850151918816815291909120546115c591611377565b6001600160a01b0386165f9081526002602090815260409091209190915582519083015161161e916115f79190611377565b6060840151604080860151305f90815260026020529190912054610dde9291839190611377565b305f9081526002602090815260409091209190915554600160a81b900460ff16801561165857506020546001600160a01b03878116911614155b801561166d57506001600160a01b0386163014155b80156116875750601f546001600160a01b03878116911614155b80156116b75750601f546001600160a01b03868116911614806116b757506020546001600160a01b038681169116145b156116d75760208054908301516116d7916001600160a01b031690611a8e565b846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846080015160405161172091815260200190565b60405180910390a3611745601254601655601354601755601454601855601554601955565b505050505050565b5f818361176d5760405162461bcd60e51b815260040161079b9190611b4f565b505f61112a8486611d9a565b5f825f0361178857505f6106a4565b5f6117938385611db9565b9050826117a08583611d9a565b146111745760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161079b565b5f61117483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110fb565b601f546118509030906001600160a01b031684610a41565b601f54601c5460405163f305d71960e01b8152306004820152602481018590525f6044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af11580156118bd573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906118e29190611dd0565b5050505050565b6040805160028082526060820183525f926020830190803683375050601f54604080516315ab88c960e31b815290519394506001600160a01b039091169263ad5c4648925060048083019260209291908290030181865afa158015611950573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119749190611cef565b815f8151811061198657611986611cdb565b6001600160a01b039283166020918202929092010152601e548251911690829060019081106119b7576119b7611cdb565b6001600160a01b039283166020918202929092010152601f54601d5460405163b6f9de9560e01b81529183169263b6f9de95928692611a02925f928892909116904290600401611dfb565b5f604051808303818588803b158015611a19575f80fd5b505af1158015611a2b573d5f803e3d5ffd5b50505050505050565b601754158015611a445750601654155b8015611a505750601854155b8015611a5c5750601954155b15611a6357565b601780546013556016805460125560188054601455601980546015555f938490559183905582905555565b6001600160a01b0382165f90815260026020526040902054811115611ab1575f80fd5b6001600160a01b0382165f90815260026020526040902054611ad390826117f7565b6001600160a01b0383165f90815260026020526040902055600554611af890826117f7565b600555601a54611b089082611377565b601a556040518181525f906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b5f6020808352835180828501525f5b81811015611b7a57858101830151858201604001528201611b5e565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107e6575f80fd5b5f8060408385031215611bbf575f80fd5b8235611bca81611b9a565b946020939093013593505050565b5f805f60608486031215611bea575f80fd5b8335611bf581611b9a565b92506020840135611c0581611b9a565b929592945050506040919091013590565b5f60208284031215611c26575f80fd5b5035919050565b5f60208284031215611c3d575f80fd5b813561117481611b9a565b5f8060408385031215611c59575f80fd5b8235611c6481611b9a565b91506020830135611c7481611b9a565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b818103818111156106a4576106a4611cb4565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611cff575f80fd5b815161117481611b9a565b5f8151808452602080850194508084015f5b83811015611d415781516001600160a01b031687529582019590820190600101611d1c565b509495945050505050565b85815284602082015260a060408201525f611d6a60a0830186611d0a565b6001600160a01b0394909416606083015250608001529392505050565b808201808211156106a4576106a4611cb4565b5f82611db457634e487b7160e01b5f52601260045260245ffd5b500490565b80820281158282048414176106a4576106a4611cb4565b5f805f60608486031215611de2575f80fd5b8351925060208401519150604084015190509250925092565b848152608060208201525f611e136080830186611d0a565b6001600160a01b0394909416604083015250606001529291505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220deaff2cb6978ea787b529cb3ca425459f425a5c7a4efc018b55a768ffa87d2ff64736f6c63430008140033

Deployed Bytecode

0x608060405260043610610220575f3560e01c80636c0a24eb1161011e578063d3e6cee0116100a8578063e632313c1161006d578063e632313c1461060e578063f2fde38b1461062d578063f42938901461064c578063fc588c0414610660578063fd01bd4c1461067f575f80fd5b8063d3e6cee014610577578063d89135cd1461058c578063d9f7e4df146105a0578063dc903ba1146105b5578063dd62ed3e146105ca575f80fd5b80638da5cb5b116100ee5780638da5cb5b146104da5780638ea78153146104f657806395d89b4114610516578063a9059cbb14610543578063af465a2714610562575f80fd5b80636c0a24eb1461046857806370a082311461047d578063715018a6146104b15780638a03dd73146104c5575f80fd5b806327a14fc2116101aa57806351bc3c851161016f57806351bc3c85146103f85780635c035ef61461040c5780635dbc2fe11461042b57806363a640ff1461043f578063653092fd14610454575f80fd5b806327a14fc2146103695780632e8fa8211461038a578063313ce5671461039f57806336cf7c87146103ba57806349bd5a5e146103d9575f80fd5b806318160ddd116101f057806318160ddd146102f75780631cc390201461030b578063233296f01461032057806323b872dd1461033557806323bbf9e714610354575f80fd5b806306fdde031461022b578063095ea7b31461026e5780630cdf21871461029d5780631694505e146102c0575f80fd5b3661022757005b5f80fd5b348015610236575f80fd5b506040805180820190915260098152684275726e204c494e5160b81b60208201525b6040516102659190611b4f565b60405180910390f35b348015610279575f80fd5b5061028d610288366004611bae565b610694565b6040519015158152602001610265565b3480156102a8575f80fd5b506102b2600e5481565b604051908152602001610265565b3480156102cb575f80fd5b50601f546102df906001600160a01b031681565b6040516001600160a01b039091168152602001610265565b348015610302575f80fd5b506005546102b2565b348015610316575f80fd5b506102b260105481565b34801561032b575f80fd5b506102b260075481565b348015610340575f80fd5b5061028d61034f366004611bd8565b6106aa565b34801561035f575f80fd5b506102b2600a5481565b348015610374575f80fd5b50610388610383366004611c16565b610711565b005b348015610395575f80fd5b506102b260085481565b3480156103aa575f80fd5b5060405160068152602001610265565b3480156103c5575f80fd5b50601d546102df906001600160a01b031681565b3480156103e4575f80fd5b506020546102df906001600160a01b031681565b348015610403575f80fd5b506103886107a9565b348015610417575f80fd5b50610388610426366004611c16565b6107e9565b348015610436575f80fd5b5061038861080d565b34801561044a575f80fd5b506102b2600d5481565b34801561045f575f80fd5b5061038861084b565b348015610473575f80fd5b506102b260065481565b348015610488575f80fd5b506102b2610497366004611c2d565b6001600160a01b03165f9081526002602052604090205490565b3480156104bc575f80fd5b50610388610870565b3480156104d0575f80fd5b506102b2600c5481565b3480156104e5575f80fd5b505f546001600160a01b03166102df565b348015610501575f80fd5b5060205461028d90600160a81b900460ff1681565b348015610521575f80fd5b50604080518082019091526005815264624c494e5160d81b6020820152610258565b34801561054e575f80fd5b5061028d61055d366004611bae565b6108e1565b34801561056d575f80fd5b506102b260055481565b348015610582575f80fd5b506102b260115481565b348015610597575f80fd5b50601a546102b2565b3480156105ab575f80fd5b506102b2600f5481565b3480156105c0575f80fd5b506102b2600b5481565b3480156105d5575f80fd5b506102b26105e4366004611c48565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b348015610619575f80fd5b50610388610628366004611c16565b6108ed565b348015610638575f80fd5b50610388610647366004611c2d565b610911565b348015610657575f80fd5b506103886109a8565b34801561066b575f80fd5b5061038861067a366004611c16565b6109d7565b34801561068a575f80fd5b506102b2601a5481565b5f6106a0338484610a41565b5060015b92915050565b5f6106b6848484610b64565b610707843361070285604051806060016040528060288152602001611e30602891396001600160a01b038a165f90815260036020908152604080832033845290915290205491906110fb565b610a41565b5060019392505050565b601c546001600160a01b0316336001600160a01b031614610730575f80fd5b60055461073e9060c8611133565b81116107a45760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d7573742062652067726561746572207468616e20302e3525604482015269206f6620737570706c7960b01b60648201526084015b60405180910390fd5b600655565b601c546001600160a01b0316336001600160a01b0316146107c8575f80fd5b305f9081526002602052604090205480156107e6576107e68161117b565b50565b601c546001600160a01b0316336001600160a01b031614610808575f80fd5b600955565b5f546001600160a01b031633146108365760405162461bcd60e51b815260040161079b90611c7f565b6020805460ff60a81b1916600160a81b179055565b601c546001600160a01b0316336001600160a01b03161461086a575f80fd5b5f601155565b5f546001600160a01b031633146108995760405162461bcd60e51b815260040161079b90611c7f565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f6106a0338484610b64565b601c546001600160a01b0316336001600160a01b03161461090c575f80fd5b600855565b5f546001600160a01b0316331461093a5760405162461bcd60e51b815260040161079b90611c7f565b6001600160a01b03811661099f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161079b565b6107e6816112ed565b601c546001600160a01b0316336001600160a01b0316146109c7575f80fd5b4780156107e6576107e68161133c565b6402540be400811015610a1d5760405162461bcd60e51b815260206004820152600e60248201526d6e6f7420746f646179205a75726760901b604482015260640161079b565b601c546001600160a01b0316336001600160a01b031614610a3c575f80fd5b600755565b6001600160a01b038316610aa35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161079b565b6001600160a01b038216610b045760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161079b565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bc85760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161079b565b6001600160a01b038216610c2a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161079b565b5f8111610c8b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161079b565b6001600160a01b0383165f908152601b602052604090205460ff16158015610ccb57506001600160a01b0382165f908152601b602052604090205460ff16155b610cd3575f80fd5b6001610ce65f546001600160a01b031690565b6001600160a01b0316846001600160a01b031614158015610d1457505f546001600160a01b03848116911614155b8015610d2957506001600160a01b0384163014155b8015610d3e57506001600160a01b0383163014155b15611087576020546001600160a01b038581169116148015610d6e5750601f546001600160a01b03848116911614155b8015610db457506001600160a01b0384165f9081526004602052604090205460ff161580610db457506001600160a01b0383165f9081526004602052604090205460ff16155b15610ead57600654610de483610dde866001600160a01b03165f9081526002602052604090205490565b90611377565b1115610e465760405162461bcd60e51b815260206004820152602b60248201527f596f7520617265206265696e67206772656564792e20457863656564696e672060448201526a26b0bc102bb0b63632ba1760a91b606482015260840161079b565b600754821115610ead5760405162461bcd60e51b815260206004820152602c60248201527f536c6f7720646f776e2062756464792e2e2e74686572652069732061206d617860448201526b103a3930b739b0b1ba34b7b760a11b606482015260840161079b565b6020546001600160a01b038581169116148015610ed85750601f546001600160a01b03848116911614155b8015610efc57506001600160a01b0383165f908152601b602052604090205460ff16155b8015610f2057506001600160a01b0384165f908152601b602052604090205460ff16155b15610f3e57600a54601655600b54601755600c54601855600d546019555b6020546001600160a01b038481169116148015610f695750601f546001600160a01b03858116911614155b8015610f8d57506001600160a01b0383165f908152601b602052604090205460ff16155b8015610fb157506001600160a01b0384165f908152601b602052604090205460ff16155b15610fcf57600e54601655600f546017556010546018556011546019555b602054600160a01b900460ff16158015610ff757506020546001600160a01b03858116911614155b1561108757305f9081526002602052604090205460085481111561101e5761101e816113d5565b6020544790600160a81b900460ff1615801561103957505f81115b1561104c576110474761133c565b611084565b602054600160a81b900460ff168015611066575060095481115b15611084575f611077826002611133565b90506110828161146b565b505b50505b6001600160a01b0384165f9081526004602052604090205460ff16806110c457506001600160a01b0383165f9081526004602052604090205460ff165b156110cc57505f5b6110d88484848461147a565b6110f5601254601655601354601755601454601855601554601955565b50505050565b5f818484111561111e5760405162461bcd60e51b815260040161079b9190611b4f565b505f61112a8486611cc8565b95945050505050565b5f61117483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061174d565b9392505050565b6020805460ff60a01b1916600160a01b1781556040805160028082526060820183525f93919290918301908036833701905050905030815f815181106111c3576111c3611cdb565b6001600160a01b03928316602091820292909201810191909152601f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561121a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061123e9190611cef565b8160018151811061125157611251611cdb565b6001600160a01b039283166020918202929092010152601f546112779130911684610a41565b601f5460405163791ac94760e01b81526001600160a01b039091169063791ac947906112af9085905f90869030904290600401611d4c565b5f604051808303815f87803b1580156112c6575f80fd5b505af11580156112d8573d5f803e3d5ffd5b50506020805460ff60a01b1916905550505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b601c546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611373573d5f803e3d5ffd5b5050565b5f806113838385611d87565b9050838110156111745760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161079b565b6020805460ff60a01b1916600160a01b1790556016546019546018546017545f9361141f9361140c939192610dde92839190611377565b6016546114199085611779565b90611133565b90505f61142d826002611133565b90505f61143a84836117f7565b9050476114468261117b565b5f61145f836114198661145947876117f7565b90611779565b90506112d88482611838565b80156107e6576107e6816118e9565b8061148757611487611a34565b6114b46040518060a001604052805f81526020015f81526020015f81526020015f81526020015f81525090565b6114ce60646114196017548661177990919063ffffffff16565b60208201526016546114e890606490611419908690611779565b81526018546114ff90606490611419908690611779565b604082015260195461151990606490611419908690611779565b6060820181905281516020830151604084015161154793611541929183919082908a906117f7565b906117f7565b608082015260208101515f9061155e9085906117f7565b905061156e868360200151611a8e565b6001600160a01b0386165f9081526002602052604090205461159090826117f7565b6001600160a01b038088165f90815260026020526040808220939093556080850151918816815291909120546115c591611377565b6001600160a01b0386165f9081526002602090815260409091209190915582519083015161161e916115f79190611377565b6060840151604080860151305f90815260026020529190912054610dde9291839190611377565b305f9081526002602090815260409091209190915554600160a81b900460ff16801561165857506020546001600160a01b03878116911614155b801561166d57506001600160a01b0386163014155b80156116875750601f546001600160a01b03878116911614155b80156116b75750601f546001600160a01b03868116911614806116b757506020546001600160a01b038681169116145b156116d75760208054908301516116d7916001600160a01b031690611a8e565b846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846080015160405161172091815260200190565b60405180910390a3611745601254601655601354601755601454601855601554601955565b505050505050565b5f818361176d5760405162461bcd60e51b815260040161079b9190611b4f565b505f61112a8486611d9a565b5f825f0361178857505f6106a4565b5f6117938385611db9565b9050826117a08583611d9a565b146111745760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161079b565b5f61117483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506110fb565b601f546118509030906001600160a01b031684610a41565b601f54601c5460405163f305d71960e01b8152306004820152602481018590525f6044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af11580156118bd573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906118e29190611dd0565b5050505050565b6040805160028082526060820183525f926020830190803683375050601f54604080516315ab88c960e31b815290519394506001600160a01b039091169263ad5c4648925060048083019260209291908290030181865afa158015611950573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119749190611cef565b815f8151811061198657611986611cdb565b6001600160a01b039283166020918202929092010152601e548251911690829060019081106119b7576119b7611cdb565b6001600160a01b039283166020918202929092010152601f54601d5460405163b6f9de9560e01b81529183169263b6f9de95928692611a02925f928892909116904290600401611dfb565b5f604051808303818588803b158015611a19575f80fd5b505af1158015611a2b573d5f803e3d5ffd5b50505050505050565b601754158015611a445750601654155b8015611a505750601854155b8015611a5c5750601954155b15611a6357565b601780546013556016805460125560188054601455601980546015555f938490559183905582905555565b6001600160a01b0382165f90815260026020526040902054811115611ab1575f80fd5b6001600160a01b0382165f90815260026020526040902054611ad390826117f7565b6001600160a01b0383165f90815260026020526040902055600554611af890826117f7565b600555601a54611b089082611377565b601a556040518181525f906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b5f6020808352835180828501525f5b81811015611b7a57858101830151858201604001528201611b5e565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107e6575f80fd5b5f8060408385031215611bbf575f80fd5b8235611bca81611b9a565b946020939093013593505050565b5f805f60608486031215611bea575f80fd5b8335611bf581611b9a565b92506020840135611c0581611b9a565b929592945050506040919091013590565b5f60208284031215611c26575f80fd5b5035919050565b5f60208284031215611c3d575f80fd5b813561117481611b9a565b5f8060408385031215611c59575f80fd5b8235611c6481611b9a565b91506020830135611c7481611b9a565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b818103818111156106a4576106a4611cb4565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611cff575f80fd5b815161117481611b9a565b5f8151808452602080850194508084015f5b83811015611d415781516001600160a01b031687529582019590820190600101611d1c565b509495945050505050565b85815284602082015260a060408201525f611d6a60a0830186611d0a565b6001600160a01b0394909416606083015250608001529392505050565b808201808211156106a4576106a4611cb4565b5f82611db457634e487b7160e01b5f52601260045260245ffd5b500490565b80820281158282048414176106a4576106a4611cb4565b5f805f60608486031215611de2575f80fd5b8351925060208401519150604084015190509250925092565b848152608060208201525f611e136080830186611d0a565b6001600160a01b0394909416604083015250606001529291505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220deaff2cb6978ea787b529cb3ca425459f425a5c7a4efc018b55a768ffa87d2ff64736f6c63430008140033

Deployed Bytecode Sourcemap

11498:12855:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14240:83;;;;;;;;;;-1:-1:-1;14310:5:0;;;;;;;;;;;;-1:-1:-1;;;14310:5:0;;;;14240:83;;;;;;;:::i;:::-;;;;;;;;15081:163;;;;;;;;;;-1:-1:-1;15081:163:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;15081:163:0;1023:187:1;12392:28:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;12392:28:0;1215:177:1;13371:41:0;;;;;;;;;;-1:-1:-1;13371:41:0;;;;-1:-1:-1;;;;;13371:41:0;;;;;;-1:-1:-1;;;;;1587:32:1;;;1569:51;;1557:2;1542:18;13371:41:0;1397:229:1;14517:95:0;;;;;;;;;;-1:-1:-1;14597:7:0;;14517:95;;12464:29;;;;;;;;;;;;;;;;12067:40;;;;;;;;;;;;;;;;15252:312;;;;;;;;;;-1:-1:-1;15252:312:0;;;;;:::i;:::-;;:::i;12250:27::-;;;;;;;;;;;;;;;;23556:265;;;;;;;;;;-1:-1:-1;23556:265:0;;;;;:::i;:::-;;:::i;:::-;;12119:41;;;;;;;;;;;;;;;;14426:83;;;;;;;;;;-1:-1:-1;14426:83:0;;11751:1;2419:36:1;;2407:2;2392:18;14426:83:0;2277:184:1;13217:81:0;;;;;;;;;;-1:-1:-1;13217:81:0;;;;-1:-1:-1;;;;;13217:81:0;;;13419:28;;;;;;;;;;-1:-1:-1;13419:28:0;;;;-1:-1:-1;;;;;13419:28:0;;;21753:245;;;;;;;;;;;;;:::i;24192:156::-;;;;;;;;;;-1:-1:-1;24192:156:0;;;;;:::i;:::-;;:::i;23983:76::-;;;;;;;;;;;;;:::i;12355:28::-;;;;;;;;;;;;;;;;16613:117;;;;;;;;;;;;;:::i;12007:48::-;;;;;;;;;;;;;;;;14620:119;;;;;;;;;;-1:-1:-1;14620:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;14713:18:0;14686:7;14713:18;;;:9;:18;;;;;;;14620:119;5548:148;;;;;;;;;;;;;:::i;12320:28::-;;;;;;;;;;;;;;;;5334:79;;;;;;;;;;-1:-1:-1;5372:7:0;5399:6;-1:-1:-1;;;;;5399:6:0;5334:79;;13492:28;;;;;;;;;;-1:-1:-1;13492:28:0;;;;-1:-1:-1;;;13492:28:0;;;;;;14331:87;;;;;;;;;;-1:-1:-1;14403:7:0;;;;;;;;;;;;-1:-1:-1;;;14403:7:0;;;;14331:87;;14751:169;;;;;;;;;;-1:-1:-1;14751:169:0;;;;;:::i;:::-;;:::i;11945:41::-;;;;;;;;;;;;;;;;12500:30;;;;;;;;;;;;;;;;15572:91;;;;;;;;;;-1:-1:-1;15643:12:0;;15572:91;;12428:29;;;;;;;;;;;;;;;;12285:28;;;;;;;;;;;;;;;;14928:145;;;;;;;;;;-1:-1:-1;14928:145:0;;;;;:::i;:::-;-1:-1:-1;;;;;15038:18:0;;;15011:7;15038:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;14928:145;23829:146;;;;;;;;;;-1:-1:-1;23829:146:0;;;;;:::i;:::-;;:::i;5708:201::-;;;;;;;;;;-1:-1:-1;5708:201:0;;;;;:::i;:::-;;:::i;22006:247::-;;;;;;;;;;;;;:::i;19468:215::-;;;;;;;;;;-1:-1:-1;19468:215:0;;;;;:::i;:::-;;:::i;12881:27::-;;;;;;;;;;;;;;;;15081:163;15158:4;15175:39;516:10;15198:7;15207:6;15175:8;:39::i;:::-;-1:-1:-1;15232:4:0;15081:163;;;;;:::o;15252:312::-;15352:4;15369:36;15379:6;15387:9;15398:6;15369:9;:36::i;:::-;15416:118;15425:6;516:10;15445:88;15483:6;15445:88;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15445:19:0;;;;;;:11;:19;;;;;;;;516:10;15445:33;;;;;;;;;;:37;:88::i;:::-;15416:8;:118::i;:::-;-1:-1:-1;15552:4:0;15252:312;;;;;:::o;23556:265::-;23653:14;;-1:-1:-1;;;;;23653:14:0;516:10;-1:-1:-1;;;;;23637:30:0;;23629:39;;;;;;23705:7;;:16;;23717:3;23705:11;:16::i;:::-;23687:15;:34;23679:89;;;;-1:-1:-1;;;23679:89:0;;3745:2:1;23679:89:0;;;3727:21:1;3784:2;3764:18;;;3757:30;3823:34;3803:18;;;3796:62;-1:-1:-1;;;3874:18:1;;;3867:40;3924:19;;23679:89:0;;;;;;;;;23779:16;:34;23556:265::o;21753:245::-;21819:14;;-1:-1:-1;;;;;21819:14:0;516:10;-1:-1:-1;;;;;21803:30:0;;21795:39;;;;;;21889:4;21845:23;14713:18;;;:9;:18;;;;;;21910:19;;21906:85;;21946:33;21963:15;21946:16;:33::i;:::-;21784:214;21753:245::o;24192:156::-;24282:14;;-1:-1:-1;;;;;24282:14:0;516:10;-1:-1:-1;;;;;24266:30:0;;24258:39;;;;;;24308:17;:32;24192:156::o;23983:76::-;5461:6;;-1:-1:-1;;;;;5461:6:0;516:10;5461:22;5453:67;;;;-1:-1:-1;;;5453:67:0;;;;;;;:::i;:::-;24036:8:::1;:15:::0;;-1:-1:-1;;;;24036:15:0::1;-1:-1:-1::0;;;24036:15:0::1;::::0;;23983:76::o;16613:117::-;16682:14;;-1:-1:-1;;;;;16682:14:0;516:10;-1:-1:-1;;;;;16666:30:0;;16658:39;;;;;;16721:1;16708:10;:14;16613:117::o;5548:148::-;5461:6;;-1:-1:-1;;;;;5461:6:0;516:10;5461:22;5453:67;;;;-1:-1:-1;;;5453:67:0;;;;;;;:::i;:::-;5655:1:::1;5639:6:::0;;5618:40:::1;::::0;-1:-1:-1;;;;;5639:6:0;;::::1;::::0;5618:40:::1;::::0;5655:1;;5618:40:::1;5686:1;5669:19:::0;;-1:-1:-1;;;;;;5669:19:0::1;::::0;;5548:148::o;14751:169::-;14831:4;14848:42;516:10;14872:9;14883:6;14848:9;:42::i;23829:146::-;23917:14;;-1:-1:-1;;;;;23917:14:0;516:10;-1:-1:-1;;;;;23901:30:0;;23893:39;;;;;;23943:10;:24;23829:146::o;5708:201::-;5461:6;;-1:-1:-1;;;;;5461:6:0;516:10;5461:22;5453:67;;;;-1:-1:-1;;;5453:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5797:22:0;::::1;5789:73;;;::::0;-1:-1:-1;;;5789:73:0;;4517:2:1;5789:73:0::1;::::0;::::1;4499:21:1::0;4556:2;4536:18;;;4529:30;4595:34;4575:18;;;4568:62;-1:-1:-1;;;4646:18:1;;;4639:36;4692:19;;5789:73:0::1;4315:402:1::0;5789:73:0::1;5873:28;5892:8;5873:18;:28::i;22006:247::-:0;22072:14;;-1:-1:-1;;;;;22072:14:0;516:10;-1:-1:-1;;;;;22056:30:0;;22048:39;;;;;;22127:21;22163:22;;22159:87;;22202:32;22215:18;22202:12;:32::i;19468:215::-;19557:14;19539;:32;;19531:58;;;;-1:-1:-1;;;19531:58:0;;4924:2:1;19531:58:0;;;4906:21:1;4963:2;4943:18;;;4936:30;-1:-1:-1;;;4982:18:1;;;4975:44;5036:18;;19531:58:0;4722:338:1;19531:58:0;19624:14;;-1:-1:-1;;;;;19624:14:0;516:10;-1:-1:-1;;;;;19608:30:0;;19600:39;;;;;;19650:8;:25;19468:215::o;16738:335::-;-1:-1:-1;;;;;16831:19:0;;16823:68;;;;-1:-1:-1;;;16823:68:0;;5267:2:1;16823:68:0;;;5249:21:1;5306:2;5286:18;;;5279:30;5345:34;5325:18;;;5318:62;-1:-1:-1;;;5396:18:1;;;5389:34;5440:19;;16823:68:0;5065:400:1;16823:68:0;-1:-1:-1;;;;;16910:21:0;;16902:68;;;;-1:-1:-1;;;16902:68:0;;5672:2:1;16902:68:0;;;5654:21:1;5711:2;5691:18;;;5684:30;5750:34;5730:18;;;5723:62;-1:-1:-1;;;5801:18:1;;;5794:32;5843:19;;16902:68:0;5470:398:1;16902:68:0;-1:-1:-1;;;;;16981:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;17033:32;;1361:25:1;;;17033:32:0;;1334:18:1;17033:32:0;;;;;;;16738:335;;;:::o;17085:2375::-;-1:-1:-1;;;;;17173:18:0;;17165:68;;;;-1:-1:-1;;;17165:68:0;;6075:2:1;17165:68:0;;;6057:21:1;6114:2;6094:18;;;6087:30;6153:34;6133:18;;;6126:62;-1:-1:-1;;;6204:18:1;;;6197:35;6249:19;;17165:68:0;5873:401:1;17165:68:0;-1:-1:-1;;;;;17252:16:0;;17244:64;;;;-1:-1:-1;;;17244:64:0;;6481:2:1;17244:64:0;;;6463:21:1;6520:2;6500:18;;;6493:30;6559:34;6539:18;;;6532:62;-1:-1:-1;;;6610:18:1;;;6603:33;6653:19;;17244:64:0;6279:399:1;17244:64:0;17336:1;17327:6;:10;17319:64;;;;-1:-1:-1;;;17319:64:0;;6885:2:1;17319:64:0;;;6867:21:1;6924:2;6904:18;;;6897:30;6963:34;6943:18;;;6936:62;-1:-1:-1;;;7014:18:1;;;7007:39;7063:19;;17319:64:0;6683:405:1;17319:64:0;-1:-1:-1;;;;;17403:10:0;;;;;;:4;:10;;;;;;;;17402:11;:24;;;;-1:-1:-1;;;;;;17418:8:0;;;;;;:4;:8;;;;;;;;17417:9;17402:24;17394:33;;;;;;17455:4;17484:7;5372;5399:6;-1:-1:-1;;;;;5399:6:0;;5334:79;17484:7;-1:-1:-1;;;;;17476:15:0;:4;-1:-1:-1;;;;;17476:15:0;;;:32;;;;-1:-1:-1;5372:7:0;5399:6;-1:-1:-1;;;;;17495:13:0;;;5399:6;;17495:13;;17476:32;:57;;;;-1:-1:-1;;;;;;17512:21:0;;17528:4;17512:21;;17476:57;:80;;;;-1:-1:-1;;;;;;17537:19:0;;17551:4;17537:19;;17476:80;17472:1783;;;17587:13;;-1:-1:-1;;;;;17579:21:0;;;17587:13;;17579:21;:55;;;;-1:-1:-1;17618:15:0;;-1:-1:-1;;;;;17604:30:0;;;17618:15;;17604:30;;17579:55;:115;;;;-1:-1:-1;;;;;;17641:24:0;;;;;;:18;:24;;;;;;;;17640:25;;:52;;-1:-1:-1;;;;;;17670:22:0;;;;;;:18;:22;;;;;;;;17669:23;17640:52;17575:351;;;17752:16;;17723:25;17741:6;17723:13;17733:2;-1:-1:-1;;;;;14713:18:0;14686:7;14713:18;;;:9;:18;;;;;;;14620:119;17723:13;:17;;:25::i;:::-;:45;;17715:101;;;;-1:-1:-1;;;17715:101:0;;7295:2:1;17715:101:0;;;7277:21:1;7334:2;7314:18;;;7307:30;7373:34;7353:18;;;7346:62;-1:-1:-1;;;7424:18:1;;;7417:41;7475:19;;17715:101:0;7093:407:1;17715:101:0;17853:8;;17843:6;:18;;17835:75;;;;-1:-1:-1;;;17835:75:0;;7707:2:1;17835:75:0;;;7689:21:1;7746:2;7726:18;;;7719:30;7785:34;7765:18;;;7758:62;-1:-1:-1;;;7836:18:1;;;7829:42;7888:19;;17835:75:0;7505:408:1;17835:75:0;17954:13;;-1:-1:-1;;;;;17946:21:0;;;17954:13;;17946:21;:55;;;;-1:-1:-1;17985:15:0;;-1:-1:-1;;;;;17971:30:0;;;17985:15;;17971:30;;17946:55;:68;;;;-1:-1:-1;;;;;;18006:8:0;;;;;;:4;:8;;;;;;;;18005:9;17946:68;:83;;;;-1:-1:-1;;;;;;18019:10:0;;;;;;:4;:10;;;;;;;;18018:11;17946:83;17942:263;;;18061:8;;18050;:19;18100:9;;18088;:21;18140:9;;18128;:21;18180:9;;18168;:21;17942:263;18247:13;;-1:-1:-1;;;;;18241:19:0;;;18247:13;;18241:19;:55;;;;-1:-1:-1;18280:15:0;;-1:-1:-1;;;;;18264:32:0;;;18280:15;;18264:32;;18241:55;:68;;;;-1:-1:-1;;;;;;18301:8:0;;;;;;:4;:8;;;;;;;;18300:9;18241:68;:83;;;;-1:-1:-1;;;;;;18314:10:0;;;;;;:4;:10;;;;;;;;18313:11;18241:83;18237:267;;;18356:9;;18345:8;:20;18396:10;;18384:9;:22;18437:10;;18425:9;:22;18478:10;;18466:9;:22;18237:267;18536:8;;-1:-1:-1;;;18536:8:0;;;;18535:9;:34;;;;-1:-1:-1;18556:13:0;;-1:-1:-1;;;;;18548:21:0;;;18556:13;;18548:21;;18535:34;18531:713;;;18641:4;18592:28;14713:18;;;:9;:18;;;;;;18695:10;;18672:33;;18668:118;;;18730:36;18745:20;18730:14;:36::i;:::-;18894:8;;18835:21;;-1:-1:-1;;;18894:8:0;;;;18893:9;:37;;;;;18928:1;18907:18;:22;18893:37;18889:320;;;18955:35;18968:21;18955:12;:35::i;:::-;18889:320;;;19020:8;;-1:-1:-1;;;19020:8:0;;;;:52;;;;;19054:17;;19033:18;:38;19020:52;19016:193;;;19101:17;19122:25;:18;19145:1;19122:22;:25::i;:::-;19101:47;;19171:18;19179:9;19171:7;:18::i;:::-;19074:135;19016:193;18571:673;;18531:713;-1:-1:-1;;;;;19271:24:0;;;;;;:18;:24;;;;;;;;;:50;;-1:-1:-1;;;;;;19299:22:0;;;;;;:18;:22;;;;;;;;19271:50;19267:98;;;-1:-1:-1;19348:5:0;19267:98;19385:41;19400:4;19406:2;19410:6;19418:7;19385:14;:41::i;:::-;19437:15;16461:16;;16450:8;:27;16500:17;;16488:9;:29;16540:17;;16528:9;:29;16580:17;;16568:9;:29;16406:199;19437:15;17154:2306;17085:2375;;;:::o;1573:190::-;1659:7;1695:12;1687:6;;;;1679:29;;;;-1:-1:-1;;;1679:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1719:9:0;1731:5;1735:1;1731;:5;:::i;:::-;1719:17;1573:190;-1:-1:-1;;;;;1573:190:0:o;2025:132::-;2083:7;2110:39;2114:1;2117;2110:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2103:46;2025:132;-1:-1:-1;;;2025:132:0:o;19691:404::-;13558:8;:15;;-1:-1:-1;;;;13558:15:0;-1:-1:-1;;;13558:15:0;;;19790:16:::1;::::0;;19804:1:::1;19790:16:::0;;;;;::::1;::::0;;-1:-1:-1;;19790:16:0;;19804:1;;19790:16;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;19790:16:0::1;19766:40;;19835:4;19817;19822:1;19817:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19817:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;19861:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;19861:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;19817:7;;19861:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19851:4;19856:1;19851:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19851:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;19926:15:::1;::::0;19894:62:::1;::::0;19911:4:::1;::::0;19926:15:::1;19944:11:::0;19894:8:::1;:62::i;:::-;19967:15;::::0;:120:::1;::::0;-1:-1:-1;;;19967:120:0;;-1:-1:-1;;;;;19967:15:0;;::::1;::::0;:66:::1;::::0;:120:::1;::::0;20034:11;;19967:15:::1;::::0;20050:4;;20064::::1;::::0;20071:15:::1;::::0;19967:120:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;13596:8:0;:16;;-1:-1:-1;;;;13596:16:0;;;-1:-1:-1;;;;19691:404:0:o;5917:191::-;5991:16;6010:6;;-1:-1:-1;;;;;6027:17:0;;;-1:-1:-1;;;;;;6027:17:0;;;;;;6060:40;;6010:6;;;;;;;6060:40;;5991:16;6060:40;5980:128;5917:191;:::o;21649:96::-;21706:14;;:31;;-1:-1:-1;;;;;21706:14:0;;;;:31;;;;;21730:6;;21706:14;:31;:14;:31;21730:6;21706:14;:31;;;;;;;;;;;;;;;;;;;;;21649:96;:::o;1242:179::-;1300:7;;1332:5;1336:1;1332;:5;:::i;:::-;1320:17;;1361:1;1356;:6;;1348:46;;;;-1:-1:-1;;;1348:46:0;;10088:2:1;1348:46:0;;;10070:21:1;10127:2;10107:18;;;10100:30;10166:29;10146:18;;;10139:57;10213:18;;1348:46:0;9886:351:1;21090:551:0;13558:8;:15;;-1:-1:-1;;;;13558:15:0;-1:-1:-1;;;13558:15:0;;;21278:8:::1;::::0;21263:9:::1;::::0;21248::::1;::::0;21234::::1;::::0;13558:15;;21195:93:::1;::::0;21234:53:::1;::::0;21278:8;;21234:39:::1;::::0;;;:9;:13:::1;:24::i;:53::-;21195:8;::::0;:34:::1;::::0;21208:20;21195:12:::1;:34::i;:::-;:38:::0;::::1;:93::i;:::-;21172:116:::0;-1:-1:-1;21299:12:0::1;21315:19;21172:116:::0;21332:1:::1;21315:16;:19::i;:::-;21299:35:::0;-1:-1:-1;21345:17:0::1;21365:30;:20:::0;21299:35;21365:24:::1;:30::i;:::-;21345:50:::0;-1:-1:-1;21431:21:0::1;21463:27;21345:50:::0;21463:16:::1;:27::i;:::-;21501:18;21522:70;21582:9:::0;21523:53:::1;21571:4:::0;21524:41:::1;:21;21550:14:::0;21524:25:::1;:41::i;:::-;21523:47:::0;::::1;:53::i;21522:70::-;21501:91;;21603:30;21616:4;21622:10;21603:12;:30::i;24067:117::-:0;24120:10;;24116:61;;24144:24;24161:6;24144:16;:24::i;22261:1246::-;22374:7;22369:60;;22403:14;:12;:14::i;:::-;22449:24;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22449:24:0;22497:30;22523:3;22497:21;22508:9;;22497:6;:10;;:21;;;;:::i;:30::-;22484:10;;;:43;22561:8;;22550:29;;22575:3;;22550:20;;:6;;:10;:20::i;:29::-;22538:41;;22614:9;;22603:30;;22629:3;;22603:21;;:6;;:10;:21::i;:30::-;22590:10;;;:43;22668:9;;22657:30;;22683:3;;22657:21;;:6;;:10;:21::i;:30::-;22644:10;;;:43;;;22782:9;;22766:10;;;;22734;;;;22723:69;;:54;;22766:10;22723:54;;22644:43;22723:54;;:6;;:10;:22::i;:::-;:26;;:38::i;:69::-;22708:12;;;:84;22840:10;;;;22805:21;;22829:22;;:6;;:10;:22::i;:::-;22805:46;;22862:27;22870:6;22878:4;:10;;;22862:7;:27::i;:::-;-1:-1:-1;;;;;22922:17:0;;;;;;:9;:17;;;;;;:36;;22944:13;22922:21;:36::i;:::-;-1:-1:-1;;;;;22902:17:0;;;;;;;:9;:17;;;;;;:56;;;;23017:12;;;;22992:20;;;;;;;;;;:38;;:24;:38::i;:::-;-1:-1:-1;;;;;22969:20:0;;;;;;:9;:20;;;;;;;;:61;;;;23144:9;;23129:10;;;;23068:87;;23129:25;;:10;:14;:25::i;:::-;23113:10;;;;23097;;;;;23086:4;23068:24;;;;:9;:24;;;;;;;:56;;23113:10;23068:56;;:24;:28;:40::i;:87::-;23059:4;23041:24;;;;:9;:24;;;;;;;;:114;;;;23179:8;-1:-1:-1;;;23179:8:0;;;;:35;;;;-1:-1:-1;23201:13:0;;-1:-1:-1;;;;;23191:23:0;;;23201:13;;23191:23;;23179:35;:62;;;;-1:-1:-1;;;;;;23218:23:0;;23236:4;23218:23;;23179:62;:100;;;;-1:-1:-1;23263:15:0;;-1:-1:-1;;;;;23245:34:0;;;23263:15;;23245:34;;23179:100;:173;;;;-1:-1:-1;23305:15:0;;-1:-1:-1;;;;;23284:37:0;;;23305:15;;23284:37;;:67;;-1:-1:-1;23338:13:0;;-1:-1:-1;;;;;23325:26:0;;;23338:13;;23325:26;23284:67;23176:239;;;23377:13;;;23392:10;;;;23369:34;;-1:-1:-1;;;;;23377:13:0;;23369:7;:34::i;:::-;23449:9;-1:-1:-1;;;;;23432:41:0;23441:6;-1:-1:-1;;;;;23432:41:0;;23460:4;:12;;;23432:41;;;;1361:25:1;;1349:2;1334:18;;1215:177;23432:41:0;;;;;;;;23484:15;16461:16;;16450:8;:27;16500:17;;16488:9;:29;16540:17;;16528:9;:29;16580:17;;16568:9;:29;16406:199;23484:15;22358:1149;;22261:1246;;;;:::o;2165:189::-;2251:7;2286:12;2279:5;2271:28;;;;-1:-1:-1;;;2271:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2310:9:0;2322:5;2326:1;2322;:5;:::i;1771:246::-;1829:7;1853:1;1858;1853:6;1849:47;;-1:-1:-1;1883:1:0;1876:8;;1849:47;1906:9;1918:5;1922:1;1918;:5;:::i;:::-;1906:17;-1:-1:-1;1951:1:0;1942:5;1946:1;1906:17;1942:5;:::i;:::-;:10;1934:56;;;;-1:-1:-1;;;1934:56:0;;10839:2:1;1934:56:0;;;10821:21:1;10878:2;10858:18;;;10851:30;10917:34;10897:18;;;10890:62;-1:-1:-1;;;10968:18:1;;;10961:31;11009:19;;1934:56:0;10637:397:1;1429:136:0;1487:7;1514:43;1518:1;1521;1514:43;;;;;;;;;;;;;;;;;:3;:43::i;20625:455::-;20738:15;;20706:62;;20723:4;;-1:-1:-1;;;;;20738:15:0;20756:11;20706:8;:62::i;:::-;20811:15;;21015:14;;20811:261;;-1:-1:-1;;;20811:261:0;;20883:4;20811:261;;;11388:34:1;11438:18;;;11431:34;;;20811:15:0;11481:18:1;;;11474:34;;;11524:18;;;11517:34;-1:-1:-1;;;;;21015:14:0;;;11567:19:1;;;11560:44;21044:15:0;11620:19:1;;;11613:35;20811:15:0;;;:31;;20850:9;;11322:19:1;;20811:261:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;20625:455;;:::o;20103:514::-;20248:16;;;20262:1;20248:16;;;;;;;;20224:21;;20248:16;;;;;;;;-1:-1:-1;;20285:15:0;;:22;;;-1:-1:-1;;;20285:22:0;;;;20224:40;;-1:-1:-1;;;;;;20285:15:0;;;;:20;;-1:-1:-1;20285:22:0;;;;;;;;;;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20275:4;20280:1;20275:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20275:32:0;;;:7;;;;;;;;;:32;20336:4;;20318:7;;20336:4;;;20318;;20336;;20318:7;;;;;;:::i;:::-;-1:-1:-1;;;;;20318:23:0;;;:7;;;;;;;;;:23;20378:15;;20540:4;;20378:223;;-1:-1:-1;;;20378:223:0;;:15;;;;:66;;20452:6;;20378:223;;:15;;20521:4;;20540;;;;20575:15;;20378:223;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20153:464;20103:514;:::o;16009:385::-;16056:9;;:14;:31;;;;-1:-1:-1;16074:8:0;;:13;16056:31;:49;;;;-1:-1:-1;16091:9:0;;:14;16056:49;:67;;;;-1:-1:-1;16109:9:0;;:14;16056:67;16052:80;;;16009:385::o;16052:80::-;16162:9;;;16142:17;:29;16201:8;;;16182:16;:27;16240:9;;;16220:17;:29;16280:9;;;16260:17;:29;-1:-1:-1;16302:13:0;;;;16326:12;;;;16349:13;;;16373;16009:385::o;15671:330::-;-1:-1:-1;;;;;14713:18:0;;14686:7;14713:18;;;:9;:18;;;;;;15750:7;:30;;15741:40;;;;;;-1:-1:-1;;;;;15814:19:0;;;;;;:9;:19;;;;;;:32;;15838:7;15814:23;:32::i;:::-;-1:-1:-1;;;;;15792:19:0;;;;;;:9;:19;;;;;:54;15867:7;;:20;;15879:7;15867:11;:20::i;:::-;15857:7;:30;15913:12;;:25;;15930:7;15913:16;:25::i;:::-;15898:12;:40;15954:39;;1361:25:1;;;15981:1:0;;-1:-1:-1;;;;;15954:39:0;;;;;1349:2:1;1334:18;15954:39:0;;;;;;;15671:330;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1631:456::-;1708:6;1716;1724;1777:2;1765:9;1756:7;1752:23;1748:32;1745:52;;;1793:1;1790;1783:12;1745:52;1832:9;1819:23;1851:31;1876:5;1851:31;:::i;:::-;1901:5;-1:-1:-1;1958:2:1;1943:18;;1930:32;1971:33;1930:32;1971:33;:::i;:::-;1631:456;;2023:7;;-1:-1:-1;;;2077:2:1;2062:18;;;;2049:32;;1631:456::o;2092:180::-;2151:6;2204:2;2192:9;2183:7;2179:23;2175:32;2172:52;;;2220:1;2217;2210:12;2172:52;-1:-1:-1;2243:23:1;;2092:180;-1:-1:-1;2092:180:1:o;2898:247::-;2957:6;3010:2;2998:9;2989:7;2985:23;2981:32;2978:52;;;3026:1;3023;3016:12;2978:52;3065:9;3052:23;3084:31;3109:5;3084:31;:::i;3150:388::-;3218:6;3226;3279:2;3267:9;3258:7;3254:23;3250:32;3247:52;;;3295:1;3292;3285:12;3247:52;3334:9;3321:23;3353:31;3378:5;3353:31;:::i;:::-;3403:5;-1:-1:-1;3460:2:1;3445:18;;3432:32;3473:33;3432:32;3473:33;:::i;:::-;3525:7;3515:17;;;3150:388;;;;;:::o;3954:356::-;4156:2;4138:21;;;4175:18;;;4168:30;4234:34;4229:2;4214:18;;4207:62;4301:2;4286:18;;3954:356::o;7918:127::-;7979:10;7974:3;7970:20;7967:1;7960:31;8010:4;8007:1;8000:15;8034:4;8031:1;8024:15;8050:128;8117:9;;;8138:11;;;8135:37;;;8152:18;;:::i;8315:127::-;8376:10;8371:3;8367:20;8364:1;8357:31;8407:4;8404:1;8397:15;8431:4;8428:1;8421:15;8447:251;8517:6;8570:2;8558:9;8549:7;8545:23;8541:32;8538:52;;;8586:1;8583;8576:12;8538:52;8618:9;8612:16;8637:31;8662:5;8637:31;:::i;8703:461::-;8756:3;8794:5;8788:12;8821:6;8816:3;8809:19;8847:4;8876:2;8871:3;8867:12;8860:19;;8913:2;8906:5;8902:14;8934:1;8944:195;8958:6;8955:1;8952:13;8944:195;;;9023:13;;-1:-1:-1;;;;;9019:39:1;9007:52;;9079:12;;;;9114:15;;;;9055:1;8973:9;8944:195;;;-1:-1:-1;9155:3:1;;8703:461;-1:-1:-1;;;;;8703:461:1:o;9169:582::-;9468:6;9457:9;9450:25;9511:6;9506:2;9495:9;9491:18;9484:34;9554:3;9549:2;9538:9;9534:18;9527:31;9431:4;9575:57;9627:3;9616:9;9612:19;9604:6;9575:57;:::i;:::-;-1:-1:-1;;;;;9668:32:1;;;;9663:2;9648:18;;9641:60;-1:-1:-1;9732:3:1;9717:19;9710:35;9567:65;9169:582;-1:-1:-1;;;9169:582:1:o;9756:125::-;9821:9;;;9842:10;;;9839:36;;;9855:18;;:::i;10242:217::-;10282:1;10308;10298:132;;10352:10;10347:3;10343:20;10340:1;10333:31;10387:4;10384:1;10377:15;10415:4;10412:1;10405:15;10298:132;-1:-1:-1;10444:9:1;;10242:217::o;10464:168::-;10537:9;;;10568;;10585:15;;;10579:22;;10565:37;10555:71;;10606:18;;:::i;11659:306::-;11747:6;11755;11763;11816:2;11804:9;11795:7;11791:23;11787:32;11784:52;;;11832:1;11829;11822:12;11784:52;11861:9;11855:16;11845:26;;11911:2;11900:9;11896:18;11890:25;11880:35;;11955:2;11944:9;11940:18;11934:25;11924:35;;11659:306;;;;;:::o;11970:518::-;12249:6;12238:9;12231:25;12292:3;12287:2;12276:9;12272:18;12265:31;12212:4;12313:57;12365:3;12354:9;12350:19;12342:6;12313:57;:::i;:::-;-1:-1:-1;;;;;12406:32:1;;;;12401:2;12386:18;;12379:60;-1:-1:-1;12470:2:1;12455:18;12448:34;12305:65;11970:518;-1:-1:-1;;11970:518:1:o

Swarm Source

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