ETH Price: $3,092.74 (-6.10%)
Gas: 2.51 Gwei
 

Overview

Max Total Supply

1,000,000,000,000 AQUA

Holders

29

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
4,450,000,000 AQUA

Value
$0.00
0xaf78fc12335e4c91e3032c7cbc5a662196ba469a
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:
AQUA

Compiler Version
v0.8.12+commit.f00d7308

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-04-18
*/

// ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⠤⠤⢤⠤⢀⠀⢀⠀⣀⠔⠄⠀⠐⠀⠀
// ⠀⠀⠀⠀⠀⠀⠀⡀⠄⢀⣿⡟⡀⠀⠠⣭⠕⠀⠀⠀⠈⠱⣿⣶⣷⡅⠀⢁⠀⠁
// ⠀⠀⠀⡀⠀⠂⠁⣀⣀⣾⣿⣥⣤⡴⣿⡏⢠⢆⠀⠀⢀⠀⠙⠟⡻⠃⠀⢸⡡⠀
// ⠀⡀⠈⠀⠀⠀⣠⡶⠛⢻⠛⣿⢺⣁⢁⢇⢸⠀⠆⠄⠈⣄⢤⣷⠁⠄⠠⠾⢋⠂
// ⠀⠀⠀⠀⣠⣾⠏⠀⠀⡄⠀⢸⠡⠻⠂⠀⠂⢘⣾⡜⡄⢇⠠⢺⡄⠈⠂⠈⠀⠀
// ⠁⡀⠀⠈⠉⣱⢄⡀⠀⠃⠀⠈⠀⠈⠀⠀⠀⠠⠌⠁⡿⠪⢔⢿⣿⣄⠑⠓⠀⠀
// ⠀⠈⠢⡀⣼⠳⠟⡛⠂⠴⢀⢠⣄⠀⠀⠐⠀⠀⡈⠐⡅⠆⡈⠀⠙⠿⠡⠦⠔⠀
// ⠀⠀⠀⠀⠁⠀⠀⠀⠀⠀⢸⡆⡿⠷⣀⠐⠀⣸⠄⣰⠀⣼⠃⠀⠀⠀⠀⠀⠀⠀
// ⠀⠀⠀⠀⠀⠀⠐⠐⢄⢠⣾⣍⡄⠀⠉⠛⠋⠩⠞⠛⣃⣽⡀⠀⠀⠀⠀⠀⠀⠀
// ⠀⠀⠀⠀⠀⠀⠀⠀⢼⣮⣹⣿⣏⣷⠟⠿⣽⣯⣶⡟⠉⠈⡇⠀⠀⠀⠀⠀⠀⠀
// ⠀⠀⠀⠀⠀⠀⠀⣼⣿⣿⣬⣽⣿⢰⡶⣿⣿⢹⣾⠀⠀⠀⢷⠀⠀⠀⠀⠀⠀⠀
// ⠀⠀⠀⠀⠀⠀⢠⣿⣿⣿⣿⣉⠉⡛⠟⣮⣤⣿⣿⠀⠀⣬⠈⢂⠀⠀⠀⠀⠀⠀
// ⠀⠀⠀⠀⠀⢀⣾⢞⡿⠿⠿⠇⠀⢿⣼⣿⣿⣿⡿⠒⠖⡈⢆⠈⠄⠀⠀⠀⠀⠀
// ⠀⠀⠀⠀⠀⡼⠡⠀⢷⣶⣤⡄⠀⠀⠙⣻⣿⣟⢁⣠⡴⠔⠈⡆⠈⠄⠀⠀⠀⠀
// ⠀⠀⠀⠀⠀⠀⠃⠸⠴⠿⣿⣇⣰⣶⣤⣀⣁⡀⠙⠯⠪⠦⠀⠒⠒⠀⠀⠀⠀⠀
//
// 
// Telegram: https://t.me/aquafinanceportal
// Website: https://aquafinance.io
// 


// SPDX-License-Identifier: Unlicensed                                                            


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

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");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
    
}

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

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 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
        );
}

contract AQUA is Context, IERC20, Ownable {
    
    using SafeMath for uint256;

    string private constant _name = "Liquid Finance";
    string private constant _symbol = "AQUA";
    uint8 private constant _decimals = 9;

    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    mapping (address => uint256) private _buyMap;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1e12 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    mapping(address => bool) private _isSniper;
    uint256 public launchTime;

    uint256 private _redisFeeOnBuy = 0;
    uint256 private _taxFeeOnBuy = 11;
    
    uint256 private _redisFeeOnSell = 0;
    uint256 private _taxFeeOnSell = 15;
    
    uint256 private _redisFee = _redisFeeOnSell;
    uint256 private _taxFee = _taxFeeOnSell;
    uint256 private _burnFee = 0;
    
    uint256 private _previousredisFee = _redisFee;
    uint256 private _previoustaxFee = _taxFee;
    uint256 private _previousburnFee = _burnFee;
    
    address payable private _marketingAddress = payable(0xD9B638f1aaC77b13110Fce069D8a4BE9718Df6E7);
    address public constant deadAddress = 0x000000000000000000000000000000000000dEaD;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = true;
    
    uint256 public _maxTxAmount = 1e10 * 10**9; 
    uint256 public _maxWalletSize = 2e10 * 10**9;
    uint256 public _swapTokensAtAmount = 1000 * 10**9;

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

    constructor() {
        
        _rOwned[_msgSender()] = _rTotal;
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
        .createPair(address(this), _uniswapV2Router.WETH());
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_marketingAddress] = true;
        _isExcludedFromFee[deadAddress] = true;
        
        emit Transfer(address(0), _msgSender(), _tTotal);
    }



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

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

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

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

    function balanceOf(address account) public view override returns (uint256) {
        return tokenFromReflection(_rOwned[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 tokenFromReflection(uint256 rAmount)
        private
        view
        returns (uint256)
    {
        require(
            rAmount <= _rTotal,
            "Amount must be less than total reflections"
        );
        uint256 currentRate = _getRate();
        return rAmount.div(currentRate);
    }

    function removeAllFee() private {
        if (_redisFee == 0 && _taxFee == 0 && _burnFee == 0) return;
    
        _previousredisFee = _redisFee;
        _previoustaxFee = _taxFee;
        _previousburnFee = _burnFee;
        
        _redisFee = 0;
        _taxFee = 0;
        _burnFee = 0;
    }

    function restoreAllFee() private {
        _redisFee = _previousredisFee;
        _taxFee = _previoustaxFee;
        _burnFee = _previousburnFee;
    }

    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(!_isSniper[to], 'Stop sniping!');
        require(!_isSniper[from], 'Stop sniping!');
        require(!_isSniper[_msgSender()], 'Stop sniping!');

        if (from != owner() && to != owner()) {
            
            if (!tradingOpen) {
                revert("Trading not yet enabled!");
            }
            
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                if (to != address(this) && from != address(this) && to != _marketingAddress && from != _marketingAddress) {
                    require(amount <= _maxTxAmount);
                }
            }

            if (to != uniswapV2Pair && to != _marketingAddress && to != address(this) && to != deadAddress) {
                require(amount <= _maxTxAmount, "TOKEN: Max Transaction Limit");
                require(balanceOf(to) + amount < _maxWalletSize, "TOKEN: Balance exceeds wallet size!");
                
            }
            
            uint256 contractTokenBalance = balanceOf(address(this));
            bool canSwap = contractTokenBalance > _swapTokensAtAmount;
            
            if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
                uint256 burntAmount = 0;
                if (_burnFee > 0) {
                    burntAmount = contractTokenBalance.mul(_burnFee).div(10**2);
                    burnTokens(burntAmount);
                }
                swapTokensForEth(contractTokenBalance - burntAmount);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
        
        bool takeFee = true;

        if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) {
            takeFee = false;
        } else {
            if(from == uniswapV2Pair && to != address(uniswapV2Router)) {
                    _buyMap[to] = block.timestamp;
                    _redisFee = _redisFeeOnBuy;
                    _taxFee = _taxFeeOnBuy;
                    if (block.timestamp == launchTime) {
                        _isSniper[to] = true;
                    }
            }
    
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                
                    _redisFee = _redisFeeOnSell;
                    _taxFee = _taxFeeOnSell;
            }
        }

        _tokenTransfer(from, to, amount, takeFee);
    }

    function burnTokens(uint256 burntAmount) private {
        _transfer(address(this), deadAddress, burntAmount);
    }

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

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

    function setTrading() public onlyOwner {
        require(!tradingOpen);
        tradingOpen = true;
        launchTime = block.timestamp;
    }


    function setMarketingWallet(address marketingAddress) external {
        require(_msgSender() == _marketingAddress);
        _marketingAddress = payable(marketingAddress);
        _isExcludedFromFee[_marketingAddress] = true;
    }

    
    function manualswap(uint256 amount) external {
        require(_msgSender() == _marketingAddress);
        require(amount <= balanceOf(address(this)) && amount > 0, "Wrong amount");
        swapTokensForEth(amount);
    }

    function addSniper(address[] memory snipers) external onlyOwner {
        for(uint256 i= 0; i< snipers.length; i++){
            _isSniper[snipers[i]] = true;
            
        }
    }

    function removeSniper(address sniper) external onlyOwner {
        if (_isSniper[sniper]) {
            _isSniper[sniper] = false;
        }
    }

    function isSniper(address sniper) external view returns (bool){
        return _isSniper[sniper];
    }

    function manualsend() external {
        require(_msgSender() == _marketingAddress);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }

    function _tokenTransfer(
        address sender,
        address recipient,
        uint256 amount,
        bool takeFee
    ) private {
        if (!takeFee) removeAllFee();
        _transferStandard(sender, recipient, amount);
        if (!takeFee) restoreAllFee();
    }

    function _transferStandard(
        address sender,
        address recipient,
        uint256 tAmount
    ) private {
        (
            uint256 rAmount,
            uint256 rTransferAmount,
            uint256 rFee,
            uint256 tTransferAmount,
            uint256 tFee,
            uint256 tTeam
        ) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        _takeTeam(tTeam);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _takeTeam(uint256 tTeam) private {
        uint256 currentRate = _getRate();
        uint256 rTeam = tTeam.mul(currentRate);
        _rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
    }

    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }

    receive() external payable {}

    function _getValues(uint256 tAmount)
        private
        view
        returns (
            uint256,
            uint256,
            uint256,
            uint256,
            uint256,
            uint256
        )
    {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) =
            _getTValues(tAmount, _redisFee, _taxFee);
        uint256 currentRate = _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) =
            _getRValues(tAmount, tFee, tTeam, currentRate);
        
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
    }

    function _getTValues(
        uint256 tAmount,
        uint256 redisFee,
        uint256 taxFee
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 tFee = tAmount.mul(redisFee).div(100);
        uint256 tTeam = tAmount.mul(taxFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);

        return (tTransferAmount, tFee, tTeam);
    }

    function _getRValues(
        uint256 tAmount,
        uint256 tFee,
        uint256 tTeam,
        uint256 currentRate
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);

        return (rAmount, rTransferAmount, rFee);
    }

    function _getRate() private view returns (uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();

        return rSupply.div(tSupply);
    }

    function _getCurrentSupply() private view returns (uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
    
        return (rSupply, tSupply);
    }

    function toggleSwap(bool _swapEnabled) public onlyOwner {
        swapEnabled = _swapEnabled;
    }
    
    function setMaxTxnAmount(uint256 maxTxAmount) external onlyOwner {
        require(maxTxAmount >= _maxTxAmount);
        _maxTxAmount = maxTxAmount;
    }
    
    function setMaxWalletSize(uint256 maxWalletSize) external onlyOwner {
        require(maxWalletSize >= _maxWalletSize);
        _maxWalletSize = maxWalletSize;
    }

    function setTaxFee(uint256 amountBuy, uint256 amountSell) external onlyOwner {
        require(amountBuy >= 0 && amountBuy <= 13);
        require(amountSell >= 0 && amountSell <= 13);
        _taxFeeOnBuy = amountBuy;
        _taxFeeOnSell = amountSell;
    }

    function setRefFee(uint256 amountRefBuy, uint256 amountRefSell) external onlyOwner {
        require(amountRefBuy >= 0 && amountRefBuy <= 1);
        require(amountRefSell >= 0 && amountRefSell <= 1);
        _redisFeeOnBuy = amountRefBuy;
        _redisFeeOnSell = amountRefSell;
    }

    function setBurnFee(uint256 amount) external onlyOwner {
        _burnFee = amount;
    }


}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"snipers","type":"address[]"}],"name":"addSniper","outputs":[],"stateMutability":"nonpayable","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":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"sniper","type":"address"}],"name":"isSniper","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"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":[{"internalType":"address","name":"sniper","type":"address"}],"name":"removeSniper","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setBurnFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"marketingAddress","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"setMaxTxnAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletSize","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountRefBuy","type":"uint256"},{"internalType":"uint256","name":"amountRefSell","type":"uint256"}],"name":"setRefFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountBuy","type":"uint256"},{"internalType":"uint256","name":"amountSell","type":"uint256"}],"name":"setTaxFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"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"}]

