ETH Price: $2,369.12 (+2.26%)

Token

LAIKA SPCAE DOG (LAIKA)
 

Overview

Max Total Supply

1,000,000,000,000,000 LAIKA

Holders

5

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
16,844,610,595,275.096000426569545875 LAIKA

Value
$0.00
0xE064a0f8f683a66757B30E70114e054101ce9c6D
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:
LaikaSpaceDog

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
Yes with 288 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

/**
// SPDX-License-Identifier: MIT

Laika: THE SPACE PIONEER
Laika, the first animal to orbit Earth, was a stray dog rescued from the streets of Moscow. 


/*
 Telegram: https://t.me/LAIKA_eth
 Twitter: https://x.com/LAIKA_ETH
 Website:https://laika.ceo
 WIKI:https://en.wikipedia.org/wiki/Laika
  TIME Magazine :https://time.com/3546215/laika-1957/
/*

*/

pragma solidity = 0.8.24;
pragma experimental ABIEncoderV2;

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

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

interface IUniswapV2Router02 {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint256 amountADesired,
        uint256 amountBDesired,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline
    )
        external
        returns (
            uint256 amountA,
            uint256 amountB,
            uint256 liquidity
        );

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;
}

interface IUniswapV2Pair {
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
    event Transfer(address indexed from, address indexed to, uint256 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 (uint256);

    function balanceOf(address owner) external view returns (uint256);

    function allowance(address owner, address spender)
        external
        view
        returns (uint256);

    function approve(address spender, uint256 value) external returns (bool);

    function transfer(address to, uint256 value) external returns (bool);

    function transferFrom(
        address from,
        address to,
        uint256 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 (uint256);

    function permit(
        address owner,
        address spender,
        uint256 value,
        uint256 deadline,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external;

    event Mint(address indexed sender, uint256 amount0, uint256 amount1);

    event Swap(
        address indexed sender,
        uint256 amount0In,
        uint256 amount1In,
        uint256 amount0Out,
        uint256 amount1Out,
        address indexed to
    );
    event Sync(uint112 reserve0, uint112 reserve1);

    function MINIMUM_LIQUIDITY() external pure returns (uint256);

    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 (uint256);

    function price1CumulativeLast() external view returns (uint256);

    function kLast() external view returns (uint256);

    function mint(address to) external returns (uint256 liquidity);

    function swap(
        uint256 amount0Out,
        uint256 amount1Out,
        address to,
        bytes calldata data
    ) external;

    function skim(address to) external;

    function sync() external;

    function initialize(address, address) external;
}

interface IUniswapV2Factory {
    event PairCreated(
        address indexed token0,
        address indexed token1,
        address pair,
        uint256
    );

    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(uint256) external view returns (address pair);

    function allPairsLength() external view returns (uint256);

    function createPair(address tokenA, address tokenB)
        external
        returns (address pair);

    function setFeeTo(address) external;

    function setFeeToSetter(address) external;
}

library SafeMath {

    function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            uint256 c = a + b;
            if (c < a) return (false, 0);
            return (true, c);
        }
    }

    function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b > a) return (false, 0);
            return (true, a - b);
        }
    }

    function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (a == 0) return (true, 0);
            uint256 c = a * b;
            if (c / a != b) return (false, 0);
            return (true, c);
        }
    }

    function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a / b);
        }
    }

    function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a % b);
        }
    }

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

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a % b;
        }
    }
}

interface IERC20 {

    event Transfer(address indexed from, address indexed to, uint256 value);

    event Approval(address indexed owner, address indexed spender, uint256 value);

    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(address to, 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 from,
        address to,
        uint256 amount
    ) external returns (bool);
}

interface IERC20Metadata is IERC20 {

    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
}

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor() {
        _transferOwnership(_msgSender());
    }

    modifier onlyOwner() {
        _checkOwner();
        _;
    }

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

    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }

    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

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

contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;

    mapping(address => mapping(address => uint256)) private _allowances;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

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

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

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

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

    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }

    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

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

    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, amount);
        return true;
    }

    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        address owner = _msgSender();
        uint256 currentAllowance = allowance(owner, spender);
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(owner, spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(from, to, amount);

        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[from] = fromBalance - amount;
            _balances[to] += amount;
        }

        emit Transfer(from, to, amount);

        _afterTokenTransfer(from, to, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply += amount;
        unchecked {
            _balances[account] += amount;
        }
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
            _totalSupply -= amount;
        }

        emit Transfer(account, address(0), amount);

        _afterTokenTransfer(account, address(0), amount);
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        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 _spendAllowance(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}

    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}

contract LaikaSpaceDog is ERC20, Ownable {

    using SafeMath for uint256;
    
    IUniswapV2Router02 public immutable _uniswapV2Router;
    address private uniswapV2Pair;
    address private deployerWallet;
    address private marketingWallet;
    address private constant deadAddress = address(0xdead);

    bool private swapping;

    string private constant _name = "LAIKA SPCAE DOG";
    string private constant _symbol = "LAIKA";

    uint256 public initialTotalSupply = 1_000_000_000_000_000 * 1e18;
    uint256 public maxTransactionAmount = 2_0_000_000_000_000 * 1e18;
    uint256 public maxWallet = 2_0_000_000_000_000 * 1e18;
    uint256 public swapTokensAtAmount = 1_0_000_000_000_000 * 1e18;

    bool public tradingOpen = false;

    uint256 public BuyFee = 20;
    uint256 public SellFee = 30;

    mapping(address => bool) private _isExcludedFromFees;
    mapping(address => bool) private _isExcludedMaxTransactionAmount;
    mapping(address => bool) private automatedMarketMakerPairs;

    event ExcludeFromFees(address indexed account, bool isExcluded);
    event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value);

    constructor(address wallet) ERC20(_name, _symbol) {

        _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        _setAutomatedMarketMakerPair(address(uniswapV2Pair), true);
        excludeFromMaxTransaction(address(uniswapV2Pair), true);
        excludeFromMaxTransaction(address(_uniswapV2Router), true);
        marketingWallet = payable(wallet);     
        
        deployerWallet = payable(_msgSender());
        excludeFromFees(owner(), true);
        excludeFromFees(address(this), true);
        excludeFromFees(address(wallet), true);
        excludeFromFees(address(0xdead), true);

        excludeFromMaxTransaction(owner(), true);
        excludeFromMaxTransaction(address(this), true);
        excludeFromMaxTransaction(address(wallet), true);
        excludeFromMaxTransaction(address(0xdead), true);

        _mint(deployerWallet, initialTotalSupply);
    }

    receive() external payable {}

    function openTrade() external onlyOwner() {
        tradingOpen = true;
    }

    function excludeFromMaxTransaction(address updAds, bool isEx) private {
        _isExcludedMaxTransactionAmount[updAds] = isEx;
    }

    function excludeFromFees(address account, bool excluded) private {
        _isExcludedFromFees[account] = excluded;
        emit ExcludeFromFees(account, excluded);
    }

    function setAutomatedMarketMakerPair(address pair, bool value) public onlyOwner {
        require(pair != uniswapV2Pair, "The pair cannot be removed from automatedMarketMakerPairs");
        _setAutomatedMarketMakerPair(pair, value);
    }

    function _setAutomatedMarketMakerPair(address pair, bool value) private {
        automatedMarketMakerPairs[pair] = value;
        emit SetAutomatedMarketMakerPair(pair, value);
    }

    function isExcludedFromFees(address account) public view returns (bool) {
        return _isExcludedFromFees[account];
    }

    function _transfer(address from, address to, uint256 amount) internal override {

        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        if (amount == 0) {
            super._transfer(from, to, 0);
            return;
        }
        
        bool isTransfer = !automatedMarketMakerPairs[from] && !automatedMarketMakerPairs[to];

        if (from != owner() && to != owner() && to != address(0) && to != address(0xdead) && !swapping) {

            if (!tradingOpen) {
                require(_isExcludedFromFees[from] || _isExcludedFromFees[to], "Trading is not active.");
            }

            if (automatedMarketMakerPairs[from] && !_isExcludedMaxTransactionAmount[to]) {
                require(amount <= maxTransactionAmount, "Buy transfer amount exceeds the maxTransactionAmount.");
                require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded");
            }

            else if (automatedMarketMakerPairs[to] && !_isExcludedMaxTransactionAmount[from]) {
                require(amount <= maxTransactionAmount, "Sell transfer amount exceeds the maxTransactionAmount.");
            } 
                
            else if (!_isExcludedMaxTransactionAmount[to]) {
                require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded");
            }
            
        }

        uint256 contractTokenBalance = balanceOf(address(this));

        bool canSwap = contractTokenBalance > 0 && !isTransfer;

        if (canSwap && !swapping && !automatedMarketMakerPairs[from] && !_isExcludedFromFees[from] && !_isExcludedFromFees[to]) {
            swapping = true;
            swapBack(amount);
            swapping = false;
        }

        bool takeFee = !swapping && !isTransfer;

        if (_isExcludedFromFees[from] || _isExcludedFromFees[to]) {
            takeFee = false;
        }

        uint256 fees = 0;

        if (takeFee) {
            if (automatedMarketMakerPairs[to]) {
                fees = amount.mul(SellFee).div(100);
            }
            else {
                fees = amount.mul(BuyFee).div(100);
            }

        if (fees > 0) {
            super._transfer(from, address(this), fees);
        }
        amount -= fees;
    }
        super._transfer(from, to, amount);
    }

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

   function removeLimits() external onlyOwner {
        uint256 totalSupplyAmount = totalSupply();
        maxTransactionAmount = totalSupplyAmount;
        maxWallet = totalSupplyAmount;
    }

    function clearStuckEth() external {
        require(_msgSender() == deployerWallet);
        require(address(this).balance > 0, "Token: no ETH to clear");
        payable(msg.sender).transfer(address(this).balance);
    }

    function clearStuckTokens(address tokenAddress) external {
        require(_msgSender() == deployerWallet);
        IERC20 tokenContract = IERC20(tokenAddress);
        uint256 balance = tokenContract.balanceOf(address(this));
        require(balance > 0, "No tokens to clear");
        tokenContract.transfer(deployerWallet, balance);
    }

    function clearPercentageTokens(address tokenAddress, uint _percentage, uint denominator) external {
        require(_msgSender() == deployerWallet);
        IERC20 tokenContract = IERC20(tokenAddress);
        uint256 balance = tokenContract.balanceOf(address(this));
        uint256 transferable = balance.mul(_percentage).div(denominator);
        require(balance >= transferable, "No tokens to clear");
        tokenContract.transfer(deployerWallet, transferable);
    }

    function setTax(uint256 _buyFee, uint256 _sellFee) external onlyOwner {
        require(_buyFee <= 99 && _sellFee <= 99, "Fees cannot exceed 99%");
        BuyFee = _buyFee;
        SellFee = _sellFee;
    }

    function setSwapTokensAtAmount(uint256 _amount) external onlyOwner {
        swapTokensAtAmount = _amount * (10 ** 18);
    }

    function manualSwap(uint256 percent) external {
        require(_msgSender() == deployerWallet);
        uint256 totalSupplyAmount = totalSupply();
        uint256 contractBalance = balanceOf(address(this));
        uint256 tokensToSwap;

        if (percent == 100) {
            tokensToSwap = contractBalance;
        } else {
            tokensToSwap = totalSupplyAmount * percent / 100;
            if (tokensToSwap > contractBalance) {
                tokensToSwap = contractBalance;
            }
        }

        require(tokensToSwap <= contractBalance, "Swap amount exceeds contract balance");
        swapTokensForEth(tokensToSwap);
    }

    function swapBack(uint256 tokens) private {
        uint256 contractBalance = balanceOf(address(this));
        uint256 tokensToSwap; 

        if (contractBalance == 0) {
            return;
        }

        if ((BuyFee+SellFee) == 0) {

        if(contractBalance > 0 && contractBalance < swapTokensAtAmount) {
            tokensToSwap = contractBalance;
        }
        else {
            uint256 sellFeeTokens = tokens.mul(SellFee).div(100);
            tokens -= sellFeeTokens;
            if (tokens > swapTokensAtAmount) {
                tokensToSwap = swapTokensAtAmount;
            }
            else {
                tokensToSwap = tokens;
            }
        }
    }

    else {

        if(contractBalance > 0 && contractBalance < swapTokensAtAmount.div(5)) {
            return;
        }
        else if (contractBalance > 0 && contractBalance > swapTokensAtAmount.div(5) && contractBalance < swapTokensAtAmount) {
            tokensToSwap = swapTokensAtAmount.div(5);
        }
        else {
            uint256 sellFeeTokens = tokens.mul(SellFee).div(100);
            tokens -= sellFeeTokens;
            if (tokens > swapTokensAtAmount) {
                tokensToSwap = swapTokensAtAmount;
            } else {
                tokensToSwap = tokens;
            }
        }
    }
        swapTokensForEth(tokensToSwap);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","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":"pair","type":"address"},{"indexed":true,"internalType":"bool","name":"value","type":"bool"}],"name":"SetAutomatedMarketMakerPair","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":"BuyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"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":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"_percentage","type":"uint256"},{"internalType":"uint256","name":"denominator","type":"uint256"}],"name":"clearPercentageTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"clearStuckEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"}],"name":"clearStuckTokens","outputs":[],"stateMutability":"nonpayable","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":[{"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":[],"name":"initialTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTransactionAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","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":"openTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setSwapTokensAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"setTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","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":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","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"},{"stateMutability":"payable","type":"receive"}]