60806040526200001b683635c9adc5dea0000060001962000361565b620000299060001962000384565b6007556000600b818155600c55600d819055600f600e819055818155601081905560118290556012829055601355601455601580546001600160a01b03191673d9b638f1aac77b13110fce069d8a4be9718df6e71790556017805461ffff60a81b1916600160b01b179055678ac7230489e800006018556801158e460913d0000060195564e8d4a51000601a55348015620000c357600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506007543360009081526002602090815260409182902092909255601680546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155815163c45a015560e01b815291519092839263c45a015592600480830193928290030181865afa15801562000181573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001a79190620003aa565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021b9190620003aa565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000269573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028f9190620003aa565b601780546001600160a01b0319166001600160a01b039283161790556000805482168152600660209081526040808320805460ff19908116600190811790925530855282852080548216831790556015549095168452818420805486168217905561dead84527f1aecba4ebe7a4e0673e4891b2b092b2228e4322380b579fb494fad3da8586e228054909516179093559151683635c9adc5dea00000815233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350620003dc565b6000826200037f57634e487b7160e01b600052601260045260246000fd5b500690565b600082821015620003a557634e487b7160e01b600052601160045260246000fd5b500390565b600060208284031215620003bd57600080fd5b81516001600160a01b0381168114620003d557600080fd5b9392505050565b611f9880620003ec6000396000f3fe6080604052600436106101e75760003560e01c80636fc3eaec116101025780638da5cb5b11610095578063c552849011610064578063c552849014610599578063dd62ed3e146105b9578063ea1644d5146105ff578063f2fde38b1461061f57600080fd5b80638da5cb5b146105185780638f9a55c01461053657806395d89b411461054c578063a9059cbb1461057957600080fd5b8063790ca413116100d1578063790ca413146104b75780637c519ffb146104cd5780637d1db4a5146104e2578063881dce60146104f857600080fd5b80636fc3eaec1461044d57806370a0823114610462578063715018a61461048257806374010ece1461049757600080fd5b80632fd689e31161017a57806349bd5a5e1161014957806349bd5a5e146103cd5780634bf2c7c9146103ed5780635d098b381461040d5780636d8aa8f81461042d57600080fd5b80632fd689e31461035b578063313ce5671461037157806333251a0b1461038d57806338eea22d146103ad57600080fd5b806318160ddd116101b657806318160ddd146102dd57806323b872dd1461030357806327c8f8351461032357806328bb665a1461033957600080fd5b806306fdde03146101f3578063095ea7b31461023c5780630f3a325f1461026c5780631694505e146102a557600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b5060408051808201909152600e81526d4c69717569642046696e616e636560901b60208201525b6040516102339190611b24565b60405180910390f35b34801561024857600080fd5b5061025c610257366004611b9e565b61063f565b6040519015158152602001610233565b34801561027857600080fd5b5061025c610287366004611bca565b6001600160a01b031660009081526009602052604090205460ff1690565b3480156102b157600080fd5b506016546102c5906001600160a01b031681565b6040516001600160a01b039091168152602001610233565b3480156102e957600080fd5b50683635c9adc5dea000005b604051908152602001610233565b34801561030f57600080fd5b5061025c61031e366004611be7565b610656565b34801561032f57600080fd5b506102c561dead81565b34801561034557600080fd5b50610359610354366004611c3e565b6106bf565b005b34801561036757600080fd5b506102f5601a5481565b34801561037d57600080fd5b5060405160098152602001610233565b34801561039957600080fd5b506103596103a8366004611bca565b61075e565b3480156103b957600080fd5b506103596103c8366004611d03565b6107cd565b3480156103d957600080fd5b506017546102c5906001600160a01b031681565b3480156103f957600080fd5b50610359610408366004611d25565b61081e565b34801561041957600080fd5b50610359610428366004611bca565b61084d565b34801561043957600080fd5b50610359610448366004611d3e565b6108a7565b34801561045957600080fd5b506103596108ef565b34801561046e57600080fd5b506102f561047d366004611bca565b610919565b34801561048e57600080fd5b5061035961093b565b3480156104a357600080fd5b506103596104b2366004611d25565b6109af565b3480156104c357600080fd5b506102f5600a5481565b3480156104d957600080fd5b506103596109ed565b3480156104ee57600080fd5b506102f560185481565b34801561050457600080fd5b50610359610513366004611d25565b610a47565b34801561052457600080fd5b506000546001600160a01b03166102c5565b34801561054257600080fd5b506102f560195481565b34801561055857600080fd5b506040805180820190915260048152634151554160e01b6020820152610226565b34801561058557600080fd5b5061025c610594366004611b9e565b610ac3565b3480156105a557600080fd5b506103596105b4366004611d03565b610ad0565b3480156105c557600080fd5b506102f56105d4366004611d60565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561060b57600080fd5b5061035961061a366004611d25565b610b21565b34801561062b57600080fd5b5061035961063a366004611bca565b610b5f565b600061064c338484610c49565b5060015b92915050565b6000610663848484610d6d565b6106b584336106b085604051806060016040528060288152602001611f3b602891396001600160a01b038a16600090815260056020908152604080832033845290915290205491906113d6565b610c49565b5060019392505050565b6000546001600160a01b031633146106f25760405162461bcd60e51b81526004016106e990611d99565b60405180910390fd5b60005b815181101561075a5760016009600084848151811061071657610716611dce565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061075281611dfa565b9150506106f5565b5050565b6000546001600160a01b031633146107885760405162461bcd60e51b81526004016106e990611d99565b6001600160a01b03811660009081526009602052604090205460ff16156107ca576001600160a01b0381166000908152600960205260409020805460ff191690555b50565b6000546001600160a01b031633146107f75760405162461bcd60e51b81526004016106e990611d99565b600182111561080557600080fd5b600181111561081357600080fd5b600b91909155600d55565b6000546001600160a01b031633146108485760405162461bcd60e51b81526004016106e990611d99565b601155565b6015546001600160a01b0316336001600160a01b03161461086d57600080fd5b601580546001600160a01b039092166001600160a01b0319909216821790556000908152600660205260409020805460ff19166001179055565b6000546001600160a01b031633146108d15760405162461bcd60e51b81526004016106e990611d99565b60178054911515600160b01b0260ff60b01b19909216919091179055565b6015546001600160a01b0316336001600160a01b03161461090f57600080fd5b476107ca81611410565b6001600160a01b0381166000908152600260205260408120546106509061144a565b6000546001600160a01b031633146109655760405162461bcd60e51b81526004016106e990611d99565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146109d95760405162461bcd60e51b81526004016106e990611d99565b6018548110156109e857600080fd5b601855565b6000546001600160a01b03163314610a175760405162461bcd60e51b81526004016106e990611d99565b601754600160a01b900460ff1615610a2e57600080fd5b6017805460ff60a01b1916600160a01b17905542600a55565b6015546001600160a01b0316336001600160a01b031614610a6757600080fd5b610a7030610919565b8111158015610a7f5750600081115b610aba5760405162461bcd60e51b815260206004820152600c60248201526b15dc9bdb99c8185b5bdd5b9d60a21b60448201526064016106e9565b6107ca816114ce565b600061064c338484610d6d565b6000546001600160a01b03163314610afa5760405162461bcd60e51b81526004016106e990611d99565b600d821115610b0857600080fd5b600d811115610b1657600080fd5b600c91909155600e55565b6000546001600160a01b03163314610b4b5760405162461bcd60e51b81526004016106e990611d99565b601954811015610b5a57600080fd5b601955565b6000546001600160a01b03163314610b895760405162461bcd60e51b81526004016106e990611d99565b6001600160a01b038116610bee5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106e9565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610cab5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106e9565b6001600160a01b038216610d0c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106e9565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610dd15760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106e9565b6001600160a01b038216610e335760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106e9565b60008111610e955760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016106e9565b6001600160a01b03821660009081526009602052604090205460ff1615610ece5760405162461bcd60e51b81526004016106e990611e15565b6001600160a01b03831660009081526009602052604090205460ff1615610f075760405162461bcd60e51b81526004016106e990611e15565b3360009081526009602052604090205460ff1615610f375760405162461bcd60e51b81526004016106e990611e15565b6000546001600160a01b03848116911614801590610f6357506000546001600160a01b03838116911614155b1561128057601754600160a01b900460ff16610fc15760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c656421000000000000000060448201526064016106e9565b6017546001600160a01b038381169116148015610fec57506016546001600160a01b03848116911614155b1561105b576001600160a01b038216301480159061101357506001600160a01b0383163014155b801561102d57506015546001600160a01b03838116911614155b801561104757506015546001600160a01b03848116911614155b1561105b5760185481111561105b57600080fd5b6017546001600160a01b0383811691161480159061108757506015546001600160a01b03838116911614155b801561109c57506001600160a01b0382163014155b80156110b357506001600160a01b03821661dead14155b1561117a5760185481111561110a5760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016106e9565b6019548161111784610919565b6111219190611e3c565b1061117a5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016106e9565b600061118530610919565b601a5490915081118080156111a45750601754600160a81b900460ff16155b80156111be57506017546001600160a01b03868116911614155b80156111d35750601754600160b01b900460ff165b80156111f857506001600160a01b03851660009081526006602052604090205460ff16155b801561121d57506001600160a01b03841660009081526006602052604090205460ff16155b1561127d57601154600090156112585761124d60646112476011548661164890919063ffffffff16565b906116c7565b905061125881611709565b61126a6112658285611e54565b6114ce565b47801561127a5761127a47611410565b50505b50505b6001600160a01b03831660009081526006602052604090205460019060ff16806112c257506001600160a01b03831660009081526006602052604090205460ff165b806112f457506017546001600160a01b038581169116148015906112f457506017546001600160a01b03848116911614155b15611301575060006113c4565b6017546001600160a01b03858116911614801561132c57506016546001600160a01b03848116911614155b15611387576001600160a01b03831660009081526004602052604090204290819055600b54600f55600c54601055600a541415611387576001600160a01b0383166000908152600960205260409020805460ff191660011790555b6017546001600160a01b0384811691161480156113b257506016546001600160a01b03858116911614155b156113c457600d54600f55600e546010555b6113d084848484611716565b50505050565b600081848411156113fa5760405162461bcd60e51b81526004016106e99190611b24565b5060006114078486611e54565b95945050505050565b6015546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561075a573d6000803e3d6000fd5b60006007548211156114b15760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016106e9565b60006114bb61174a565b90506114c783826116c7565b9392505050565b6017805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061151657611516611dce565b6001600160a01b03928316602091820292909201810191909152601654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561156f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115939190611e6b565b816001815181106115a6576115a6611dce565b6001600160a01b0392831660209182029290920101526016546115cc9130911684610c49565b60165460405163791ac94760e01b81526001600160a01b039091169063791ac94790611605908590600090869030904290600401611e88565b600060405180830381600087803b15801561161f57600080fd5b505af1158015611633573d6000803e3d6000fd5b50506017805460ff60a81b1916905550505050565b60008261165757506000610650565b60006116638385611ef9565b9050826116708583611f18565b146114c75760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016106e9565b60006114c783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061176d565b6107ca3061dead83610d6d565b806117235761172361179b565b61172e8484846117e0565b806113d0576113d0601254600f55601354601055601454601155565b60008060006117576118d7565b909250905061176682826116c7565b9250505090565b6000818361178e5760405162461bcd60e51b81526004016106e99190611b24565b5060006114078486611f18565b600f541580156117ab5750601054155b80156117b75750601154155b156117be57565b600f805460125560108054601355601180546014556000928390559082905555565b6000806000806000806117f287611919565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506118249087611976565b6001600160a01b03808b1660009081526002602052604080822093909355908a168152205461185390866119b8565b6001600160a01b03891660009081526002602052604090205561187581611a17565b61187f8483611a61565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516118c491815260200190565b60405180910390a3505050505050505050565b6007546000908190683635c9adc5dea000006118f382826116c7565b82101561191057505060075492683635c9adc5dea0000092509050565b90939092509050565b60008060008060008060008060006119368a600f54601054611a85565b925092509250600061194661174a565b905060008060006119598e878787611ad4565b919e509c509a509598509396509194505050505091939550919395565b60006114c783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506113d6565b6000806119c58385611e3c565b9050838110156114c75760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016106e9565b6000611a2161174a565b90506000611a2f8383611648565b30600090815260026020526040902054909150611a4c90826119b8565b30600090815260026020526040902055505050565b600754611a6e9083611976565b600755600854611a7e90826119b8565b6008555050565b6000808080611a9960646112478989611648565b90506000611aac60646112478a89611648565b90506000611ac482611abe8b86611976565b90611976565b9992985090965090945050505050565b6000808080611ae38886611648565b90506000611af18887611648565b90506000611aff8888611648565b90506000611b1182611abe8686611976565b939b939a50919850919650505050505050565b600060208083528351808285015260005b81811015611b5157858101830151858201604001528201611b35565b81811115611b63576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146107ca57600080fd5b8035611b9981611b79565b919050565b60008060408385031215611bb157600080fd5b8235611bbc81611b79565b946020939093013593505050565b600060208284031215611bdc57600080fd5b81356114c781611b79565b600080600060608486031215611bfc57600080fd5b8335611c0781611b79565b92506020840135611c1781611b79565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215611c5157600080fd5b823567ffffffffffffffff80821115611c6957600080fd5b818501915085601f830112611c7d57600080fd5b813581811115611c8f57611c8f611c28565b8060051b604051601f19603f83011681018181108582111715611cb457611cb4611c28565b604052918252848201925083810185019188831115611cd257600080fd5b938501935b82851015611cf757611ce885611b8e565b84529385019392850192611cd7565b98975050505050505050565b60008060408385031215611d1657600080fd5b50508035926020909101359150565b600060208284031215611d3757600080fd5b5035919050565b600060208284031215611d5057600080fd5b813580151581146114c757600080fd5b60008060408385031215611d7357600080fd5b8235611d7e81611b79565b91506020830135611d8e81611b79565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600019821415611e0e57611e0e611de4565b5060010190565b6020808252600d908201526c53746f7020736e6970696e672160981b604082015260600190565b60008219821115611e4f57611e4f611de4565b500190565b600082821015611e6657611e66611de4565b500390565b600060208284031215611e7d57600080fd5b81516114c781611b79565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611ed85784516001600160a01b031683529383019391830191600101611eb3565b50506001600160a01b03969096166060850152505050608001529392505050565b6000816000190483118215151615611f1357611f13611de4565b500290565b600082611f3557634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209032a383bcbd9ea8700d51f2311c4de0178c8272c09bebbf5e0f846ace6554cf64736f6c634300080c0033

Deployed Bytecode

0x6080604052600436106101e75760003560e01c80636fc3eaec116101025780638da5cb5b11610095578063c552849011610064578063c552849014610599578063dd62ed3e146105b9578063ea1644d5146105ff578063f2fde38b1461061f57600080fd5b80638da5cb5b146105185780638f9a55c01461053657806395d89b411461054c578063a9059cbb1461057957600080fd5b8063790ca413116100d1578063790ca413146104b75780637c519ffb146104cd5780637d1db4a5146104e2578063881dce60146104f857600080fd5b80636fc3eaec1461044d57806370a0823114610462578063715018a61461048257806374010ece1461049757600080fd5b80632fd689e31161017a57806349bd5a5e1161014957806349bd5a5e146103cd5780634bf2c7c9146103ed5780635d098b381461040d5780636d8aa8f81461042d57600080fd5b80632fd689e31461035b578063313ce5671461037157806333251a0b1461038d57806338eea22d146103ad57600080fd5b806318160ddd116101b657806318160ddd146102dd57806323b872dd1461030357806327c8f8351461032357806328bb665a1461033957600080fd5b806306fdde03146101f3578063095ea7b31461023c5780630f3a325f1461026c5780631694505e146102a557600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b5060408051808201909152600e81526d4c69717569642046696e616e636560901b60208201525b6040516102339190611b24565b60405180910390f35b34801561024857600080fd5b5061025c610257366004611b9e565b61063f565b6040519015158152602001610233565b34801561027857600080fd5b5061025c610287366004611bca565b6001600160a01b031660009081526009602052604090205460ff1690565b3480156102b157600080fd5b506016546102c5906001600160a01b031681565b6040516001600160a01b039091168152602001610233565b3480156102e957600080fd5b50683635c9adc5dea000005b604051908152602001610233565b34801561030f57600080fd5b5061025c61031e366004611be7565b610656565b34801561032f57600080fd5b506102c561dead81565b34801561034557600080fd5b50610359610354366004611c3e565b6106bf565b005b34801561036757600080fd5b506102f5601a5481565b34801561037d57600080fd5b5060405160098152602001610233565b34801561039957600080fd5b506103596103a8366004611bca565b61075e565b3480156103b957600080fd5b506103596103c8366004611d03565b6107cd565b3480156103d957600080fd5b506017546102c5906001600160a01b031681565b3480156103f957600080fd5b50610359610408366004611d25565b61081e565b34801561041957600080fd5b50610359610428366004611bca565b61084d565b34801561043957600080fd5b50610359610448366004611d3e565b6108a7565b34801561045957600080fd5b506103596108ef565b34801561046e57600080fd5b506102f561047d366004611bca565b610919565b34801561048e57600080fd5b5061035961093b565b3480156104a357600080fd5b506103596104b2366004611d25565b6109af565b3480156104c357600080fd5b506102f5600a5481565b3480156104d957600080fd5b506103596109ed565b3480156104ee57600080fd5b506102f560185481565b34801561050457600080fd5b50610359610513366004611d25565b610a47565b34801561052457600080fd5b506000546001600160a01b03166102c5565b34801561054257600080fd5b506102f560195481565b34801561055857600080fd5b506040805180820190915260048152634151554160e01b6020820152610226565b34801561058557600080fd5b5061025c610594366004611b9e565b610ac3565b3480156105a557600080fd5b506103596105b4366004611d03565b610ad0565b3480156105c557600080fd5b506102f56105d4366004611d60565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561060b57600080fd5b5061035961061a366004611d25565b610b21565b34801561062b57600080fd5b5061035961063a366004611bca565b610b5f565b600061064c338484610c49565b5060015b92915050565b6000610663848484610d6d565b6106b584336106b085604051806060016040528060288152602001611f3b602891396001600160a01b038a16600090815260056020908152604080832033845290915290205491906113d6565b610c49565b5060019392505050565b6000546001600160a01b031633146106f25760405162461bcd60e51b81526004016106e990611d99565b60405180910390fd5b60005b815181101561075a5760016009600084848151811061071657610716611dce565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061075281611dfa565b9150506106f5565b5050565b6000546001600160a01b031633146107885760405162461bcd60e51b81526004016106e990611d99565b6001600160a01b03811660009081526009602052604090205460ff16156107ca576001600160a01b0381166000908152600960205260409020805460ff191690555b50565b6000546001600160a01b031633146107f75760405162461bcd60e51b81526004016106e990611d99565b600182111561080557600080fd5b600181111561081357600080fd5b600b91909155600d55565b6000546001600160a01b031633146108485760405162461bcd60e51b81526004016106e990611d99565b601155565b6015546001600160a01b0316336001600160a01b03161461086d57600080fd5b601580546001600160a01b039092166001600160a01b0319909216821790556000908152600660205260409020805460ff19166001179055565b6000546001600160a01b031633146108d15760405162461bcd60e51b81526004016106e990611d99565b60178054911515600160b01b0260ff60b01b19909216919091179055565b6015546001600160a01b0316336001600160a01b03161461090f57600080fd5b476107ca81611410565b6001600160a01b0381166000908152600260205260408120546106509061144a565b6000546001600160a01b031633146109655760405162461bcd60e51b81526004016106e990611d99565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146109d95760405162461bcd60e51b81526004016106e990611d99565b6018548110156109e857600080fd5b601855565b6000546001600160a01b03163314610a175760405162461bcd60e51b81526004016106e990611d99565b601754600160a01b900460ff1615610a2e57600080fd5b6017805460ff60a01b1916600160a01b17905542600a55565b6015546001600160a01b0316336001600160a01b031614610a6757600080fd5b610a7030610919565b8111158015610a7f5750600081115b610aba5760405162461bcd60e51b815260206004820152600c60248201526b15dc9bdb99c8185b5bdd5b9d60a21b60448201526064016106e9565b6107ca816114ce565b600061064c338484610d6d565b6000546001600160a01b03163314610afa5760405162461bcd60e51b81526004016106e990611d99565b600d821115610b0857600080fd5b600d811115610b1657600080fd5b600c91909155600e55565b6000546001600160a01b03163314610b4b5760405162461bcd60e51b81526004016106e990611d99565b601954811015610b5a57600080fd5b601955565b6000546001600160a01b03163314610b895760405162461bcd60e51b81526004016106e990611d99565b6001600160a01b038116610bee5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106e9565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610cab5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106e9565b6001600160a01b038216610d0c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106e9565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610dd15760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106e9565b6001600160a01b038216610e335760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106e9565b60008111610e955760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016106e9565b6001600160a01b03821660009081526009602052604090205460ff1615610ece5760405162461bcd60e51b81526004016106e990611e15565b6001600160a01b03831660009081526009602052604090205460ff1615610f075760405162461bcd60e51b81526004016106e990611e15565b3360009081526009602052604090205460ff1615610f375760405162461bcd60e51b81526004016106e990611e15565b6000546001600160a01b03848116911614801590610f6357506000546001600160a01b03838116911614155b1561128057601754600160a01b900460ff16610fc15760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c656421000000000000000060448201526064016106e9565b6017546001600160a01b038381169116148015610fec57506016546001600160a01b03848116911614155b1561105b576001600160a01b038216301480159061101357506001600160a01b0383163014155b801561102d57506015546001600160a01b03838116911614155b801561104757506015546001600160a01b03848116911614155b1561105b5760185481111561105b57600080fd5b6017546001600160a01b0383811691161480159061108757506015546001600160a01b03838116911614155b801561109c57506001600160a01b0382163014155b80156110b357506001600160a01b03821661dead14155b1561117a5760185481111561110a5760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016106e9565b6019548161111784610919565b6111219190611e3c565b1061117a5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016106e9565b600061118530610919565b601a5490915081118080156111a45750601754600160a81b900460ff16155b80156111be57506017546001600160a01b03868116911614155b80156111d35750601754600160b01b900460ff165b80156111f857506001600160a01b03851660009081526006602052604090205460ff16155b801561121d57506001600160a01b03841660009081526006602052604090205460ff16155b1561127d57601154600090156112585761124d60646112476011548661164890919063ffffffff16565b906116c7565b905061125881611709565b61126a6112658285611e54565b6114ce565b47801561127a5761127a47611410565b50505b50505b6001600160a01b03831660009081526006602052604090205460019060ff16806112c257506001600160a01b03831660009081526006602052604090205460ff165b806112f457506017546001600160a01b038581169116148015906112f457506017546001600160a01b03848116911614155b15611301575060006113c4565b6017546001600160a01b03858116911614801561132c57506016546001600160a01b03848116911614155b15611387576001600160a01b03831660009081526004602052604090204290819055600b54600f55600c54601055600a541415611387576001600160a01b0383166000908152600960205260409020805460ff191660011790555b6017546001600160a01b0384811691161480156113b257506016546001600160a01b03858116911614155b156113c457600d54600f55600e546010555b6113d084848484611716565b50505050565b600081848411156113fa5760405162461bcd60e51b81526004016106e99190611b24565b5060006114078486611e54565b95945050505050565b6015546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561075a573d6000803e3d6000fd5b60006007548211156114b15760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016106e9565b60006114bb61174a565b90506114c783826116c7565b9392505050565b6017805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061151657611516611dce565b6001600160a01b03928316602091820292909201810191909152601654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561156f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115939190611e6b565b816001815181106115a6576115a6611dce565b6001600160a01b0392831660209182029290920101526016546115cc9130911684610c49565b60165460405163791ac94760e01b81526001600160a01b039091169063791ac94790611605908590600090869030904290600401611e88565b600060405180830381600087803b15801561161f57600080fd5b505af1158015611633573d6000803e3d6000fd5b50506017805460ff60a81b1916905550505050565b60008261165757506000610650565b60006116638385611ef9565b9050826116708583611f18565b146114c75760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016106e9565b60006114c783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061176d565b6107ca3061dead83610d6d565b806117235761172361179b565b61172e8484846117e0565b806113d0576113d0601254600f55601354601055601454601155565b60008060006117576118d7565b909250905061176682826116c7565b9250505090565b6000818361178e5760405162461bcd60e51b81526004016106e99190611b24565b5060006114078486611f18565b600f541580156117ab5750601054155b80156117b75750601154155b156117be57565b600f805460125560108054601355601180546014556000928390559082905555565b6000806000806000806117f287611919565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506118249087611976565b6001600160a01b03808b1660009081526002602052604080822093909355908a168152205461185390866119b8565b6001600160a01b03891660009081526002602052604090205561187581611a17565b61187f8483611a61565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516118c491815260200190565b60405180910390a3505050505050505050565b6007546000908190683635c9adc5dea000006118f382826116c7565b82101561191057505060075492683635c9adc5dea0000092509050565b90939092509050565b60008060008060008060008060006119368a600f54601054611a85565b925092509250600061194661174a565b905060008060006119598e878787611ad4565b919e509c509a509598509396509194505050505091939550919395565b60006114c783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506113d6565b6000806119c58385611e3c565b9050838110156114c75760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016106e9565b6000611a2161174a565b90506000611a2f8383611648565b30600090815260026020526040902054909150611a4c90826119b8565b30600090815260026020526040902055505050565b600754611a6e9083611976565b600755600854611a7e90826119b8565b6008555050565b6000808080611a9960646112478989611648565b90506000611aac60646112478a89611648565b90506000611ac482611abe8b86611976565b90611976565b9992985090965090945050505050565b6000808080611ae38886611648565b90506000611af18887611648565b90506000611aff8888611648565b90506000611b1182611abe8686611976565b939b939a50919850919650505050505050565b600060208083528351808285015260005b81811015611b5157858101830151858201604001528201611b35565b81811115611b63576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146107ca57600080fd5b8035611b9981611b79565b919050565b60008060408385031215611bb157600080fd5b8235611bbc81611b79565b946020939093013593505050565b600060208284031215611bdc57600080fd5b81356114c781611b79565b600080600060608486031215611bfc57600080fd5b8335611c0781611b79565b92506020840135611c1781611b79565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215611c5157600080fd5b823567ffffffffffffffff80821115611c6957600080fd5b818501915085601f830112611c7d57600080fd5b813581811115611c8f57611c8f611c28565b8060051b604051601f19603f83011681018181108582111715611cb457611cb4611c28565b604052918252848201925083810185019188831115611cd257600080fd5b938501935b82851015611cf757611ce885611b8e565b84529385019392850192611cd7565b98975050505050505050565b60008060408385031215611d1657600080fd5b50508035926020909101359150565b600060208284031215611d3757600080fd5b5035919050565b600060208284031215611d5057600080fd5b813580151581146114c757600080fd5b60008060408385031215611d7357600080fd5b8235611d7e81611b79565b91506020830135611d8e81611b79565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600019821415611e0e57611e0e611de4565b5060010190565b6020808252600d908201526c53746f7020736e6970696e672160981b604082015260600190565b60008219821115611e4f57611e4f611de4565b500190565b600082821015611e6657611e66611de4565b500390565b600060208284031215611e7d57600080fd5b81516114c781611b79565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611ed85784516001600160a01b031683529383019391830191600101611eb3565b50506001600160a01b03969096166060850152505050608001529392505050565b6000816000190483118215151615611f1357611f13611de4565b500290565b600082611f3557634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212209032a383bcbd9ea8700d51f2311c4de0178c8272c09bebbf5e0f846ace6554cf64736f6c634300080c0033