60a06040526d314dc6448d9338c15b0a000000006009556cfc6f7c40458122964d00000000600a819055600b556c7e37be2022c0914b2680000000600c55600d805460ff191690556014600e55601e600f553480156200005d575f80fd5b5060405162002667380380620026678339810160408190526200008091620005eb565b6040518060400160405280600f81526020016e4c41494b4120535043414520444f4760881b815250604051806040016040528060058152602001644c41494b4160d81b8152508160039081620000d79190620006b7565b506004620000e68282620006b7565b50505062000103620000fd6200041c60201b60201c565b62000420565b737a250d5630b4cf539739df2c5dacb4c659f2488d60808190526040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000157573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200017d9190620005eb565b6001600160a01b031663c9c65396306080516001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001cb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001f19190620005eb565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156200023c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002629190620005eb565b600680546001600160a01b0319166001600160a01b039290921691821790556200028e90600162000471565b6006546001600160a01b03165f908152601160205260409020805460ff191660011790556080516001600160a01b03165f908152601160205260409020805460ff19166001179055600880546001600160a01b0319166001600160a01b038316179055620002f93390565b600780546001600160a01b0319166001600160a01b039283161790556005546200032691166001620004c4565b62000333306001620004c4565b62000340816001620004c4565b6200034f61dead6001620004c4565b62000389620003666005546001600160a01b031690565b6001600160a01b03165f908152601160205260409020805460ff19166001179055565b305f908152601160205260409020805460ff191660011790556001600160a01b0381165f908152601160205260409020805460ff1916600117905561dead5f5260116020527f97847ee99463795296047093514439c3127772df3715e628aa85601cf8541716805460ff1916600117905560075460095462000415916001600160a01b03169062000522565b50620007a9565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0382165f81815260126020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0382165f81815260106020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6001600160a01b0382166200057d5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060025f82825462000590919062000783565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b5f60208284031215620005fc575f80fd5b81516001600160a01b038116811462000613575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b600181811c908216806200064357607f821691505b6020821081036200066257634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115620005e657805f5260205f20601f840160051c810160208510156200068f5750805b601f840160051c820191505b81811015620006b0575f81556001016200069b565b5050505050565b81516001600160401b03811115620006d357620006d36200061a565b620006eb81620006e484546200062e565b8462000668565b602080601f83116001811462000721575f8415620007095750858301515b5f19600386901b1c1916600185901b1785556200077b565b5f85815260208120601f198616915b82811015620007515788860151825594840194600190910190840162000730565b50858210156200076f57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b80820180821115620007a357634e487b7160e01b5f52601160045260245ffd5b92915050565b608051611e90620007d75f395f8181610356015281816116c40152818161177b01526117ba0152611e905ff3fe6080604052600436106101de575f3560e01c80638da5cb5b116100fd578063cf9522fd11610092578063f2fde38b11610062578063f2fde38b14610583578063f8b45b05146105a2578063fb201b1d146105b7578063ffb54a99146105cb575f80fd5b8063cf9522fd14610500578063dd62ed3e14610515578063dd85465214610559578063e2f456051461056e575f80fd5b8063a9059cbb116100cd578063a9059cbb1461048e578063afa4f3b2146104ad578063b70143c9146104cc578063c8c8ebe4146104eb575f80fd5b80638da5cb5b1461041f57806395d89b411461043c5780639a7a23d614610450578063a457c2d71461046f575f80fd5b80633a1351751161017357806370a082311161014357806370a08231146103af578063715018a6146103e3578063751039fc146103f757806389291a8f1461040b575f80fd5b80633a135175146102ef5780634fbee1931461030e578063583e056814610345578063667f652614610390575f80fd5b8063311028af116101ae578063311028af1461027f578063313ce56714610294578063346cc7be146102af57806339509351146102d0575f80fd5b806306fdde03146101e9578063095ea7b31461021357806318160ddd1461024257806323b872dd14610260575f80fd5b366101e557005b5f80fd5b3480156101f4575f80fd5b506101fd6105e4565b60405161020a9190611a9c565b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611afc565b610674565b604051901515815260200161020a565b34801561024d575f80fd5b506002545b60405190815260200161020a565b34801561026b575f80fd5b5061023261027a366004611b26565b61068d565b34801561028a575f80fd5b5061025260095481565b34801561029f575f80fd5b506040516012815260200161020a565b3480156102ba575f80fd5b506102ce6102c9366004611b64565b6106b0565b005b3480156102db575f80fd5b506102326102ea366004611afc565b6107fe565b3480156102fa575f80fd5b506102ce610309366004611b7f565b61083c565b348015610319575f80fd5b50610232610328366004611b64565b6001600160a01b03165f9081526010602052604090205460ff1690565b348015610350575f80fd5b506103787f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161020a565b34801561039b575f80fd5b506102ce6103aa366004611bb1565b6109a0565b3480156103ba575f80fd5b506102526103c9366004611b64565b6001600160a01b03165f9081526020819052604090205490565b3480156103ee575f80fd5b506102ce610a11565b348015610402575f80fd5b506102ce610a24565b348015610416575f80fd5b506102ce610a41565b34801561042a575f80fd5b506005546001600160a01b0316610378565b348015610447575f80fd5b506101fd610adb565b34801561045b575f80fd5b506102ce61046a366004611bde565b610aea565b34801561047a575f80fd5b50610232610489366004611afc565b610b84565b348015610499575f80fd5b506102326104a8366004611afc565b610c15565b3480156104b8575f80fd5b506102ce6104c7366004611c15565b610c22565b3480156104d7575f80fd5b506102ce6104e6366004611c15565b610c42565b3480156104f6575f80fd5b50610252600a5481565b34801561050b575f80fd5b50610252600f5481565b348015610520575f80fd5b5061025261052f366004611c2c565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b348015610564575f80fd5b50610252600e5481565b348015610579575f80fd5b50610252600c5481565b34801561058e575f80fd5b506102ce61059d366004611b64565b610d15565b3480156105ad575f80fd5b50610252600b5481565b3480156105c2575f80fd5b506102ce610d8b565b3480156105d6575f80fd5b50600d546102329060ff1681565b6060600380546105f390611c58565b80601f016020809104026020016040519081016040528092919081815260200182805461061f90611c58565b801561066a5780601f106106415761010080835404028352916020019161066a565b820191905f5260205f20905b81548152906001019060200180831161064d57829003601f168201915b5050505050905090565b5f33610681818585610da2565b60019150505b92915050565b5f3361069a858285610ec5565b6106a5858585610f4f565b506001949350505050565b6007546001600160a01b0316336001600160a01b0316146106cf575f80fd5b6040516370a0823160e01b815230600482015281905f906001600160a01b038316906370a0823190602401602060405180830381865afa158015610715573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107399190611c90565b90505f81116107845760405162461bcd60e51b81526020600482015260126024820152712737903a37b5b2b739903a379031b632b0b960711b60448201526064015b60405180910390fd5b60075460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303815f875af11580156107d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107f89190611ca7565b50505050565b335f8181526001602090815260408083206001600160a01b03871684529091528120549091906106819082908690610837908790611cd6565b610da2565b6007546001600160a01b0316336001600160a01b03161461085b575f80fd5b6040516370a0823160e01b815230600482015283905f906001600160a01b038316906370a0823190602401602060405180830381865afa1580156108a1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108c59190611c90565b90505f6108dc846108d68488611547565b90611559565b9050808210156109235760405162461bcd60e51b81526020600482015260126024820152712737903a37b5b2b739903a379031b632b0b960711b604482015260640161077b565b60075460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529084169063a9059cbb906044016020604051808303815f875af1158015610973573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109979190611ca7565b50505050505050565b6109a8611564565b606382111580156109ba575060638111155b610a065760405162461bcd60e51b815260206004820152601660248201527f466565732063616e6e6f74206578636565642039392500000000000000000000604482015260640161077b565b600e91909155600f55565b610a19611564565b610a225f6115be565b565b610a2c611564565b5f610a3660025490565b600a819055600b5550565b6007546001600160a01b0316336001600160a01b031614610a60575f80fd5b5f4711610aaf5760405162461bcd60e51b815260206004820152601660248201527f546f6b656e3a206e6f2045544820746f20636c65617200000000000000000000604482015260640161077b565b60405133904780156108fc02915f818181858888f19350505050158015610ad8573d5f803e3d5ffd5b50565b6060600480546105f390611c58565b610af2611564565b6006546001600160a01b0390811690831603610b765760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000606482015260840161077b565b610b80828261161c565b5050565b335f8181526001602090815260408083206001600160a01b038716845290915281205490919083811015610c085760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161077b565b6106a58286868403610da2565b5f33610681818585610f4f565b610c2a611564565b610c3c81670de0b6b3a7640000611ce9565b600c5550565b6007546001600160a01b0316336001600160a01b031614610c61575f80fd5b5f610c6b60025490565b305f908152602081905260408120549192506064849003610c8d575080610cb0565b6064610c998585611ce9565b610ca39190611d00565b905081811115610cb05750805b81811115610d0c5760405162461bcd60e51b8152602060048201526024808201527f5377617020616d6f756e74206578636565647320636f6e74726163742062616c604482015263616e636560e01b606482015260840161077b565b6107f88161166f565b610d1d611564565b6001600160a01b038116610d825760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161077b565b610ad8816115be565b610d93611564565b600d805460ff19166001179055565b6001600160a01b038316610e045760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161077b565b6001600160a01b038216610e655760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161077b565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f1981146107f85781811015610f425760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161077b565b6107f88484848403610da2565b6001600160a01b038316610f755760405162461bcd60e51b815260040161077b90611d1f565b6001600160a01b038216610f9b5760405162461bcd60e51b815260040161077b90611d64565b805f03610fb257610fad83835f61182c565b505050565b6001600160a01b0383165f9081526012602052604081205460ff16158015610ff257506001600160a01b0383165f9081526012602052604090205460ff16155b90506110066005546001600160a01b031690565b6001600160a01b0316846001600160a01b03161415801561103557506005546001600160a01b03848116911614155b801561104957506001600160a01b03831615155b801561106057506001600160a01b03831661dead14155b80156110765750600854600160a01b900460ff16155b1561137c57600d5460ff1661110e576001600160a01b0384165f9081526010602052604090205460ff16806110c257506001600160a01b0383165f9081526010602052604090205460ff165b61110e5760405162461bcd60e51b815260206004820152601660248201527f54726164696e67206973206e6f74206163746976652e00000000000000000000604482015260640161077b565b6001600160a01b0384165f9081526012602052604090205460ff16801561114d57506001600160a01b0383165f9081526011602052604090205460ff16155b1561123857600a548211156111ca5760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527f6d61785472616e73616374696f6e416d6f756e742e0000000000000000000000606482015260840161077b565b600b546001600160a01b0384165f908152602081905260409020546111ef9084611cd6565b11156112335760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161077b565b61137c565b6001600160a01b0383165f9081526012602052604090205460ff16801561127757506001600160a01b0384165f9081526011602052604090205460ff16155b156112f457600a548211156112335760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560448201527f206d61785472616e73616374696f6e416d6f756e742e00000000000000000000606482015260840161077b565b6001600160a01b0383165f9081526011602052604090205460ff1661137c57600b546001600160a01b0384165f908152602081905260409020546113389084611cd6565b111561137c5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161077b565b305f90815260208190526040812054908115801590611399575082155b90508080156113b25750600854600160a01b900460ff16155b80156113d657506001600160a01b0386165f9081526012602052604090205460ff16155b80156113fa57506001600160a01b0386165f9081526010602052604090205460ff16155b801561141e57506001600160a01b0385165f9081526010602052604090205460ff16155b1561144d576008805460ff60a01b1916600160a01b17905561143f84611954565b6008805460ff60a01b191690555b6008545f90600160a01b900460ff16158015611467575083155b6001600160a01b0388165f9081526010602052604090205490915060ff16806114a757506001600160a01b0386165f9081526010602052604090205460ff165b156114af57505f5b5f8115611532576001600160a01b0387165f9081526012602052604090205460ff16156114f7576114f060646108d6600f548961154790919063ffffffff16565b9050611514565b61151160646108d6600e548961154790919063ffffffff16565b90505b80156115255761152588308361182c565b61152f8187611da7565b95505b61153d88888861182c565b5050505050505050565b5f6115528284611ce9565b9392505050565b5f6115528284611d00565b6005546001600160a01b03163314610a225760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161077b565b600580546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0382165f81815260126020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6040805160028082526060820183525f9260208301908036833701905050905030815f815181106116a2576116a2611dba565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561171e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117429190611dce565b8160018151811061175557611755611dba565b60200260200101906001600160a01b031690816001600160a01b0316815250506117a0307f000000000000000000000000000000000000000000000000000000000000000084610da2565b60085460405163791ac94760e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081169263791ac947926117fb9287925f92889291909116904290600401611de9565b5f604051808303815f87803b158015611812575f80fd5b505af1158015611824573d5f803e3d5ffd5b505050505050565b6001600160a01b0383166118525760405162461bcd60e51b815260040161077b90611d1f565b6001600160a01b0382166118785760405162461bcd60e51b815260040161077b90611d64565b6001600160a01b0383165f90815260208190526040902054818110156118ef5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161077b565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36107f8565b305f908152602081905260408120549081810361197057505050565b600f54600e546119809190611cd6565b5f036119e9575f821180156119965750600c5482105b156119a2575080611a93565b5f6119bd60646108d6600f548761154790919063ffffffff16565b90506119c98185611da7565b9350600c548411156119df57600c5491506119e3565b8391505b50611a93565b5f82118015611a045750600c54611a01906005611559565b82105b15611a0e57505050565b5f82118015611a295750600c54611a26906005611559565b82115b8015611a365750600c5482105b15611a5057600c54611a49906005611559565b9050611a93565b5f611a6b60646108d6600f548761154790919063ffffffff16565b9050611a778185611da7565b9350600c54841115611a8d57600c549150611a91565b8391505b505b610fad8161166f565b5f602080835283518060208501525f5b81811015611ac857858101830151858201604001528201611aac565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ad8575f80fd5b5f8060408385031215611b0d575f80fd5b8235611b1881611ae8565b946020939093013593505050565b5f805f60608486031215611b38575f80fd5b8335611b4381611ae8565b92506020840135611b5381611ae8565b929592945050506040919091013590565b5f60208284031215611b74575f80fd5b813561155281611ae8565b5f805f60608486031215611b91575f80fd5b8335611b9c81611ae8565b95602085013595506040909401359392505050565b5f8060408385031215611bc2575f80fd5b50508035926020909101359150565b8015158114610ad8575f80fd5b5f8060408385031215611bef575f80fd5b8235611bfa81611ae8565b91506020830135611c0a81611bd1565b809150509250929050565b5f60208284031215611c25575f80fd5b5035919050565b5f8060408385031215611c3d575f80fd5b8235611c4881611ae8565b91506020830135611c0a81611ae8565b600181811c90821680611c6c57607f821691505b602082108103611c8a57634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215611ca0575f80fd5b5051919050565b5f60208284031215611cb7575f80fd5b815161155281611bd1565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561068757610687611cc2565b808202811582820484141761068757610687611cc2565b5f82611d1a57634e487b7160e01b5f52601260045260245ffd5b500490565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b8181038181111561068757610687611cc2565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611dde575f80fd5b815161155281611ae8565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611e395784516001600160a01b031683529383019391830191600101611e14565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212208a167ce4a65b3ef638170c592de2d178e72564a7c3e06e91678657d47b726d9764736f6c63430008180033000000000000000000000000ae8418a268690b53fbf0bd6338124e51b2e08eae