Deployed Bytecode Sourcemap

5664:14947:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8271:83;;;;;;;;;;-1:-1:-1;8341:5:0;;;;;;;;;;;;-1:-1:-1;;;8341:5:0;;;;8271:83;;;;;;;:::i;:::-;;;;;;;;9196:193;;;;;;;;;;-1:-1:-1;9196:193:0;;;;;:::i;:::-;;:::i;:::-;;;1376:14:1;;1369:22;1351:41;;1339:2;1324:18;9196:193:0;1211:187:1;15746:105:0;;;;;;;;;;-1:-1:-1;15746:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;15826:17:0;15803:4;15826:17;;;:9;:17;;;;;;;;;15746:105;7119:41;;;;;;;;;;-1:-1:-1;7119:41:0;;;;-1:-1:-1;;;;;7119:41:0;;;;;;-1:-1:-1;;;;;1845:32:1;;;1827:51;;1815:2;1800:18;7119:41:0;1655:229:1;8548:95:0;;;;;;;;;;-1:-1:-1;6268:12:0;8548:95;;;2035:25:1;;;2023:2;2008:18;8548:95:0;1889:177:1;9397:446:0;;;;;;;;;;-1:-1:-1;9397:446:0;;;;;:::i;:::-;;:::i;7030:80::-;;;;;;;;;;;;7068:42;7030:80;;15388:192;;;;;;;;;;-1:-1:-1;15388:192:0;;;;;:::i;:::-;;:::i;:::-;;7418:49;;;;;;;;;;;;;;;;8457:83;;;;;;;;;;-1:-1:-1;8457:83:0;;5891:1;4140:36:1;;4128:2;4113:18;8457:83:0;3998:184:1;15588:150:0;;;;;;;;;;-1:-1:-1;15588:150:0;;;;;:::i;:::-;;:::i;20214:291::-;;;;;;;;;;-1:-1:-1;20214:291:0;;;;;:::i;:::-;;:::i;7167:28::-;;;;;;;;;;-1:-1:-1;7167:28:0;;;;-1:-1:-1;;;;;7167:28:0;;;20513:91;;;;;;;;;;-1:-1:-1;20513:91:0;;;;;:::i;:::-;;:::i;14906:235::-;;;;;;;;;;-1:-1:-1;14906:235:0;;;;;:::i;:::-;;:::i;19483:101::-;;;;;;;;;;-1:-1:-1;19483:101:0;;;;;:::i;:::-;;:::i;15859:196::-;;;;;;;;;;;;;:::i;8651:138::-;;;;;;;;;;-1:-1:-1;8651:138:0;;;;;:::i;:::-;;:::i;3143:148::-;;;;;;;;;;;;;:::i;19596:157::-;;;;;;;;;;-1:-1:-1;19596:157:0;;;;;:::i;:::-;;:::i;6425:25::-;;;;;;;;;;;;;;;;14749:147;;;;;;;;;;;;;:::i;7317:42::-;;;;;;;;;;;;;;;;15155:225;;;;;;;;;;-1:-1:-1;15155:225:0;;;;;:::i;:::-;;:::i;2929:79::-;;;;;;;;;;-1:-1:-1;2967:7:0;2994:6;-1:-1:-1;;;;;2994:6:0;2929:79;;7367:44;;;;;;;;;;;;;;;;8362:87;;;;;;;;;;-1:-1:-1;8434:7:0;;;;;;;;;;;;-1:-1:-1;;;8434:7:0;;;;8362:87;;8797:199;;;;;;;;;;-1:-1:-1;8797:199:0;;;;;:::i;:::-;;:::i;19941:265::-;;;;;;;;;;-1:-1:-1;19941:265:0;;;;;:::i;:::-;;:::i;9004:184::-;;;;;;;;;;-1:-1:-1;9004:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;9153:18:0;;;9121:7;9153:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;9004:184;19765:168;;;;;;;;;;-1:-1:-1;19765:168:0;;;;;:::i;:::-;;:::i;3303:244::-;;;;;;;;;;-1:-1:-1;3303:244:0;;;;;:::i;:::-;;:::i;9196:193::-;9298:4;9320:39;1768:10;9343:7;9352:6;9320:8;:39::i;:::-;-1:-1:-1;9377:4:0;9196:193;;;;;:::o;9397:446::-;9529:4;9546:36;9556:6;9564:9;9575:6;9546:9;:36::i;:::-;9593:220;9616:6;1768:10;9664:138;9720:6;9664:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9664:19:0;;;;;;:11;:19;;;;;;;;1768:10;9664:33;;;;;;;;;;:37;:138::i;:::-;9593:8;:220::i;:::-;-1:-1:-1;9831:4:0;9397:446;;;;;:::o;15388:192::-;3056:6;;-1:-1:-1;;;;;3056:6:0;1768:10;3056:22;3048:67;;;;-1:-1:-1;;;3048:67:0;;;;;;;:::i;:::-;;;;;;;;;15467:9:::1;15463:110;15484:7;:14;15481:1;:17;15463:110;;;15543:4;15519:9;:21;15529:7;15537:1;15529:10;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;15519:21:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;15519:21:0;:28;;-1:-1:-1;;15519:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;15500:3;::::1;::::0;::::1;:::i;:::-;;;;15463:110;;;;15388:192:::0;:::o;15588:150::-;3056:6;;-1:-1:-1;;;;;3056:6:0;1768:10;3056:22;3048:67;;;;-1:-1:-1;;;3048:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15660:17:0;::::1;;::::0;;;:9:::1;:17;::::0;;;;;::::1;;15656:75;;;-1:-1:-1::0;;;;;15694:17:0;::::1;15714:5;15694:17:::0;;;:9:::1;:17;::::0;;;;:25;;-1:-1:-1;;15694:25:0::1;::::0;;15656:75:::1;15588:150:::0;:::o;20214:291::-;3056:6;;-1:-1:-1;;;;;3056:6:0;1768:10;3056:22;3048:67;;;;-1:-1:-1;;;3048:67:0;;;;;;;:::i;:::-;20353:1:::1;20337:12;:17;;20308:47;;;::::0;::::1;;20413:1;20396:13;:18;;20366:49;;;::::0;::::1;;20426:14;:29:::0;;;;20466:15:::1;:31:::0;20214:291::o;20513:91::-;3056:6;;-1:-1:-1;;;;;3056:6:0;1768:10;3056:22;3048:67;;;;-1:-1:-1;;;3048:67:0;;;;;;;:::i;:::-;20579:8:::1;:17:::0;20513:91::o;14906:235::-;15004:17;;-1:-1:-1;;;;;15004:17:0;1768:10;-1:-1:-1;;;;;14988:33:0;;14980:42;;;;;;15033:17;:45;;-1:-1:-1;;;;;15033:45:0;;;-1:-1:-1;;;;;;15033:45:0;;;;;;;:17;15089:37;;;:18;:37;;;;;:44;;-1:-1:-1;;15089:44:0;15033:45;15089:44;;;14906:235::o;19483:101::-;3056:6;;-1:-1:-1;;;;;3056:6:0;1768:10;3056:22;3048:67;;;;-1:-1:-1;;;3048:67:0;;;;;;;:::i;:::-;19550:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;19550:26:0::1;-1:-1:-1::0;;;;19550:26:0;;::::1;::::0;;;::::1;::::0;;19483:101::o;15859:196::-;15925:17;;-1:-1:-1;;;;;15925:17:0;1768:10;-1:-1:-1;;;;;15909:33:0;;15901:42;;;;;;15983:21;16015:32;15983:21;16015:12;:32::i;8651:138::-;-1:-1:-1;;;;;8764:16:0;;8717:7;8764:16;;;:7;:16;;;;;;8744:37;;:19;:37::i;3143:148::-;3056:6;;-1:-1:-1;;;;;3056:6:0;1768:10;3056:22;3048:67;;;;-1:-1:-1;;;3048:67:0;;;;;;;:::i;:::-;3250:1:::1;3234:6:::0;;3213:40:::1;::::0;-1:-1:-1;;;;;3234:6:0;;::::1;::::0;3213:40:::1;::::0;3250:1;;3213:40:::1;3281:1;3264:19:::0;;-1:-1:-1;;;;;;3264:19:0::1;::::0;;3143:148::o;19596:157::-;3056:6;;-1:-1:-1;;;;;3056:6:0;1768:10;3056:22;3048:67;;;;-1:-1:-1;;;3048:67:0;;;;;;;:::i;:::-;19695:12:::1;;19680:11;:27;;19672:36;;;::::0;::::1;;19719:12;:26:::0;19596:157::o;14749:147::-;3056:6;;-1:-1:-1;;;;;3056:6:0;1768:10;3056:22;3048:67;;;;-1:-1:-1;;;3048:67:0;;;;;;;:::i;:::-;14808:11:::1;::::0;-1:-1:-1;;;14808:11:0;::::1;;;14807:12;14799:21;;;::::0;::::1;;14831:11;:18:::0;;-1:-1:-1;;;;14831:18:0::1;-1:-1:-1::0;;;14831:18:0::1;::::0;;14873:15:::1;14860:10;:28:::0;14749:147::o;15155:225::-;15235:17;;-1:-1:-1;;;;;15235:17:0;1768:10;-1:-1:-1;;;;;15219:33:0;;15211:42;;;;;;15282:24;15300:4;15282:9;:24::i;:::-;15272:6;:34;;:48;;;;;15319:1;15310:6;:10;15272:48;15264:73;;;;-1:-1:-1;;;15264:73:0;;6263:2:1;15264:73:0;;;6245:21:1;6302:2;6282:18;;;6275:30;-1:-1:-1;;;6321:18:1;;;6314:42;6373:18;;15264:73:0;6061:336:1;15264:73:0;15348:24;15365:6;15348:16;:24::i;8797:199::-;8902:4;8924:42;1768:10;8948:9;8959:6;8924:9;:42::i;19941:265::-;3056:6;;-1:-1:-1;;;;;3056:6:0;1768:10;3056:22;3048:67;;;;-1:-1:-1;;;3048:67:0;;;;;;;:::i;:::-;20068:2:::1;20055:9;:15;;20029:42;;;::::0;::::1;;20123:2;20109:10;:16;;20082:44;;;::::0;::::1;;20137:12;:24:::0;;;;20172:13:::1;:26:::0;19941:265::o;19765:168::-;3056:6;;-1:-1:-1;;;;;3056:6:0;1768:10;3056:22;3048:67;;;;-1:-1:-1;;;3048:67:0;;;;;;;:::i;:::-;19869:14:::1;;19852:13;:31;;19844:40;;;::::0;::::1;;19895:14;:30:::0;19765:168::o;3303:244::-;3056:6;;-1:-1:-1;;;;;3056:6:0;1768:10;3056:22;3048:67;;;;-1:-1:-1;;;3048:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3392:22:0;::::1;3384:73;;;::::0;-1:-1:-1;;;3384:73:0;;6604:2:1;3384:73:0::1;::::0;::::1;6586:21:1::0;6643:2;6623:18;;;6616:30;6682:34;6662:18;;;6655:62;-1:-1:-1;;;6733:18:1;;;6726:36;6779:19;;3384:73:0::1;6402:402:1::0;3384:73:0::1;3494:6;::::0;;3473:38:::1;::::0;-1:-1:-1;;;;;3473:38:0;;::::1;::::0;3494:6;::::1;::::0;3473:38:::1;::::0;::::1;3522:6;:17:::0;;-1:-1:-1;;;;;;3522:17:0::1;-1:-1:-1::0;;;;;3522:17:0;;;::::1;::::0;;;::::1;::::0;;3303:244::o;10662:369::-;-1:-1:-1;;;;;10789:19:0;;10781:68;;;;-1:-1:-1;;;10781:68:0;;7011:2:1;10781:68:0;;;6993:21:1;7050:2;7030:18;;;7023:30;7089:34;7069:18;;;7062:62;-1:-1:-1;;;7140:18:1;;;7133:34;7184:19;;10781:68:0;6809:400:1;10781:68:0;-1:-1:-1;;;;;10868:21:0;;10860:68;;;;-1:-1:-1;;;10860:68:0;;7416:2:1;10860:68:0;;;7398:21:1;7455:2;7435:18;;;7428:30;7494:34;7474:18;;;7467:62;-1:-1:-1;;;7545:18:1;;;7538:32;7587:19;;10860:68:0;7214:398:1;10860:68:0;-1:-1:-1;;;;;10939:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;10991:32;;2035:25:1;;;10991:32:0;;2008:18:1;10991:32:0;;;;;;;10662:369;;;:::o;11039:2978::-;-1:-1:-1;;;;;11161:18:0;;11153:68;;;;-1:-1:-1;;;11153:68:0;;7819:2:1;11153:68:0;;;7801:21:1;7858:2;7838:18;;;7831:30;7897:34;7877:18;;;7870:62;-1:-1:-1;;;7948:18:1;;;7941:35;7993:19;;11153:68:0;7617:401:1;11153:68:0;-1:-1:-1;;;;;11240:16:0;;11232:64;;;;-1:-1:-1;;;11232:64:0;;8225:2:1;11232:64:0;;;8207:21:1;8264:2;8244:18;;;8237:30;8303:34;8283:18;;;8276:62;-1:-1:-1;;;8354:18:1;;;8347:33;8397:19;;11232:64:0;8023:399:1;11232:64:0;11324:1;11315:6;:10;11307:64;;;;-1:-1:-1;;;11307:64:0;;8629:2:1;11307:64:0;;;8611:21:1;8668:2;8648:18;;;8641:30;8707:34;8687:18;;;8680:62;-1:-1:-1;;;8758:18:1;;;8751:39;8807:19;;11307:64:0;8427:405:1;11307:64:0;-1:-1:-1;;;;;11391:13:0;;;;;;:9;:13;;;;;;;;11390:14;11382:40;;;;-1:-1:-1;;;11382:40:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11442:15:0;;;;;;:9;:15;;;;;;;;11441:16;11433:42;;;;-1:-1:-1;;;11433:42:0;;;;;;;:::i;:::-;1768:10;11495:23;;;;:9;:23;;;;;;;;11494:24;11486:50;;;;-1:-1:-1;;;11486:50:0;;;;;;;:::i;:::-;2967:7;2994:6;-1:-1:-1;;;;;11553:15:0;;;2994:6;;11553:15;;;;:32;;-1:-1:-1;2967:7:0;2994:6;-1:-1:-1;;;;;11572:13:0;;;2994:6;;11572:13;;11553:32;11549:1612;;;11621:11;;-1:-1:-1;;;11621:11:0;;;;11616:87;;11653:34;;-1:-1:-1;;;11653:34:0;;9381:2:1;11653:34:0;;;9363:21:1;9420:2;9400:18;;;9393:30;9459:26;9439:18;;;9432:54;9503:18;;11653:34:0;9179:348:1;11616:87:0;11741:13;;-1:-1:-1;;;;;11735:19:0;;;11741:13;;11735:19;:55;;;;-1:-1:-1;11774:15:0;;-1:-1:-1;;;;;11758:32:0;;;11774:15;;11758:32;;11735:55;11731:275;;;-1:-1:-1;;;;;11815:19:0;;11829:4;11815:19;;;;:44;;-1:-1:-1;;;;;;11838:21:0;;11854:4;11838:21;;11815:44;:71;;;;-1:-1:-1;11869:17:0;;-1:-1:-1;;;;;11863:23:0;;;11869:17;;11863:23;;11815:71;:100;;;;-1:-1:-1;11898:17:0;;-1:-1:-1;;;;;11890:25:0;;;11898:17;;11890:25;;11815:100;11811:180;;;11958:12;;11948:6;:22;;11940:31;;;;;;12032:13;;-1:-1:-1;;;;;12026:19:0;;;12032:13;;12026:19;;;;:46;;-1:-1:-1;12055:17:0;;-1:-1:-1;;;;;12049:23:0;;;12055:17;;12049:23;;12026:46;:69;;;;-1:-1:-1;;;;;;12076:19:0;;12090:4;12076:19;;12026:69;:90;;;;-1:-1:-1;;;;;;12099:17:0;;7068:42;12099:17;;12026:90;12022:318;;;12155:12;;12145:6;:22;;12137:63;;;;-1:-1:-1;;;12137:63:0;;9734:2:1;12137:63:0;;;9716:21:1;9773:2;9753:18;;;9746:30;9812;9792:18;;;9785:58;9860:18;;12137:63:0;9532:352:1;12137:63:0;12252:14;;12243:6;12227:13;12237:2;12227:9;:13::i;:::-;:22;;;;:::i;:::-;:39;12219:87;;;;-1:-1:-1;;;12219:87:0;;10224:2:1;12219:87:0;;;10206:21:1;10263:2;10243:18;;;10236:30;10302:34;10282:18;;;10275:62;-1:-1:-1;;;10353:18:1;;;10346:33;10396:19;;12219:87:0;10022:399:1;12219:87:0;12368:28;12399:24;12417:4;12399:9;:24::i;:::-;12476:19;;12368:55;;-1:-1:-1;12453:42:0;;;12528:18;;;;-1:-1:-1;12540:6:0;;-1:-1:-1;;;12540:6:0;;;;12539:7;12528:18;:43;;;;-1:-1:-1;12558:13:0;;-1:-1:-1;;;;;12550:21:0;;;12558:13;;12550:21;;12528:43;:58;;;;-1:-1:-1;12575:11:0;;-1:-1:-1;;;12575:11:0;;;;12528:58;:87;;;;-1:-1:-1;;;;;;12591:24:0;;;;;;:18;:24;;;;;;;;12590:25;12528:87;:114;;;;-1:-1:-1;;;;;;12620:22:0;;;;;;:18;:22;;;;;;;;12619:23;12528:114;12524:626;;;12709:8;;12663:19;;12709:12;12705:166;;12760:45;12799:5;12760:34;12785:8;;12760:20;:24;;:34;;;;:::i;:::-;:38;;:45::i;:::-;12746:59;;12828:23;12839:11;12828:10;:23::i;:::-;12889:52;12906:34;12929:11;12906:20;:34;:::i;:::-;12889:16;:52::i;:::-;12989:21;13033:22;;13029:106;;13080:35;13093:21;13080:12;:35::i;:::-;12644:506;;12524:626;11587:1574;;11549:1612;-1:-1:-1;;;;;13218:24:0;;13181:12;13218:24;;;:18;:24;;;;;;13196:4;;13218:24;;;:50;;-1:-1:-1;;;;;;13246:22:0;;;;;;:18;:22;;;;;;;;13218:50;13217:102;;;-1:-1:-1;13282:13:0;;-1:-1:-1;;;;;13274:21:0;;;13282:13;;13274:21;;;;:44;;-1:-1:-1;13305:13:0;;-1:-1:-1;;;;;13299:19:0;;;13305:13;;13299:19;;13274:44;13213:743;;;-1:-1:-1;13346:5:0;13213:743;;;13395:13;;-1:-1:-1;;;;;13387:21:0;;;13395:13;;13387:21;:55;;;;-1:-1:-1;13426:15:0;;-1:-1:-1;;;;;13412:30:0;;;13426:15;;13412:30;;13387:55;13384:350;;;-1:-1:-1;;;;;13467:11:0;;;;;;:7;:11;;;;;13481:15;13467:29;;;;13531:14;;13519:9;:26;13578:12;;13568:7;:22;13636:10;;13617:29;13613:106;;;-1:-1:-1;;;;;13675:13:0;;;;;;:9;:13;;;;;:20;;-1:-1:-1;;13675:20:0;13691:4;13675:20;;;13613:106;13764:13;;-1:-1:-1;;;;;13758:19:0;;;13764:13;;13758:19;:55;;;;-1:-1:-1;13797:15:0;;-1:-1:-1;;;;;13781:32:0;;;13797:15;;13781:32;;13758:55;13754:191;;;13868:15;;13856:9;:27;13916:13;;13906:7;:23;13754:191;13968:41;13983:4;13989:2;13993:6;14001:7;13968:14;:41::i;:::-;11142:2875;11039:2978;;;:::o;3915:224::-;4035:7;4071:12;4063:6;;;;4055:29;;;;-1:-1:-1;;;4055:29:0;;;;;;;;:::i;:::-;-1:-1:-1;4095:9:0;4107:5;4111:1;4107;:5;:::i;:::-;4095:17;3915:224;-1:-1:-1;;;;;3915:224:0:o;14642:99::-;14699:17;;:34;;-1:-1:-1;;;;;14699:17:0;;;;:34;;;;;14726:6;;14699:17;:34;:17;:34;14726:6;14699:17;:34;;;;;;;;;;;;;;;;;;;9851:323;9946:7;10004;;9993;:18;;9971:110;;;;-1:-1:-1;;;9971:110:0;;10758:2:1;9971:110:0;;;10740:21:1;10797:2;10777:18;;;10770:30;10836:34;10816:18;;;10809:62;-1:-1:-1;;;10887:18:1;;;10880:40;10937:19;;9971:110:0;10556:406:1;9971:110:0;10092:19;10114:10;:8;:10::i;:::-;10092:32;-1:-1:-1;10142:24:0;:7;10092:32;10142:11;:24::i;:::-;10135:31;9851:323;-1:-1:-1;;;9851:323:0:o;14151:483::-;7561:6;:13;;-1:-1:-1;;;;7561:13:0;-1:-1:-1;;;7561:13:0;;;14253:16:::1;::::0;;14267:1:::1;14253:16:::0;;;;;::::1;::::0;;-1:-1:-1;;14253:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;14253:16:0::1;14229:40;;14298:4;14280;14285:1;14280:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14280:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;14324:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;14324:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;14280:7;;14324:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14314:4;14319:1;14314:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14314:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;14389:15:::1;::::0;14357:62:::1;::::0;14374:4:::1;::::0;14389:15:::1;14407:11:::0;14357:8:::1;:62::i;:::-;14430:15;::::0;:196:::1;::::0;-1:-1:-1;;;14430:196:0;;-1:-1:-1;;;;;14430:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;14511:11;;14430:15:::1;::::0;14553:4;;14580::::1;::::0;14600:15:::1;::::0;14430:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;7597:6:0;:14;;-1:-1:-1;;;;7597:14:0;;;-1:-1:-1;;;;14151:483:0:o;4147:246::-;4205:7;4229:6;4225:47;;-1:-1:-1;4259:1:0;4252:8;;4225:47;4282:9;4294:5;4298:1;4294;:5;:::i;:::-;4282:17;-1:-1:-1;4327:1:0;4318:5;4322:1;4282:17;4318:5;:::i;:::-;:10;4310:56;;;;-1:-1:-1;;;4310:56:0;;12805:2:1;4310:56:0;;;12787:21:1;12844:2;12824:18;;;12817:30;12883:34;12863:18;;;12856:62;-1:-1:-1;;;12934:18:1;;;12927:31;12975:19;;4310:56:0;12603:397:1;4401:132:0;4459:7;4486:39;4490:1;4493;4486:39;;;;;;;;;;;;;;;;;:3;:39::i;14025:118::-;14085:50;14103:4;7068:42;14123:11;14085:9;:50::i;16063:282::-;16219:7;16214:28;;16228:14;:12;:14::i;:::-;16253:44;16271:6;16279:9;16290:6;16253:17;:44::i;:::-;16313:7;16308:29;;16322:15;10555:17;;10543:9;:29;10593:15;;10583:7;:25;10630:16;;10619:8;:27;10499:155;19038:166;19080:7;19101:15;19118;19137:19;:17;:19::i;:::-;19100:56;;-1:-1:-1;19100:56:0;-1:-1:-1;19176:20:0;19100:56;;19176:11;:20::i;:::-;19169:27;;;;19038:166;:::o;4541:223::-;4661:7;4696:12;4689:5;4681:28;;;;-1:-1:-1;;;4681:28:0;;;;;;;;:::i;:::-;-1:-1:-1;4720:9:0;4732:5;4736:1;4732;:5;:::i;10182:309::-;10229:9;;:14;:30;;;;-1:-1:-1;10247:7:0;;:12;10229:30;:47;;;;-1:-1:-1;10263:8:0;;:13;10229:47;10225:60;;;10182:309::o;10225:60::-;10321:9;;;10301:17;:29;10359:7;;;10341:15;:25;10396:8;;;10377:16;:27;-1:-1:-1;10425:13:0;;;;10449:11;;;;10471:12;10182:309::o;16353:610::-;16500:15;16530:23;16568:12;16595:23;16633:12;16660:13;16687:19;16698:7;16687:10;:19::i;:::-;-1:-1:-1;;;;;16735:15:0;;;;;;:7;:15;;;;;;16485:221;;-1:-1:-1;16485:221:0;;-1:-1:-1;16485:221:0;;-1:-1:-1;16485:221:0;-1:-1:-1;16485:221:0;-1:-1:-1;16485:221:0;-1:-1:-1;16735:28:0;;16485:221;16735:19;:28::i;:::-;-1:-1:-1;;;;;16717:15:0;;;;;;;:7;:15;;;;;;:46;;;;16795:18;;;;;;;:39;;16818:15;16795:22;:39::i;:::-;-1:-1:-1;;;;;16774:18:0;;;;;;:7;:18;;;;;:60;16845:16;16855:5;16845:9;:16::i;:::-;16872:23;16884:4;16890;16872:11;:23::i;:::-;16928:9;-1:-1:-1;;;;;16911:44:0;16920:6;-1:-1:-1;;;;;16911:44:0;;16939:15;16911:44;;;;2035:25:1;;2023:2;2008:18;;1889:177;16911:44:0;;;;;;;;16474:489;;;;;;16353:610;;;:::o;19212:263::-;19310:7;;19263;;;;6268:12;19378:20;19310:7;6268:12;19378:11;:20::i;:::-;19368:7;:30;19364:61;;;-1:-1:-1;;19408:7:0;;;6268:12;;-1:-1:-1;19212:263:0;-1:-1:-1;19212:263:0:o;19364:61::-;19450:7;;19459;;-1:-1:-1;19212:263:0;-1:-1:-1;19212:263:0:o;17382:625::-;17482:7;17504;17526;17548;17570;17592;17628:23;17653:12;17667:13;17697:40;17709:7;17718:9;;17729:7;;17697:11;:40::i;:::-;17627:110;;;;;;17748:19;17770:10;:8;:10::i;:::-;17748:32;;17792:15;17809:23;17834:12;17863:46;17875:7;17884:4;17890:5;17897:11;17863;:46::i;:::-;17791:118;;-1:-1:-1;17791:118:0;-1:-1:-1;17791:118:0;-1:-1:-1;17970:15:0;;-1:-1:-1;17987:4:0;;-1:-1:-1;17993:5:0;;-1:-1:-1;;;;;17382:625:0;;;;;;;:::o;3771:136::-;3829:7;3856:43;3860:1;3863;3856:43;;;;;;;;;;;;;;;;;:3;:43::i;3584:179::-;3642:7;;3674:5;3678:1;3674;:5;:::i;:::-;3662:17;;3703:1;3698;:6;;3690:46;;;;-1:-1:-1;;;3690:46:0;;13207:2:1;3690:46:0;;;13189:21:1;13246:2;13226:18;;;13219:30;13285:29;13265:18;;;13258:57;13332:18;;3690:46:0;13005:351:1;16971:211:0;17024:19;17046:10;:8;:10::i;:::-;17024:32;-1:-1:-1;17067:13:0;17083:22;:5;17024:32;17083:9;:22::i;:::-;17157:4;17141:22;;;;:7;:22;;;;;;17067:38;;-1:-1:-1;17141:33:0;;17067:38;17141:26;:33::i;:::-;17132:4;17116:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;16971:211:0:o;17190:147::-;17268:7;;:17;;17280:4;17268:11;:17::i;:::-;17258:7;:27;17309:10;;:20;;17324:4;17309:14;:20::i;:::-;17296:10;:33;-1:-1:-1;;17190:147:0:o;18015:471::-;18184:7;;;;18278:30;18304:3;18278:21;:7;18290:8;18278:11;:21::i;:30::-;18263:45;-1:-1:-1;18319:13:0;18335:28;18359:3;18335:19;:7;18347:6;18335:11;:19::i;:28::-;18319:44;-1:-1:-1;18374:23:0;18400:28;18319:44;18400:17;:7;18412:4;18400:11;:17::i;:::-;:21;;:28::i;:::-;18374:54;18466:4;;-1:-1:-1;18472:5:0;;-1:-1:-1;18015:471:0;;-1:-1:-1;;;;;18015:471:0:o;18494:536::-;18688:7;;;;18785:24;:7;18797:11;18785;:24::i;:::-;18767:42;-1:-1:-1;18820:12:0;18835:21;:4;18844:11;18835:8;:21::i;:::-;18820:36;-1:-1:-1;18867:13:0;18883:22;:5;18893:11;18883:9;:22::i;:::-;18867:38;-1:-1:-1;18916:23:0;18942:28;18867:38;18942:17;:7;18954:4;18942:11;:17::i;:28::-;18991:7;;;;-1:-1:-1;19017:4:0;;-1:-1:-1;18494:536:0;;-1:-1:-1;;;;;;;18494:536: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;752:134;820:20;;849:31;820:20;849:31;:::i;:::-;752:134;;;:::o;891:315::-;959:6;967;1020:2;1008:9;999:7;995:23;991:32;988:52;;;1036:1;1033;1026:12;988:52;1075:9;1062:23;1094:31;1119:5;1094:31;:::i;:::-;1144:5;1196:2;1181:18;;;;1168:32;;-1:-1:-1;;;891:315:1:o;1403:247::-;1462:6;1515:2;1503:9;1494:7;1490:23;1486:32;1483:52;;;1531:1;1528;1521:12;1483:52;1570:9;1557:23;1589:31;1614:5;1589:31;:::i;2071:456::-;2148:6;2156;2164;2217:2;2205:9;2196:7;2192:23;2188:32;2185:52;;;2233:1;2230;2223:12;2185:52;2272:9;2259:23;2291:31;2316:5;2291:31;:::i;:::-;2341:5;-1:-1:-1;2398:2:1;2383:18;;2370:32;2411:33;2370:32;2411:33;:::i;:::-;2071:456;;2463:7;;-1:-1:-1;;;2517:2:1;2502:18;;;;2489:32;;2071:456::o;2740:127::-;2801:10;2796:3;2792:20;2789:1;2782:31;2832:4;2829:1;2822:15;2856:4;2853:1;2846:15;2872:1121;2956:6;2987:2;3030;3018:9;3009:7;3005:23;3001:32;2998:52;;;3046:1;3043;3036:12;2998:52;3086:9;3073:23;3115:18;3156:2;3148:6;3145:14;3142:34;;;3172:1;3169;3162:12;3142:34;3210:6;3199:9;3195:22;3185:32;;3255:7;3248:4;3244:2;3240:13;3236:27;3226:55;;3277:1;3274;3267:12;3226:55;3313:2;3300:16;3335:2;3331;3328:10;3325:36;;;3341:18;;:::i;:::-;3387:2;3384:1;3380:10;3419:2;3413:9;3482:2;3478:7;3473:2;3469;3465:11;3461:25;3453:6;3449:38;3537:6;3525:10;3522:22;3517:2;3505:10;3502:18;3499:46;3496:72;;;3548:18;;:::i;:::-;3584:2;3577:22;3634:18;;;3668:15;;;;-1:-1:-1;3710:11:1;;;3706:20;;;3738:19;;;3735:39;;;3770:1;3767;3760:12;3735:39;3794:11;;;;3814:148;3830:6;3825:3;3822:15;3814:148;;;3896:23;3915:3;3896:23;:::i;:::-;3884:36;;3847:12;;;;3940;;;;3814:148;;;3981:6;2872:1121;-1:-1:-1;;;;;;;;2872:1121:1:o;4187:248::-;4255:6;4263;4316:2;4304:9;4295:7;4291:23;4287:32;4284:52;;;4332:1;4329;4322:12;4284:52;-1:-1:-1;;4355:23:1;;;4425:2;4410:18;;;4397:32;;-1:-1:-1;4187:248:1:o;4440:180::-;4499:6;4552:2;4540:9;4531:7;4527:23;4523:32;4520:52;;;4568:1;4565;4558:12;4520:52;-1:-1:-1;4591:23:1;;4440:180;-1:-1:-1;4440:180:1:o;4625:273::-;4681:6;4734:2;4722:9;4713:7;4709:23;4705:32;4702:52;;;4750:1;4747;4740:12;4702:52;4789:9;4776:23;4842:5;4835:13;4828:21;4821:5;4818:32;4808:60;;4864:1;4861;4854:12;4903:388;4971:6;4979;5032:2;5020:9;5011:7;5007:23;5003:32;5000:52;;;5048:1;5045;5038:12;5000:52;5087:9;5074:23;5106:31;5131:5;5106:31;:::i;:::-;5156:5;-1:-1:-1;5213:2:1;5198:18;;5185:32;5226:33;5185:32;5226:33;:::i;:::-;5278:7;5268:17;;;4903:388;;;;;:::o;5296:356::-;5498:2;5480:21;;;5517:18;;;5510:30;5576:34;5571:2;5556:18;;5549:62;5643:2;5628:18;;5296:356::o;5657:127::-;5718:10;5713:3;5709:20;5706:1;5699:31;5749:4;5746:1;5739:15;5773:4;5770:1;5763:15;5789:127;5850:10;5845:3;5841:20;5838:1;5831:31;5881:4;5878:1;5871:15;5905:4;5902:1;5895:15;5921:135;5960:3;-1:-1:-1;;5981:17:1;;5978:43;;;6001:18;;:::i;:::-;-1:-1:-1;6048:1:1;6037:13;;5921:135::o;8837:337::-;9039:2;9021:21;;;9078:2;9058:18;;;9051:30;-1:-1:-1;;;9112:2:1;9097:18;;9090:43;9165:2;9150:18;;8837:337::o;9889:128::-;9929:3;9960:1;9956:6;9953:1;9950:13;9947:39;;;9966:18;;:::i;:::-;-1:-1:-1;10002:9:1;;9889:128::o;10426:125::-;10466:4;10494:1;10491;10488:8;10485:34;;;10499:18;;:::i;:::-;-1:-1:-1;10536:9:1;;10426:125::o;10967:251::-;11037:6;11090:2;11078:9;11069:7;11065:23;11061:32;11058:52;;;11106:1;11103;11096:12;11058:52;11138:9;11132:16;11157:31;11182:5;11157:31;:::i;11223:980::-;11485:4;11533:3;11522:9;11518:19;11564:6;11553:9;11546:25;11590:2;11628:6;11623:2;11612:9;11608:18;11601:34;11671:3;11666:2;11655:9;11651:18;11644:31;11695:6;11730;11724:13;11761:6;11753;11746:22;11799:3;11788:9;11784:19;11777:26;;11838:2;11830:6;11826:15;11812:29;;11859:1;11869:195;11883:6;11880:1;11877:13;11869:195;;;11948:13;;-1:-1:-1;;;;;11944:39:1;11932:52;;12039:15;;;;12004:12;;;;11980:1;11898:9;11869:195;;;-1:-1:-1;;;;;;;12120:32:1;;;;12115:2;12100:18;;12093:60;-1:-1:-1;;;12184:3:1;12169:19;12162:35;12081:3;11223:980;-1:-1:-1;;;11223:980:1:o;12208:168::-;12248:7;12314:1;12310;12306:6;12302:14;12299:1;12296:21;12291:1;12284:9;12277:17;12273:45;12270:71;;;12321:18;;:::i;:::-;-1:-1:-1;12361:9:1;;12208:168::o;12381:217::-;12421:1;12447;12437:132;;12491:10;12486:3;12482:20;12479:1;12472:31;12526:4;12523:1;12516:15;12554:4;12551:1;12544:15;12437:132;-1:-1:-1;12583:9:1;;12381:217::o

Swarm Source

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