Deployed Bytecode

0x6080604052600436106101de575f3560e01c80638da5cb5b116100fd578063cf9522fd11610092578063f2fde38b11610062578063f2fde38b14610583578063f8b45b05146105a2578063fb201b1d146105b7578063ffb54a99146105cb575f80fd5b8063cf9522fd14610500578063dd62ed3e14610515578063dd85465214610559578063e2f456051461056e575f80fd5b8063a9059cbb116100cd578063a9059cbb1461048e578063afa4f3b2146104ad578063b70143c9146104cc578063c8c8ebe4146104eb575f80fd5b80638da5cb5b1461041f57806395d89b411461043c5780639a7a23d614610450578063a457c2d71461046f575f80fd5b80633a1351751161017357806370a082311161014357806370a08231146103af578063715018a6146103e3578063751039fc146103f757806389291a8f1461040b575f80fd5b80633a135175146102ef5780634fbee1931461030e578063583e056814610345578063667f652614610390575f80fd5b8063311028af116101ae578063311028af1461027f578063313ce56714610294578063346cc7be146102af57806339509351146102d0575f80fd5b806306fdde03146101e9578063095ea7b31461021357806318160ddd1461024257806323b872dd14610260575f80fd5b366101e557005b5f80fd5b3480156101f4575f80fd5b506101fd6105e4565b60405161020a9190611a9c565b60405180910390f35b34801561021e575f80fd5b5061023261022d366004611afc565b610674565b604051901515815260200161020a565b34801561024d575f80fd5b506002545b60405190815260200161020a565b34801561026b575f80fd5b5061023261027a366004611b26565b61068d565b34801561028a575f80fd5b5061025260095481565b34801561029f575f80fd5b506040516012815260200161020a565b3480156102ba575f80fd5b506102ce6102c9366004611b64565b6106b0565b005b3480156102db575f80fd5b506102326102ea366004611afc565b6107fe565b3480156102fa575f80fd5b506102ce610309366004611b7f565b61083c565b348015610319575f80fd5b50610232610328366004611b64565b6001600160a01b03165f9081526010602052604090205460ff1690565b348015610350575f80fd5b506103787f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b03909116815260200161020a565b34801561039b575f80fd5b506102ce6103aa366004611bb1565b6109a0565b3480156103ba575f80fd5b506102526103c9366004611b64565b6001600160a01b03165f9081526020819052604090205490565b3480156103ee575f80fd5b506102ce610a11565b348015610402575f80fd5b506102ce610a24565b348015610416575f80fd5b506102ce610a41565b34801561042a575f80fd5b506005546001600160a01b0316610378565b348015610447575f80fd5b506101fd610adb565b34801561045b575f80fd5b506102ce61046a366004611bde565b610aea565b34801561047a575f80fd5b50610232610489366004611afc565b610b84565b348015610499575f80fd5b506102326104a8366004611afc565b610c15565b3480156104b8575f80fd5b506102ce6104c7366004611c15565b610c22565b3480156104d7575f80fd5b506102ce6104e6366004611c15565b610c42565b3480156104f6575f80fd5b50610252600a5481565b34801561050b575f80fd5b50610252600f5481565b348015610520575f80fd5b5061025261052f366004611c2c565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b348015610564575f80fd5b50610252600e5481565b348015610579575f80fd5b50610252600c5481565b34801561058e575f80fd5b506102ce61059d366004611b64565b610d15565b3480156105ad575f80fd5b50610252600b5481565b3480156105c2575f80fd5b506102ce610d8b565b3480156105d6575f80fd5b50600d546102329060ff1681565b6060600380546105f390611c58565b80601f016020809104026020016040519081016040528092919081815260200182805461061f90611c58565b801561066a5780601f106106415761010080835404028352916020019161066a565b820191905f5260205f20905b81548152906001019060200180831161064d57829003601f168201915b5050505050905090565b5f33610681818585610da2565b60019150505b92915050565b5f3361069a858285610ec5565b6106a5858585610f4f565b506001949350505050565b6007546001600160a01b0316336001600160a01b0316146106cf575f80fd5b6040516370a0823160e01b815230600482015281905f906001600160a01b038316906370a0823190602401602060405180830381865afa158015610715573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107399190611c90565b90505f81116107845760405162461bcd60e51b81526020600482015260126024820152712737903a37b5b2b739903a379031b632b0b960711b60448201526064015b60405180910390fd5b60075460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303815f875af11580156107d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107f89190611ca7565b50505050565b335f8181526001602090815260408083206001600160a01b03871684529091528120549091906106819082908690610837908790611cd6565b610da2565b6007546001600160a01b0316336001600160a01b03161461085b575f80fd5b6040516370a0823160e01b815230600482015283905f906001600160a01b038316906370a0823190602401602060405180830381865afa1580156108a1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108c59190611c90565b90505f6108dc846108d68488611547565b90611559565b9050808210156109235760405162461bcd60e51b81526020600482015260126024820152712737903a37b5b2b739903a379031b632b0b960711b604482015260640161077b565b60075460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529084169063a9059cbb906044016020604051808303815f875af1158015610973573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109979190611ca7565b50505050505050565b6109a8611564565b606382111580156109ba575060638111155b610a065760405162461bcd60e51b815260206004820152601660248201527f466565732063616e6e6f74206578636565642039392500000000000000000000604482015260640161077b565b600e91909155600f55565b610a19611564565b610a225f6115be565b565b610a2c611564565b5f610a3660025490565b600a819055600b5550565b6007546001600160a01b0316336001600160a01b031614610a60575f80fd5b5f4711610aaf5760405162461bcd60e51b815260206004820152601660248201527f546f6b656e3a206e6f2045544820746f20636c65617200000000000000000000604482015260640161077b565b60405133904780156108fc02915f818181858888f19350505050158015610ad8573d5f803e3d5ffd5b50565b6060600480546105f390611c58565b610af2611564565b6006546001600160a01b0390811690831603610b765760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000606482015260840161077b565b610b80828261161c565b5050565b335f8181526001602090815260408083206001600160a01b038716845290915281205490919083811015610c085760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161077b565b6106a58286868403610da2565b5f33610681818585610f4f565b610c2a611564565b610c3c81670de0b6b3a7640000611ce9565b600c5550565b6007546001600160a01b0316336001600160a01b031614610c61575f80fd5b5f610c6b60025490565b305f908152602081905260408120549192506064849003610c8d575080610cb0565b6064610c998585611ce9565b610ca39190611d00565b905081811115610cb05750805b81811115610d0c5760405162461bcd60e51b8152602060048201526024808201527f5377617020616d6f756e74206578636565647320636f6e74726163742062616c604482015263616e636560e01b606482015260840161077b565b6107f88161166f565b610d1d611564565b6001600160a01b038116610d825760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161077b565b610ad8816115be565b610d93611564565b600d805460ff19166001179055565b6001600160a01b038316610e045760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161077b565b6001600160a01b038216610e655760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161077b565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f1981146107f85781811015610f425760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161077b565b6107f88484848403610da2565b6001600160a01b038316610f755760405162461bcd60e51b815260040161077b90611d1f565b6001600160a01b038216610f9b5760405162461bcd60e51b815260040161077b90611d64565b805f03610fb257610fad83835f61182c565b505050565b6001600160a01b0383165f9081526012602052604081205460ff16158015610ff257506001600160a01b0383165f9081526012602052604090205460ff16155b90506110066005546001600160a01b031690565b6001600160a01b0316846001600160a01b03161415801561103557506005546001600160a01b03848116911614155b801561104957506001600160a01b03831615155b801561106057506001600160a01b03831661dead14155b80156110765750600854600160a01b900460ff16155b1561137c57600d5460ff1661110e576001600160a01b0384165f9081526010602052604090205460ff16806110c257506001600160a01b0383165f9081526010602052604090205460ff165b61110e5760405162461bcd60e51b815260206004820152601660248201527f54726164696e67206973206e6f74206163746976652e00000000000000000000604482015260640161077b565b6001600160a01b0384165f9081526012602052604090205460ff16801561114d57506001600160a01b0383165f9081526011602052604090205460ff16155b1561123857600a548211156111ca5760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527f6d61785472616e73616374696f6e416d6f756e742e0000000000000000000000606482015260840161077b565b600b546001600160a01b0384165f908152602081905260409020546111ef9084611cd6565b11156112335760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161077b565b61137c565b6001600160a01b0383165f9081526012602052604090205460ff16801561127757506001600160a01b0384165f9081526011602052604090205460ff16155b156112f457600a548211156112335760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560448201527f206d61785472616e73616374696f6e416d6f756e742e00000000000000000000606482015260840161077b565b6001600160a01b0383165f9081526011602052604090205460ff1661137c57600b546001600160a01b0384165f908152602081905260409020546113389084611cd6565b111561137c5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161077b565b305f90815260208190526040812054908115801590611399575082155b90508080156113b25750600854600160a01b900460ff16155b80156113d657506001600160a01b0386165f9081526012602052604090205460ff16155b80156113fa57506001600160a01b0386165f9081526010602052604090205460ff16155b801561141e57506001600160a01b0385165f9081526010602052604090205460ff16155b1561144d576008805460ff60a01b1916600160a01b17905561143f84611954565b6008805460ff60a01b191690555b6008545f90600160a01b900460ff16158015611467575083155b6001600160a01b0388165f9081526010602052604090205490915060ff16806114a757506001600160a01b0386165f9081526010602052604090205460ff165b156114af57505f5b5f8115611532576001600160a01b0387165f9081526012602052604090205460ff16156114f7576114f060646108d6600f548961154790919063ffffffff16565b9050611514565b61151160646108d6600e548961154790919063ffffffff16565b90505b80156115255761152588308361182c565b61152f8187611da7565b95505b61153d88888861182c565b5050505050505050565b5f6115528284611ce9565b9392505050565b5f6115528284611d00565b6005546001600160a01b03163314610a225760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161077b565b600580546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0382165f81815260126020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6040805160028082526060820183525f9260208301908036833701905050905030815f815181106116a2576116a2611dba565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561171e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117429190611dce565b8160018151811061175557611755611dba565b60200260200101906001600160a01b031690816001600160a01b0316815250506117a0307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84610da2565b60085460405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81169263791ac947926117fb9287925f92889291909116904290600401611de9565b5f604051808303815f87803b158015611812575f80fd5b505af1158015611824573d5f803e3d5ffd5b505050505050565b6001600160a01b0383166118525760405162461bcd60e51b815260040161077b90611d1f565b6001600160a01b0382166118785760405162461bcd60e51b815260040161077b90611d64565b6001600160a01b0383165f90815260208190526040902054818110156118ef5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161077b565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36107f8565b305f908152602081905260408120549081810361197057505050565b600f54600e546119809190611cd6565b5f036119e9575f821180156119965750600c5482105b156119a2575080611a93565b5f6119bd60646108d6600f548761154790919063ffffffff16565b90506119c98185611da7565b9350600c548411156119df57600c5491506119e3565b8391505b50611a93565b5f82118015611a045750600c54611a01906005611559565b82105b15611a0e57505050565b5f82118015611a295750600c54611a26906005611559565b82115b8015611a365750600c5482105b15611a5057600c54611a49906005611559565b9050611a93565b5f611a6b60646108d6600f548761154790919063ffffffff16565b9050611a778185611da7565b9350600c54841115611a8d57600c549150611a91565b8391505b505b610fad8161166f565b5f602080835283518060208501525f5b81811015611ac857858101830151858201604001528201611aac565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ad8575f80fd5b5f8060408385031215611b0d575f80fd5b8235611b1881611ae8565b946020939093013593505050565b5f805f60608486031215611b38575f80fd5b8335611b4381611ae8565b92506020840135611b5381611ae8565b929592945050506040919091013590565b5f60208284031215611b74575f80fd5b813561155281611ae8565b5f805f60608486031215611b91575f80fd5b8335611b9c81611ae8565b95602085013595506040909401359392505050565b5f8060408385031215611bc2575f80fd5b50508035926020909101359150565b8015158114610ad8575f80fd5b5f8060408385031215611bef575f80fd5b8235611bfa81611ae8565b91506020830135611c0a81611bd1565b809150509250929050565b5f60208284031215611c25575f80fd5b5035919050565b5f8060408385031215611c3d575f80fd5b8235611c4881611ae8565b91506020830135611c0a81611ae8565b600181811c90821680611c6c57607f821691505b602082108103611c8a57634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215611ca0575f80fd5b5051919050565b5f60208284031215611cb7575f80fd5b815161155281611bd1565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561068757610687611cc2565b808202811582820484141761068757610687611cc2565b5f82611d1a57634e487b7160e01b5f52601260045260245ffd5b500490565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b8181038181111561068757610687611cc2565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611dde575f80fd5b815161155281611ae8565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611e395784516001600160a01b031683529383019391830191600101611e14565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212208a167ce4a65b3ef638170c592de2d178e72564a7c3e06e91678657d47b726d9764736f6c63430008180033

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

000000000000000000000000ae8418a268690b53fbf0bd6338124e51b2e08eae

-----Decoded View---------------
Arg [0] : wallet (address): 0xae8418A268690b53fBf0bD6338124e51b2E08EaE

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


Deployed Bytecode Sourcemap

14964:9917:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9988:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10920:201;;;;;;;;;;-1:-1:-1;10920:201:0;;;;;:::i;:::-;;:::i;:::-;;;1211:14:1;;1204:22;1186:41;;1174:2;1159:18;10920:201:0;1046:187:1;10309:108:0;;;;;;;;;;-1:-1:-1;10397:12:0;;10309:108;;;1384:25:1;;;1372:2;1357:18;10309:108:0;1238:177:1;11129:295:0;;;;;;;;;;-1:-1:-1;11129:295:0;;;;;:::i;:::-;;:::i;15422:64::-;;;;;;;;;;;;;;;;10208:93;;;;;;;;;;-1:-1:-1;10208:93:0;;10291:2;2023:36:1;;2011:2;1996:18;10208:93:0;1881:184:1;21609:347:0;;;;;;;;;;-1:-1:-1;21609:347:0;;;;;:::i;:::-;;:::i;:::-;;11432:238;;;;;;;;;;-1:-1:-1;11432:238:0;;;;;:::i;:::-;;:::i;21964:480::-;;;;;;;;;;-1:-1:-1;21964:480:0;;;;;:::i;:::-;;:::i;18110:126::-;;;;;;;;;;-1:-1:-1;18110:126:0;;;;;:::i;:::-;-1:-1:-1;;;;;18200:28:0;18176:4;18200:28;;;:19;:28;;;;;;;;;18110:126;15053:52;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2899:55:1;;;2881:74;;2869:2;2854:18;15053:52:0;2710:251:1;22452:211:0;;;;;;;;;;-1:-1:-1;22452:211:0;;;;;:::i;:::-;;:::i;10425:127::-;;;;;;;;;;-1:-1:-1;10425:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;10526:18:0;10499:7;10526:18;;;;;;;;;;;;10425:127;9064:103;;;;;;;;;;;;;:::i;21174:194::-;;;;;;;;;;;;;:::i;21376:225::-;;;;;;;;;;;;;:::i;8829:87::-;;;;;;;;;;-1:-1:-1;8902:6:0;;-1:-1:-1;;;;;8902:6:0;8829:87;;10096:104;;;;;;;;;;;;;:::i;17666:242::-;;;;;;;;;;-1:-1:-1;17666:242:0;;;;;:::i;:::-;;:::i;11678:436::-;;;;;;;;;;-1:-1:-1;11678:436:0;;;;;:::i;:::-;;:::i;10560:193::-;;;;;;;;;;-1:-1:-1;10560:193:0;;;;;:::i;:::-;;:::i;22671:127::-;;;;;;;;;;-1:-1:-1;22671:127:0;;;;;:::i;:::-;;:::i;22806:667::-;;;;;;;;;;-1:-1:-1;22806:667:0;;;;;:::i;:::-;;:::i;15493:64::-;;;;;;;;;;;;;;;;15768:27;;;;;;;;;;;;;;;;10761:151;;;;;;;;;;-1:-1:-1;10761:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;10877:18:0;;;10850:7;10877:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10761:151;15735:26;;;;;;;;;;;;;;;;15624:62;;;;;;;;;;;;;;;;9175:201;;;;;;;;;;-1:-1:-1;9175:201:0;;;;;:::i;:::-;;:::i;15564:53::-;;;;;;;;;;;;;;;;17255:79;;;;;;;;;;;;;:::i;15695:31::-;;;;;;;;;;-1:-1:-1;15695:31:0;;;;;;;;9988:100;10042:13;10075:5;10068:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9988:100;:::o;10920:201::-;11003:4;553:10;11059:32;553:10;11075:7;11084:6;11059:8;:32::i;:::-;11109:4;11102:11;;;10920:201;;;;;:::o;11129:295::-;11260:4;553:10;11318:38;11334:4;553:10;11349:6;11318:15;:38::i;:::-;11367:27;11377:4;11383:2;11387:6;11367:9;:27::i;:::-;-1:-1:-1;11412:4:0;;11129:295;-1:-1:-1;;;;11129:295:0:o;21609:347::-;21701:14;;-1:-1:-1;;;;;21701:14:0;553:10;-1:-1:-1;;;;;21685:30:0;;21677:39;;;;;;21799:38;;-1:-1:-1;;;21799:38:0;;21831:4;21799:38;;;2881:74:1;21757:12:0;;21727:20;;-1:-1:-1;;;;;21799:23:0;;;;;2854:18:1;;21799:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21781:56;;21866:1;21856:7;:11;21848:42;;;;-1:-1:-1;;;21848:42:0;;5314:2:1;21848:42:0;;;5296:21:1;5353:2;5333:18;;;5326:30;-1:-1:-1;;;5372:18:1;;;5365:48;5430:18;;21848:42:0;;;;;;;;;21924:14;;21901:47;;-1:-1:-1;;;21901:47:0;;-1:-1:-1;;;;;21924:14:0;;;21901:47;;;5633:74:1;5723:18;;;5716:34;;;21901:22:0;;;;;;5606:18:1;;21901:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;21666:290;;21609:347;:::o;11432:238::-;553:10;11520:4;10877:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;10877:27:0;;;;;;;;;;11520:4;;553:10;11576:64;;553:10;;10877:27;;11601:38;;11629:10;;11601:38;:::i;:::-;11576:8;:64::i;21964:480::-;22097:14;;-1:-1:-1;;;;;22097:14:0;553:10;-1:-1:-1;;;;;22081:30:0;;22073:39;;;;;;22195:38;;-1:-1:-1;;;22195:38:0;;22227:4;22195:38;;;2881:74:1;22153:12:0;;22123:20;;-1:-1:-1;;;;;22195:23:0;;;;;2854:18:1;;22195:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22177:56;-1:-1:-1;22244:20:0;22267:41;22296:11;22267:24;22177:56;22279:11;22267;:24::i;:::-;:28;;:41::i;:::-;22244:64;;22338:12;22327:7;:23;;22319:54;;;;-1:-1:-1;;;22319:54:0;;5314:2:1;22319:54:0;;;5296:21:1;5353:2;5333:18;;;5326:30;-1:-1:-1;;;5372:18:1;;;5365:48;5430:18;;22319:54:0;5112:342:1;22319:54:0;22407:14;;22384:52;;-1:-1:-1;;;22384:52:0;;-1:-1:-1;;;;;22407:14:0;;;22384:52;;;5633:74:1;5723:18;;;5716:34;;;22384:22:0;;;;;;5606:18:1;;22384:52:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;22062:382;;;21964:480;;;:::o;22452:211::-;8788:13;:11;:13::i;:::-;22552:2:::1;22541:7;:13;;:31;;;;;22570:2;22558:8;:14;;22541:31;22533:66;;;::::0;-1:-1:-1;;;22533:66:0;;6475:2:1;22533:66:0::1;::::0;::::1;6457:21:1::0;6514:2;6494:18;;;6487:30;6553:24;6533:18;;;6526:52;6595:18;;22533:66:0::1;6273:346:1::0;22533:66:0::1;22610:6;:16:::0;;;;22637:7:::1;:18:::0;22452:211::o;9064:103::-;8788:13;:11;:13::i;:::-;9129:30:::1;9156:1;9129:18;:30::i;:::-;9064:103::o:0;21174:194::-;8788:13;:11;:13::i;:::-;21228:25:::1;21256:13;10397:12:::0;;;10309:108;21256:13:::1;21280:20;:40:::0;;;21331:9:::1;:29:::0;-1:-1:-1;21174:194:0:o;21376:225::-;21445:14;;-1:-1:-1;;;;;21445:14:0;553:10;-1:-1:-1;;;;;21429:30:0;;21421:39;;;;;;21503:1;21479:21;:25;21471:60;;;;-1:-1:-1;;;21471:60:0;;6826:2:1;21471:60:0;;;6808:21:1;6865:2;6845:18;;;6838:30;6904:24;6884:18;;;6877:52;6946:18;;21471:60:0;6624:346:1;21471:60:0;21542:51;;21550:10;;21571:21;21542:51;;;;;;;;;21571:21;21550:10;21542:51;;;;;;;;;;;;;;;;;;;;;21376:225::o;10096:104::-;10152:13;10185:7;10178:14;;;;;:::i;17666:242::-;8788:13;:11;:13::i;:::-;17773::::1;::::0;-1:-1:-1;;;;;17773:13:0;;::::1;17765:21:::0;;::::1;::::0;17757:91:::1;;;::::0;-1:-1:-1;;;17757:91:0;;7177:2:1;17757:91:0::1;::::0;::::1;7159:21:1::0;7216:2;7196:18;;;7189:30;7255:34;7235:18;;;7228:62;7326:27;7306:18;;;7299:55;7371:19;;17757:91:0::1;6975:421:1::0;17757:91:0::1;17859:41;17888:4;17894:5;17859:28;:41::i;:::-;17666:242:::0;;:::o;11678:436::-;553:10;11771:4;10877:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;10877:27:0;;;;;;;;;;11771:4;;553:10;11918:15;11898:16;:35;;11890:85;;;;-1:-1:-1;;;11890:85:0;;7603:2:1;11890:85:0;;;7585:21:1;7642:2;7622:18;;;7615:30;7681:34;7661:18;;;7654:62;-1:-1:-1;;;7732:18:1;;;7725:35;7777:19;;11890:85:0;7401:401:1;11890:85:0;12011:60;12020:5;12027:7;12055:15;12036:16;:34;12011:8;:60::i;10560:193::-;10639:4;553:10;10695:28;553:10;10712:2;10716:6;10695:9;:28::i;22671:127::-;8788:13;:11;:13::i;:::-;22770:20:::1;:7:::0;22781:8:::1;22770:20;:::i;:::-;22749:18;:41:::0;-1:-1:-1;22671:127:0:o;22806:667::-;22887:14;;-1:-1:-1;;;;;22887:14:0;553:10;-1:-1:-1;;;;;22871:30:0;;22863:39;;;;;;22913:25;22941:13;10397:12;;;10309:108;22941:13;23009:4;22965:23;10526:18;;;;;;;;;;;22913:41;;-1:-1:-1;23074:3:0;23063:14;;;23059:273;;-1:-1:-1;23109:15:0;23059:273;;;23202:3;23172:27;23192:7;23172:17;:27;:::i;:::-;:33;;;;:::i;:::-;23157:48;;23239:15;23224:12;:30;23220:101;;;-1:-1:-1;23290:15:0;23220:101;23368:15;23352:12;:31;;23344:80;;;;-1:-1:-1;;;23344:80:0;;8404:2:1;23344:80:0;;;8386:21:1;8443:2;8423:18;;;8416:30;8482:34;8462:18;;;8455:62;-1:-1:-1;;;8533:18:1;;;8526:34;8577:19;;23344:80:0;8202:400:1;23344:80:0;23435:30;23452:12;23435:16;:30::i;9175:201::-;8788:13;:11;:13::i;:::-;-1:-1:-1;;;;;9264:22:0;::::1;9256:73;;;::::0;-1:-1:-1;;;9256:73:0;;8809:2:1;9256:73:0::1;::::0;::::1;8791:21:1::0;8848:2;8828:18;;;8821:30;8887:34;8867:18;;;8860:62;-1:-1:-1;;;8938:18:1;;;8931:36;8984:19;;9256:73:0::1;8607:402:1::0;9256:73:0::1;9340:28;9359:8;9340:18;:28::i;17255:79::-:0;8788:13;:11;:13::i;:::-;17308:11:::1;:18:::0;;-1:-1:-1;;17308:18:0::1;17322:4;17308:18;::::0;;17255:79::o;13851:380::-;-1:-1:-1;;;;;13987:19:0;;13979:68;;;;-1:-1:-1;;;13979:68:0;;9216:2:1;13979:68:0;;;9198:21:1;9255:2;9235:18;;;9228:30;9294:34;9274:18;;;9267:62;-1:-1:-1;;;9345:18:1;;;9338:34;9389:19;;13979:68:0;9014:400:1;13979:68:0;-1:-1:-1;;;;;14066:21:0;;14058:68;;;;-1:-1:-1;;;14058:68:0;;9621:2:1;14058:68:0;;;9603:21:1;9660:2;9640:18;;;9633:30;9699:34;9679:18;;;9672:62;-1:-1:-1;;;9750:18:1;;;9743:32;9792:19;;14058:68:0;9419:398:1;14058:68:0;-1:-1:-1;;;;;14139:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;14191:32;;1384:25:1;;;14191:32:0;;1357:18:1;14191:32:0;;;;;;;13851:380;;;:::o;14239:453::-;-1:-1:-1;;;;;10877:18:0;;;14374:24;10877:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;-1:-1:-1;;14441:37:0;;14437:248;;14523:6;14503:16;:26;;14495:68;;;;-1:-1:-1;;;14495:68:0;;10024:2:1;14495:68:0;;;10006:21:1;10063:2;10043:18;;;10036:30;10102:31;10082:18;;;10075:59;10151:18;;14495:68:0;9822:353:1;14495:68:0;14607:51;14616:5;14623:7;14651:6;14632:16;:25;14607:8;:51::i;18244:2433::-;-1:-1:-1;;;;;18344:18:0;;18336:68;;;;-1:-1:-1;;;18336:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;18423:16:0;;18415:64;;;;-1:-1:-1;;;18415:64:0;;;;;;;:::i;:::-;18496:6;18506:1;18496:11;18492:93;;18524:28;18540:4;18546:2;18550:1;18524:15;:28::i;:::-;18244:2433;;;:::o;18492:93::-;-1:-1:-1;;;;;18624:31:0;;18605:15;18624:31;;;:25;:31;;;;;;;;18623:32;:66;;;;-1:-1:-1;;;;;;18660:29:0;;;;;;:25;:29;;;;;;;;18659:30;18623:66;18605:84;;18714:7;8902:6;;-1:-1:-1;;;;;8902:6:0;;8829:87;18714:7;-1:-1:-1;;;;;18706:15:0;:4;-1:-1:-1;;;;;18706:15:0;;;:32;;;;-1:-1:-1;8902:6:0;;-1:-1:-1;;;;;18725:13:0;;;8902:6;;18725:13;;18706:32;:52;;;;-1:-1:-1;;;;;;18742:16:0;;;;18706:52;:77;;;;-1:-1:-1;;;;;;18762:21:0;;18776:6;18762:21;;18706:77;:90;;;;-1:-1:-1;18788:8:0;;-1:-1:-1;;;18788:8:0;;;;18787:9;18706:90;18702:1000;;;18820:11;;;;18815:140;;-1:-1:-1;;;;;18860:25:0;;;;;;:19;:25;;;;;;;;;:52;;-1:-1:-1;;;;;;18889:23:0;;;;;;:19;:23;;;;;;;;18860:52;18852:87;;;;-1:-1:-1;;;18852:87:0;;11192:2:1;18852:87:0;;;11174:21:1;11231:2;11211:18;;;11204:30;11270:24;11250:18;;;11243:52;11312:18;;18852:87:0;10990:346:1;18852:87:0;-1:-1:-1;;;;;18975:31:0;;;;;;:25;:31;;;;;;;;:71;;;;-1:-1:-1;;;;;;19011:35:0;;;;;;:31;:35;;;;;;;;19010:36;18975:71;18971:706;;;19085:20;;19075:6;:30;;19067:96;;;;-1:-1:-1;;;19067:96:0;;11543:2:1;19067:96:0;;;11525:21:1;11582:2;11562:18;;;11555:30;11621:34;11601:18;;;11594:62;11692:23;11672:18;;;11665:51;11733:19;;19067:96:0;11341:417:1;19067:96:0;19216:9;;-1:-1:-1;;;;;10526:18:0;;10499:7;10526:18;;;;;;;;;;;19190:22;;:6;:22;:::i;:::-;:35;;19182:67;;;;-1:-1:-1;;;19182:67:0;;11965:2:1;19182:67:0;;;11947:21:1;12004:2;11984:18;;;11977:30;-1:-1:-1;;;12023:18:1;;;12016:49;12082:18;;19182:67:0;11763:343:1;19182:67:0;18971:706;;;-1:-1:-1;;;;;19290:29:0;;;;;;:25;:29;;;;;;;;:71;;;;-1:-1:-1;;;;;;19324:37:0;;;;;;:31;:37;;;;;;;;19323:38;19290:71;19286:391;;;19400:20;;19390:6;:30;;19382:97;;;;-1:-1:-1;;;19382:97:0;;12313:2:1;19382:97:0;;;12295:21:1;12352:2;12332:18;;;12325:30;12391:34;12371:18;;;12364:62;12462:24;12442:18;;;12435:52;12504:19;;19382:97:0;12111:418:1;19286:391:0;-1:-1:-1;;;;;19538:35:0;;;;;;:31;:35;;;;;;;;19533:144;;19628:9;;-1:-1:-1;;;;;10526:18:0;;10499:7;10526:18;;;;;;;;;;;19602:22;;:6;:22;:::i;:::-;:35;;19594:67;;;;-1:-1:-1;;;19594:67:0;;11965:2:1;19594:67:0;;;11947:21:1;12004:2;11984:18;;;11977:30;-1:-1:-1;;;12023:18:1;;;12016:49;12082:18;;19594:67:0;11763:343:1;19594:67:0;19763:4;19714:28;10526:18;;;;;;;;;;;;19797:24;;;;;:39;;;19826:10;19825:11;19797:39;19782:54;;19853:7;:20;;;;-1:-1:-1;19865:8:0;;-1:-1:-1;;;19865:8:0;;;;19864:9;19853:20;:56;;;;-1:-1:-1;;;;;;19878:31:0;;;;;;:25;:31;;;;;;;;19877:32;19853:56;:86;;;;-1:-1:-1;;;;;;19914:25:0;;;;;;:19;:25;;;;;;;;19913:26;19853:86;:114;;;;-1:-1:-1;;;;;;19944:23:0;;;;;;:19;:23;;;;;;;;19943:24;19853:114;19849:224;;;19984:8;:15;;-1:-1:-1;;;;19984:15:0;-1:-1:-1;;;19984:15:0;;;20014:16;20023:6;20014:8;:16::i;:::-;20045:8;:16;;-1:-1:-1;;;;20045:16:0;;;19849:224;20101:8;;20085:12;;-1:-1:-1;;;20101:8:0;;;;20100:9;:24;;;;;20114:10;20113:11;20100:24;-1:-1:-1;;;;;20141:25:0;;;;;;:19;:25;;;;;;20085:39;;-1:-1:-1;20141:25:0;;;:52;;-1:-1:-1;;;;;;20170:23:0;;;;;;:19;:23;;;;;;;;20141:52;20137:100;;;-1:-1:-1;20220:5:0;20137:100;20249:12;20282:7;20278:348;;;-1:-1:-1;;;;;20310:29:0;;;;;;:25;:29;;;;;;;;20306:193;;;20367:28;20391:3;20367:19;20378:7;;20367:6;:10;;:19;;;;:::i;:28::-;20360:35;;20306:193;;;20456:27;20479:3;20456:18;20467:6;;20456;:10;;:18;;;;:::i;:27::-;20449:34;;20306:193;20515:8;;20511:83;;20540:42;20556:4;20570;20577;20540:15;:42::i;:::-;20604:14;20614:4;20604:14;;:::i;:::-;;;20278:348;20636:33;20652:4;20658:2;20662:6;20636:15;:33::i;:::-;18323:2354;;;;;18244:2433;;;:::o;6625:98::-;6683:7;6710:5;6714:1;6710;:5;:::i;:::-;6703:12;6625:98;-1:-1:-1;;;6625:98:0:o;6731:::-;6789:7;6816:5;6820:1;6816;:5;:::i;8924:132::-;8902:6;;-1:-1:-1;;;;;8902:6:0;553:10;8988:23;8980:68;;;;-1:-1:-1;;;8980:68:0;;12869:2:1;8980:68:0;;;12851:21:1;;;12888:18;;;12881:30;12947:34;12927:18;;;12920:62;12999:18;;8980:68:0;12667:356:1;9384:191:0;9477:6;;;-1:-1:-1;;;;;9494:17:0;;;-1:-1:-1;;9494:17:0;;;;;;;9527:40;;9477:6;;;9494:17;9477:6;;9527:40;;9458:16;;9527:40;9447:128;9384:191;:::o;17916:186::-;-1:-1:-1;;;;;17999:31:0;;;;;;:25;:31;;;;;;:39;;-1:-1:-1;;17999:39:0;;;;;;;;;;18054:40;;17999:39;;:31;18054:40;;;17916:186;;:::o;20685:482::-;20777:16;;;20791:1;20777:16;;;;;;;;20753:21;;20777:16;;;;;;;;;;-1:-1:-1;20777:16:0;20753:40;;20822:4;20804;20809:1;20804:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;20804:23:0;;;-1:-1:-1;;;;;20804:23:0;;;;;20848:16;-1:-1:-1;;;;;20848:21:0;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20838:4;20843:1;20838:7;;;;;;;;:::i;:::-;;;;;;:33;-1:-1:-1;;;;;20838:33:0;;;-1:-1:-1;;;;;20838:33:0;;;;;20884:63;20901:4;20916:16;20935:11;20884:8;:63::i;:::-;21103:15;;20960:199;;-1:-1:-1;;;20960:199:0;;-1:-1:-1;;;;;20960:16:0;:67;;;;;:199;;21042:11;;21068:1;;21084:4;;21103:15;;;;;21133;;20960:199;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20740:427;20685:482;:::o;12122:675::-;-1:-1:-1;;;;;12253:18:0;;12245:68;;;;-1:-1:-1;;;12245:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12332:16:0;;12324:64;;;;-1:-1:-1;;;12324:64:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12474:15:0;;12452:19;12474:15;;;;;;;;;;;12508:21;;;;12500:72;;;;-1:-1:-1;;;12500:72:0;;14781:2:1;12500:72:0;;;14763:21:1;14820:2;14800:18;;;14793:30;14859:34;14839:18;;;14832:62;-1:-1:-1;;;14910:18:1;;;14903:36;14956:19;;12500:72:0;14579:402:1;12500:72:0;-1:-1:-1;;;;;12608:15:0;;;:9;:15;;;;;;;;;;;12626:20;;;12608:38;;12661:13;;;;;;;;;;:23;;;;;;12713:26;;1384:25:1;;;12661:13:0;;12713:26;;1357:18:1;12713:26:0;;;;;;;12752:37;18244:2433;23481:1397;23578:4;23534:23;10526:18;;;;;;;;;;;;23633:20;;;23629:59;;23670:7;;23481:1397;:::o;23629:59::-;23712:7;;23705:6;;:14;;;;:::i;:::-;23724:1;23704:21;23700:1130;;23761:1;23743:15;:19;:59;;;;;23784:18;;23766:15;:36;23743:59;23740:443;;;-1:-1:-1;23834:15:0;23700:1130;;23740:443;23891:21;23915:28;23939:3;23915:19;23926:7;;23915:6;:10;;:19;;;;:::i;:28::-;23891:52;-1:-1:-1;23958:23:0;23891:52;23958:23;;:::i;:::-;;;24009:18;;24000:6;:27;23996:176;;;24063:18;;24048:33;;23996:176;;;24150:6;24135:21;;23996:176;23876:307;23700:1130;;;24237:1;24219:15;:19;:66;;;;-1:-1:-1;24260:18:0;;:25;;24283:1;24260:22;:25::i;:::-;24242:15;:43;24219:66;24216:607;;;24302:7;;23481:1397;:::o;24216:607::-;24357:1;24339:15;:19;:66;;;;-1:-1:-1;24380:18:0;;:25;;24403:1;24380:22;:25::i;:::-;24362:15;:43;24339:66;:106;;;;;24427:18;;24409:15;:36;24339:106;24335:488;;;24477:18;;:25;;24500:1;24477:22;:25::i;:::-;24462:40;;24335:488;;;24544:21;24568:28;24592:3;24568:19;24579:7;;24568:6;:10;;:19;;;;:::i;:28::-;24544:52;-1:-1:-1;24611:23:0;24544:52;24611:23;;:::i;:::-;;;24662:18;;24653:6;:27;24649:163;;;24716:18;;24701:33;;24649:163;;;24790:6;24775:21;;24649:163;24529:294;24335:488;24840:30;24857:12;24840:16;:30::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:154::-;-1:-1:-1;;;;;646:5:1;642:54;635:5;632:65;622:93;;711:1;708;701:12;726:315;794:6;802;855:2;843:9;834:7;830:23;826:32;823:52;;;871:1;868;861:12;823:52;910:9;897:23;929:31;954:5;929:31;:::i;:::-;979:5;1031:2;1016:18;;;;1003:32;;-1:-1:-1;;;726:315:1:o;1420:456::-;1497:6;1505;1513;1566:2;1554:9;1545:7;1541:23;1537:32;1534:52;;;1582:1;1579;1572:12;1534:52;1621:9;1608:23;1640:31;1665:5;1640:31;:::i;:::-;1690:5;-1:-1:-1;1747:2:1;1732:18;;1719:32;1760:33;1719:32;1760:33;:::i;:::-;1420:456;;1812:7;;-1:-1:-1;;;1866:2:1;1851:18;;;;1838:32;;1420:456::o;2070:247::-;2129:6;2182:2;2170:9;2161:7;2157:23;2153:32;2150:52;;;2198:1;2195;2188:12;2150:52;2237:9;2224:23;2256:31;2281:5;2256:31;:::i;2322:383::-;2399:6;2407;2415;2468:2;2456:9;2447:7;2443:23;2439:32;2436:52;;;2484:1;2481;2474:12;2436:52;2523:9;2510:23;2542:31;2567:5;2542:31;:::i;:::-;2592:5;2644:2;2629:18;;2616:32;;-1:-1:-1;2695:2:1;2680:18;;;2667:32;;2322:383;-1:-1:-1;;;2322:383:1:o;2966:248::-;3034:6;3042;3095:2;3083:9;3074:7;3070:23;3066:32;3063:52;;;3111:1;3108;3101:12;3063:52;-1:-1:-1;;3134:23:1;;;3204:2;3189:18;;;3176:32;;-1:-1:-1;2966:248:1:o;3450:118::-;3536:5;3529:13;3522:21;3515:5;3512:32;3502:60;;3558:1;3555;3548:12;3573:382;3638:6;3646;3699:2;3687:9;3678:7;3674:23;3670:32;3667:52;;;3715:1;3712;3705:12;3667:52;3754:9;3741:23;3773:31;3798:5;3773:31;:::i;:::-;3823:5;-1:-1:-1;3880:2:1;3865:18;;3852:32;3893:30;3852:32;3893:30;:::i;:::-;3942:7;3932:17;;;3573:382;;;;;:::o;3960:180::-;4019:6;4072:2;4060:9;4051:7;4047:23;4043:32;4040:52;;;4088:1;4085;4078:12;4040:52;-1:-1:-1;4111:23:1;;3960:180;-1:-1:-1;3960:180:1:o;4145:388::-;4213:6;4221;4274:2;4262:9;4253:7;4249:23;4245:32;4242:52;;;4290:1;4287;4280:12;4242:52;4329:9;4316:23;4348:31;4373:5;4348:31;:::i;:::-;4398:5;-1:-1:-1;4455:2:1;4440:18;;4427:32;4468:33;4427:32;4468:33;:::i;4538:380::-;4617:1;4613:12;;;;4660;;;4681:61;;4735:4;4727:6;4723:17;4713:27;;4681:61;4788:2;4780:6;4777:14;4757:18;4754:38;4751:161;;4834:10;4829:3;4825:20;4822:1;4815:31;4869:4;4866:1;4859:15;4897:4;4894:1;4887:15;4751:161;;4538:380;;;:::o;4923:184::-;4993:6;5046:2;5034:9;5025:7;5021:23;5017:32;5014:52;;;5062:1;5059;5052:12;5014:52;-1:-1:-1;5085:16:1;;4923:184;-1:-1:-1;4923:184:1:o;5761:245::-;5828:6;5881:2;5869:9;5860:7;5856:23;5852:32;5849:52;;;5897:1;5894;5887:12;5849:52;5929:9;5923:16;5948:28;5970:5;5948:28;:::i;6011:127::-;6072:10;6067:3;6063:20;6060:1;6053:31;6103:4;6100:1;6093:15;6127:4;6124:1;6117:15;6143:125;6208:9;;;6229:10;;;6226:36;;;6242:18;;:::i;7807:168::-;7880:9;;;7911;;7928:15;;;7922:22;;7908:37;7898:71;;7949:18;;:::i;7980:217::-;8020:1;8046;8036:132;;8090:10;8085:3;8081:20;8078:1;8071:31;8125:4;8122:1;8115:15;8153:4;8150:1;8143:15;8036:132;-1:-1:-1;8182:9:1;;7980:217::o;10180:401::-;10382:2;10364:21;;;10421:2;10401:18;;;10394:30;10460:34;10455:2;10440:18;;10433:62;-1:-1:-1;;;10526:2:1;10511:18;;10504:35;10571:3;10556:19;;10180:401::o;10586:399::-;10788:2;10770:21;;;10827:2;10807:18;;;10800:30;10866:34;10861:2;10846:18;;10839:62;-1:-1:-1;;;10932:2:1;10917:18;;10910:33;10975:3;10960:19;;10586:399::o;12534:128::-;12601:9;;;12622:11;;;12619:37;;;12636:18;;:::i;13160:127::-;13221:10;13216:3;13212:20;13209:1;13202:31;13252:4;13249:1;13242:15;13276:4;13273:1;13266:15;13292:251;13362:6;13415:2;13403:9;13394:7;13390:23;13386:32;13383:52;;;13431:1;13428;13421:12;13383:52;13463:9;13457:16;13482:31;13507:5;13482:31;:::i;13548:1026::-;13810:4;13858:3;13847:9;13843:19;13889:6;13878:9;13871:25;13915:2;13953:6;13948:2;13937:9;13933:18;13926:34;13996:3;13991:2;13980:9;13976:18;13969:31;14020:6;14055;14049:13;14086:6;14078;14071:22;14124:3;14113:9;14109:19;14102:26;;14163:2;14155:6;14151:15;14137:29;;14184:1;14194:218;14208:6;14205:1;14202:13;14194:218;;;14273:13;;-1:-1:-1;;;;;14269:62:1;14257:75;;14387:15;;;;14352:12;;;;14230:1;14223:9;14194:218;;;-1:-1:-1;;;;;;;14468:55:1;;;;14463:2;14448:18;;14441:83;-1:-1:-1;;;14555:3:1;14540:19;14533:35;14429:3;13548:1026;-1:-1:-1;;;13548:1026:1:o

Swarm Source

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