ETH Price: $3,161.76 (-8.00%)
Gas: 10 Gwei

Token

Baby Pepe 2.0 (BABYPEPE2.0)
 

Overview

Max Total Supply

420,000,000 BABYPEPE2.0

Holders

252

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.000000000000000044 BABYPEPE2.0

Value
$0.00
0x10485927ff4b9d5d4e99225118e72dc2a8155657
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:
BabyPepe2

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

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




Telegram: https://t.me/BabyPepe2_Portal
Twitter: https://twitter.com/BabyPepe2_ERC

**/
pragma solidity 0.8.19;

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

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

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

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

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

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

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

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

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

interface IUniswapV2Factory {
    event PairCreated(
        address indexed token0,
        address indexed token1,
        address pair,
        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;
}

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 Burn(
        address indexed sender,
        uint256 amount0,
        uint256 amount1,
        address indexed to
    );
    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 burn(address to)
        external
        returns (uint256 amount0, uint256 amount1);

    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 IUniswapV2Router01 {
    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 removeLiquidity(
        address tokenA,
        address tokenB,
        uint256 liquidity,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountA, uint256 amountB);

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

    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint256 liquidity,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountA, uint256 amountB);

    function removeLiquidityETHWithPermit(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountToken, uint256 amountETH);

    function swapExactTokensForTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapTokensForExactTokens(
        uint256 amountOut,
        uint256 amountInMax,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapExactETHForTokens(
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable returns (uint256[] memory amounts);

    function swapTokensForExactETH(
        uint256 amountOut,
        uint256 amountInMax,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapExactTokensForETH(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapETHForExactTokens(
        uint256 amountOut,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable returns (uint256[] memory amounts);

    function quote(
        uint256 amountA,
        uint256 reserveA,
        uint256 reserveB
    ) external pure returns (uint256 amountB);

    function getAmountOut(
        uint256 amountIn,
        uint256 reserveIn,
        uint256 reserveOut
    ) external pure returns (uint256 amountOut);

    function getAmountIn(
        uint256 amountOut,
        uint256 reserveIn,
        uint256 reserveOut
    ) external pure returns (uint256 amountIn);

    function getAmountsOut(uint256 amountIn, address[] calldata path)
        external
        view
        returns (uint256[] memory amounts);

    function getAmountsIn(uint256 amountOut, address[] calldata path)
        external
        view
        returns (uint256[] memory amounts);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountETH);

    function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountETH);

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

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable;

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

contract BabyPepe2 is Ownable, IERC20 {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    mapping(address => bool) private _isExcludedFromWalletHoldingLimit;
    mapping(address => bool) private _isAutomaticMarketMaker;
    mapping(address => bool) private _isAccountLimited;

    uint256 public _decimals = 18;
    uint256 public _totalSupply = 420 * 10**6 * 10**_decimals;
    string private _name = "Baby Pepe 2.0";
    string private _symbol = "BABYPEPE2.0";

    address public immutable DeadWalletAddress =
        0x000000000000000000000000000000000000dEaD;
    address payable public MarketingWalletAddress;

    uint256 public _BuyingMarketingFee = 30;

    uint256 public _SellingMarketingFee = 70;

    uint256 internal feeDenominator = 100;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;

    bool internal inSwapAndLiquify;
    bool public swapAndLiquifyEnabled = true;

    uint256 public numTokensSellToAddToLiquidity = (_totalSupply * 150) / 10**4;
    uint256 public _maxWalletHoldingLimit = (_totalSupply * 2) / 10**2;

    event MaxWalletHoldingAmountUpdated(uint256 updatedMaxWalletHoldingAmount);
    event AutomaticMarketMakerPairUpdated(address account, bool status);
    event BuyingTaxFeeUpdated(uint256 TaxFees);
    event SellingTaxFeeUpdated(uint256 TaxFees);
    event MinTokensBeforeSwapUpdated(uint256 minTokensBeforeSwap);
    event SwapAndLiquifyEnabledUpdated(bool enabled);
    event SwapAndLiquify(
        uint256 tokensSwapped,
        uint256 ETHReceived,
        uint256 tokensIntoLiqudity
    );

    modifier lockTheSwap() {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }

    constructor() {
        _balances[owner()] = _totalSupply;
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        // Create a uniswap pair for this new token
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        // set the rest of the contract variables
        uniswapV2Router = _uniswapV2Router;
        //DeployerWallet
        MarketingWalletAddress = payable(address(msg.sender));
        //exclude owner and this contract from fee and Wallet holding Limits
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromWalletHoldingLimit[owner()] = true;
        _isExcludedFromWalletHoldingLimit[uniswapV2Pair] = true;
        _isExcludedFromWalletHoldingLimit[address(this)] = true;
        _isAutomaticMarketMaker[uniswapV2Pair] = true;

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

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

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

    function decimals() external view returns (uint256) {
        return _decimals;
    }

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

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

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

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        require(owner != address(0), "IERC20: approve from the zero address");
        require(spender != address(0), "IERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

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

    function increaseAllowance(address spender, uint256 addedValue)
        public
        virtual
        returns (bool)
    {
        _approve(
            _msgSender(),
            spender,
            _allowances[_msgSender()][spender] + addedValue
        );
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue)
        public
        virtual
        returns (bool)
    {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(
            currentAllowance >= subtractedValue,
            "IERC20: decreased allowance below zero"
        );
        _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        return true;
    }

    function ExcludeFromFee(address account) external onlyOwner {
        _isExcludedFromFee[account] = true;
    }

    function IncludeInFee(address account) external onlyOwner {
        _isExcludedFromFee[account] = false;
    }

    function IsExcludedFromTax(address account) external view returns (bool) {
        return _isExcludedFromFee[account];
    }

    function isExcludedFromWalletLimit(address WalletAddress)
        external
        view
        returns (bool)
    {
        return _isExcludedFromWalletHoldingLimit[WalletAddress];
    }

    function excludeFromMaxWalletHoldingLimit(address account)
        external
        onlyOwner
    {
        _isExcludedFromWalletHoldingLimit[account] = true;
    }

    function includeInMaxWalletHoldingLimit(address account)
        external
        onlyOwner
    {
        require(
            account != uniswapV2Pair,
            "You can't play with Liquidity pair address"
        );
        _isExcludedFromWalletHoldingLimit[account] = false;
    }

    function UpdateAccountLimition(address account, bool status)
        external
        onlyOwner
    {
        _isAccountLimited[account] = status;
    }

    function isAccountLimited(address account) external view returns (bool) {
        return _isAccountLimited[account];
    }

    function UpdateWallets(address payable newMarketingWallet)
        external
        onlyOwner
    {
        require(newMarketingWallet != address(0), "You can't set zero address");
        MarketingWalletAddress = newMarketingWallet;
    }

    function UpdateBuyingTaxFees(uint256 newMarketingFee) external onlyOwner {
        _BuyingMarketingFee = newMarketingFee;
        emit BuyingTaxFeeUpdated(_BuyingMarketingFee);
    }

    function UpdateSellingTaxFees(uint256 newMarketingFee) external onlyOwner {
        _SellingMarketingFee = newMarketingFee;
        emit SellingTaxFeeUpdated(_SellingMarketingFee);
    }

    function UpdateNoOfTokensSellToGetReward(uint256 thresholdValue)
        external
        onlyOwner
    {
        numTokensSellToAddToLiquidity = thresholdValue * 10**_decimals;
        emit MinTokensBeforeSwapUpdated(numTokensSellToAddToLiquidity);
    }

    function removeWalletHoldingLimit() external onlyOwner {
        _maxWalletHoldingLimit = (_totalSupply * 100) / 10**2;
    }

    function setSwapAndLiquifyEnabled(bool _enabled) external onlyOwner {
        swapAndLiquifyEnabled = _enabled;
        emit SwapAndLiquifyEnabledUpdated(_enabled);
    }

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);
        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(
            currentAllowance >= amount,
            "IERC20: transfer amount exceeds allowance"
        );
        return true;
    }

    // To receive BNB from PancakeswapV2 when swapping
    receive() external payable {}

    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(sender != address(0), "IERC20: transfer from the zero address");
        require(
            recipient != address(0),
            "IERC20: transfer to the zero address"
        );
        require(
            !_isAccountLimited[sender] && !_isAccountLimited[recipient],
            "Sorry your account is limiited"
        );
        require(_balances[sender] >= amount, "You don't have enough balance");

        if (
            !_isExcludedFromWalletHoldingLimit[recipient] && sender != owner()
        ) {
            require(
                balanceOf(recipient) + amount <= _maxWalletHoldingLimit,
                "Wallet Holding limit exceeded"
            );
        }

        uint256 totalTax = 0;

        if (_isExcludedFromFee[sender] || _isExcludedFromFee[recipient]) {
            totalTax = 0;
        } else {
            if (_isAutomaticMarketMaker[recipient]) {
                totalTax = (amount * (_SellingMarketingFee)) / (feeDenominator);
            } else if (_isAutomaticMarketMaker[sender]) {
                totalTax = (amount * (_BuyingMarketingFee)) / (feeDenominator);
            } else {
                totalTax = 0;
            }
        }

        uint256 contractTokenBalance = balanceOf(address(this));

        bool overMinTokenBalance = contractTokenBalance >=
            numTokensSellToAddToLiquidity;
        if (
            !inSwapAndLiquify &&
            recipient == uniswapV2Pair &&
            swapAndLiquifyEnabled &&
            balanceOf(uniswapV2Pair) > numTokensSellToAddToLiquidity
        ) {
            if (overMinTokenBalance) {
                contractTokenBalance = numTokensSellToAddToLiquidity;
                swapTokens(contractTokenBalance);
            }
        }

        uint256 amountReceived = amount - (totalTax);
        _balances[address(this)] += totalTax;
        _balances[sender] = _balances[sender] - amount;
        _balances[recipient] += amountReceived;

        if (totalTax > 0) {
            emit Transfer(sender, address(this), totalTax);
        }
        emit Transfer(sender, recipient, amountReceived);
    }

    function swapTokens(uint256 _contractTokenBalance) private lockTheSwap {
        swapTokensForETH(_contractTokenBalance);
        uint256 MarketingBalance = address(this).balance;
        if (MarketingBalance > 0) {
            MarketingWalletAddress.transfer(address(this).balance);
        }
    }

    function swapTokensForETH(uint256 tokenAmount) private {
        // generate the uniswap pair path of token -> wETH
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();

        _approve(address(this), address(uniswapV2Router), tokenAmount);

        // make the swap
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0, // accept any amount of ETH
            path,
            address(this),
            block.timestamp
        );
    }
}

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":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"status","type":"bool"}],"name":"AutomaticMarketMakerPairUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"TaxFees","type":"uint256"}],"name":"BuyingTaxFeeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"updatedMaxWalletHoldingAmount","type":"uint256"}],"name":"MaxWalletHoldingAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"minTokensBeforeSwap","type":"uint256"}],"name":"MinTokensBeforeSwapUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"TaxFees","type":"uint256"}],"name":"SellingTaxFeeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ETHReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"DeadWalletAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"ExcludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"IncludeInFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"IsExcludedFromTax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MarketingWalletAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"status","type":"bool"}],"name":"UpdateAccountLimition","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newMarketingFee","type":"uint256"}],"name":"UpdateBuyingTaxFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"thresholdValue","type":"uint256"}],"name":"UpdateNoOfTokensSellToGetReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newMarketingFee","type":"uint256"}],"name":"UpdateSellingTaxFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"newMarketingWallet","type":"address"}],"name":"UpdateWallets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_BuyingMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_SellingMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletHoldingLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"account","type":"address"}],"name":"excludeFromMaxWalletHoldingLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInMaxWalletHoldingLimit","outputs":[],"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":[{"internalType":"address","name":"account","type":"address"}],"name":"isAccountLimited","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"WalletAddress","type":"address"}],"name":"isExcludedFromWalletLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"numTokensSellToAddToLiquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeWalletHoldingLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setSwapAndLiquifyEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60a0604052601260078190556200001890600a6200050f565b6200002890631908b10062000524565b60085560408051808201909152600d81526c042616279205065706520322e3609c1b60208201526009906200005e9082620005e3565b5060408051808201909152600b81526a04241425950455045322e360ac1b6020820152600a90620000909082620005e3565b5061dead608052601e600c556046600d556064600e556010805460ff60a81b1916600160a81b17905560085461271090620000cd90609662000524565b620000d99190620006af565b60115560646008546002620000ef919062000524565b620000fb9190620006af565b6012553480156200010b57600080fd5b50600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a360085460016000620001656000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001e1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002079190620006d2565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000255573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200027b9190620006d2565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002c9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ef9190620006d2565b601080546001600160a01b039283166001600160a01b0319918216178255600f8054858516908316179055600b8054909116331790556000805483168152600360209081526040808320805460ff1990811660019081179092553080865283862080548316841790558554881686526004855283862080548316841790558654881686528386208054831684179055855282852080548216831790559454861684526005909252822080549093161790915554166001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600854604051620003eb91815260200190565b60405180910390a350620006fd565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000451578160001904821115620004355762000435620003fa565b808516156200044357918102915b93841c939080029062000415565b509250929050565b6000826200046a5750600162000509565b81620004795750600062000509565b81600181146200049257600281146200049d57620004bd565b600191505062000509565b60ff841115620004b157620004b1620003fa565b50506001821b62000509565b5060208310610133831016604e8410600b8410161715620004e2575081810a62000509565b620004ee838362000410565b8060001904821115620005055762000505620003fa565b0290505b92915050565b60006200051d838362000459565b9392505050565b8082028115828204841417620005095762000509620003fa565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200056957607f821691505b6020821081036200058a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620005de57600081815260208120601f850160051c81016020861015620005b95750805b601f850160051c820191505b81811015620005da57828155600101620005c5565b5050505b505050565b81516001600160401b03811115620005ff57620005ff6200053e565b620006178162000610845462000554565b8462000590565b602080601f8311600181146200064f5760008415620006365750858301515b600019600386901b1c1916600185901b178555620005da565b600085815260208120601f198616915b8281101562000680578886015182559484019460019091019084016200065f565b50858210156200069f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082620006cd57634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620006e557600080fd5b81516001600160a01b03811681146200051d57600080fd5b608051611c076200071960003960006102ad0152611c076000f3fe6080604052600436106102345760003560e01c80635c38fdfd1161012e578063a9059cbb116100ab578063c49b9a801161006f578063c49b9a80146106ce578063d12a7688146106ee578063d81e1cb014610704578063dd62ed3e14610724578063f2fde38b1461076a57600080fd5b8063a9059cbb1461062a578063abdadf621461064a578063b40f946914610660578063b7a9a0af14610699578063c1b60b17146106b957600080fd5b80639429b9fe116100f25780639429b9fe1461059f57806395d89b41146105bf578063a27f656d146105d4578063a2cefe6d146105f4578063a457c2d71461060a57600080fd5b80635c38fdfd146104dd57806370035ba51461051657806370a0823114610536578063715018a61461056c5780638da5cb5b1461058157600080fd5b806332424aa3116101bc5780634108fd4f116101805780634108fd4f1461043c57806349bd5a5e1461045c5780634a74bb021461047c5780634f6a6b6e1461049d57806358c3e050146104bd57600080fd5b806332424aa3146103ae57806338a1da5c146103c457806339509351146103e657806339e6cd66146104065780633eaaf86b1461042657600080fd5b80631694505e116102035780631694505e1461030b57806318160ddd1461032b57806323b872dd146103405780632672fb9414610360578063313ce5671461039957600080fd5b806306fdde0314610240578063095ea7b31461026b5780630a6a75481461029b578063124035a8146102e757600080fd5b3661023b57005b600080fd5b34801561024c57600080fd5b5061025561078a565b60405161026291906117ab565b60405180910390f35b34801561027757600080fd5b5061028b610286366004611811565b61081c565b6040519015158152602001610262565b3480156102a757600080fd5b506102cf7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610262565b3480156102f357600080fd5b506102fd60125481565b604051908152602001610262565b34801561031757600080fd5b50600f546102cf906001600160a01b031681565b34801561033757600080fd5b506008546102fd565b34801561034c57600080fd5b5061028b61035b36600461183d565b610833565b34801561036c57600080fd5b5061028b61037b36600461187e565b6001600160a01b031660009081526003602052604090205460ff1690565b3480156103a557600080fd5b506007546102fd565b3480156103ba57600080fd5b506102fd60075481565b3480156103d057600080fd5b506103e46103df3660046118b7565b6108d6565b005b3480156103f257600080fd5b5061028b610401366004611811565b61092b565b34801561041257600080fd5b50600b546102cf906001600160a01b031681565b34801561043257600080fd5b506102fd60085481565b34801561044857600080fd5b506103e46104573660046118ec565b610967565b34801561046857600080fd5b506010546102cf906001600160a01b031681565b34801561048857600080fd5b5060105461028b90600160a81b900460ff1681565b3480156104a957600080fd5b506103e46104b836600461187e565b6109cd565b3480156104c957600080fd5b506103e46104d836600461187e565b610a18565b3480156104e957600080fd5b5061028b6104f836600461187e565b6001600160a01b031660009081526006602052604090205460ff1690565b34801561052257600080fd5b506103e461053136600461187e565b610a66565b34801561054257600080fd5b506102fd61055136600461187e565b6001600160a01b031660009081526001602052604090205490565b34801561057857600080fd5b506103e4610ab4565b34801561058d57600080fd5b506000546001600160a01b03166102cf565b3480156105ab57600080fd5b506103e46105ba3660046118ec565b610b28565b3480156105cb57600080fd5b50610255610b9f565b3480156105e057600080fd5b506103e46105ef36600461187e565b610bae565b34801561060057600080fd5b506102fd600c5481565b34801561061657600080fd5b5061028b610625366004611811565b610c50565b34801561063657600080fd5b5061028b610645366004611811565b610cec565b34801561065657600080fd5b506102fd600d5481565b34801561066c57600080fd5b5061028b61067b36600461187e565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156106a557600080fd5b506103e46106b436600461187e565b610cf9565b3480156106c557600080fd5b506103e4610db5565b3480156106da57600080fd5b506103e46106e9366004611905565b610dff565b3480156106fa57600080fd5b506102fd60115481565b34801561071057600080fd5b506103e461071f3660046118ec565b610e76565b34801561073057600080fd5b506102fd61073f366004611920565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561077657600080fd5b506103e461078536600461187e565b610ed5565b60606009805461079990611959565b80601f01602080910402602001604051908101604052809291908181526020018280546107c590611959565b80156108125780601f106107e757610100808354040283529160200191610812565b820191906000526020600020905b8154815290600101906020018083116107f557829003601f168201915b5050505050905090565b6000610829338484610fbf565b5060015b92915050565b60006108408484846110e6565b6001600160a01b0384166000908152600260209081526040808320338452909152902054828110156108cb5760405162461bcd60e51b815260206004820152602960248201527f4945524332303a207472616e7366657220616d6f756e74206578636565647320604482015268616c6c6f77616e636560b81b60648201526084015b60405180910390fd5b506001949350505050565b6000546001600160a01b031633146109005760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916108299185906109629086906119de565b610fbf565b6000546001600160a01b031633146109915760405162461bcd60e51b81526004016108c290611993565b600d8190556040518181527f4babbcf4831921e3525c5cad678d0379401b05da366a608803a6a79910969066906020015b60405180910390a150565b6000546001600160a01b031633146109f75760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03166000908152600360205260409020805460ff19169055565b6000546001600160a01b03163314610a425760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b6000546001600160a01b03163314610a905760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03166000908152600460205260409020805460ff19166001179055565b6000546001600160a01b03163314610ade5760405162461bcd60e51b81526004016108c290611993565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610b525760405162461bcd60e51b81526004016108c290611993565b600754610b6090600a611ad5565b610b6a9082611ae1565b60118190556040519081527f5948780118f41f7c4577ae4619d5cbd064057bd8562d9f7b7e60324053375c00906020016109c2565b6060600a805461079990611959565b6000546001600160a01b03163314610bd85760405162461bcd60e51b81526004016108c290611993565b6001600160a01b038116610c2e5760405162461bcd60e51b815260206004820152601a60248201527f596f752063616e277420736574207a65726f206164647265737300000000000060448201526064016108c2565b600b80546001600160a01b0319166001600160a01b0392909216919091179055565b3360009081526002602090815260408083206001600160a01b038616845290915281205482811015610cd35760405162461bcd60e51b815260206004820152602660248201527f4945524332303a2064656372656173656420616c6c6f77616e63652062656c6f60448201526577207a65726f60d01b60648201526084016108c2565b610ce233856109628685611af8565b5060019392505050565b60006108293384846110e6565b6000546001600160a01b03163314610d235760405162461bcd60e51b81526004016108c290611993565b6010546001600160a01b0390811690821603610d945760405162461bcd60e51b815260206004820152602a60248201527f596f752063616e277420706c61792077697468204c69717569646974792070616044820152696972206164647265737360b01b60648201526084016108c2565b6001600160a01b03166000908152600460205260409020805460ff19169055565b6000546001600160a01b03163314610ddf5760405162461bcd60e51b81526004016108c290611993565b60646008546064610df09190611ae1565b610dfa9190611b0b565b601255565b6000546001600160a01b03163314610e295760405162461bcd60e51b81526004016108c290611993565b60108054821515600160a81b0260ff60a81b199091161790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc159906109c290831515815260200190565b6000546001600160a01b03163314610ea05760405162461bcd60e51b81526004016108c290611993565b600c8190556040518181527f0e67b9e2db5ac83e278ae529ba7f8d72a1f5e732cb9fa988e8289587a08c1ed4906020016109c2565b6000546001600160a01b03163314610eff5760405162461bcd60e51b81526004016108c290611993565b6001600160a01b038116610f645760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108c2565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166110235760405162461bcd60e51b815260206004820152602560248201527f4945524332303a20617070726f76652066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108c2565b6001600160a01b0382166110855760405162461bcd60e51b815260206004820152602360248201527f4945524332303a20617070726f766520746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108c2565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661114b5760405162461bcd60e51b815260206004820152602660248201527f4945524332303a207472616e736665722066726f6d20746865207a65726f206160448201526564647265737360d01b60648201526084016108c2565b6001600160a01b0382166111ad5760405162461bcd60e51b8152602060048201526024808201527f4945524332303a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016108c2565b6001600160a01b03831660009081526006602052604090205460ff161580156111ef57506001600160a01b03821660009081526006602052604090205460ff16155b61123b5760405162461bcd60e51b815260206004820152601e60248201527f536f72727920796f7572206163636f756e74206973206c696d6969746564000060448201526064016108c2565b6001600160a01b0383166000908152600160205260409020548111156112a35760405162461bcd60e51b815260206004820152601d60248201527f596f7520646f6e2774206861766520656e6f7567682062616c616e636500000060448201526064016108c2565b6001600160a01b03821660009081526004602052604090205460ff161580156112da57506000546001600160a01b03848116911614155b1561135a5760125481611302846001600160a01b031660009081526001602052604090205490565b61130c91906119de565b111561135a5760405162461bcd60e51b815260206004820152601d60248201527f57616c6c657420486f6c64696e67206c696d697420657863656564656400000060448201526064016108c2565b6001600160a01b03831660009081526003602052604081205460ff168061139957506001600160a01b03831660009081526003602052604090205460ff165b156113a65750600061141d565b6001600160a01b03831660009081526005602052604090205460ff16156113e857600e54600d546113d79084611ae1565b6113e19190611b0b565b905061141d565b6001600160a01b03841660009081526005602052604090205460ff161561141957600e54600c546113d79084611ae1565b5060005b306000908152600160205260409020546011546010549082101590600160a01b900460ff1615801561145c57506010546001600160a01b038681169116145b80156114715750601054600160a81b900460ff165b801561149857506011546010546001600160a01b0316600090815260016020526040902054115b156114b15780156114b15760115491506114b1826115e2565b60006114bd8486611af8565b306000908152600160205260408120805492935086929091906114e19084906119de565b90915550506001600160a01b03871660009081526001602052604090205461150a908690611af8565b6001600160a01b0380891660009081526001602052604080822093909355908816815290812080548392906115409084906119de565b9091555050831561158c5760405184815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516115d191815260200190565b60405180910390a350505050505050565b6010805460ff60a01b1916600160a01b1790556115fe81611651565b47801561164057600b546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561163e573d6000803e3d6000fd5b505b50506010805460ff60a01b19169055565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061168657611686611b2d565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156116df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117039190611b43565b8160018151811061171657611716611b2d565b6001600160a01b039283166020918202929092010152600f5461173c9130911684610fbf565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611775908590600090869030904290600401611b60565b600060405180830381600087803b15801561178f57600080fd5b505af11580156117a3573d6000803e3d6000fd5b505050505050565b600060208083528351808285015260005b818110156117d8578581018301518582016040015282016117bc565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461180e57600080fd5b50565b6000806040838503121561182457600080fd5b823561182f816117f9565b946020939093013593505050565b60008060006060848603121561185257600080fd5b833561185d816117f9565b9250602084013561186d816117f9565b929592945050506040919091013590565b60006020828403121561189057600080fd5b813561189b816117f9565b9392505050565b803580151581146118b257600080fd5b919050565b600080604083850312156118ca57600080fd5b82356118d5816117f9565b91506118e3602084016118a2565b90509250929050565b6000602082840312156118fe57600080fd5b5035919050565b60006020828403121561191757600080fd5b61189b826118a2565b6000806040838503121561193357600080fd5b823561193e816117f9565b9150602083013561194e816117f9565b809150509250929050565b600181811c9082168061196d57607f821691505b60208210810361198d57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561082d5761082d6119c8565b600181815b80851115611a2c578160001904821115611a1257611a126119c8565b80851615611a1f57918102915b93841c93908002906119f6565b509250929050565b600082611a435750600161082d565b81611a505750600061082d565b8160018114611a665760028114611a7057611a8c565b600191505061082d565b60ff841115611a8157611a816119c8565b50506001821b61082d565b5060208310610133831016604e8410600b8410161715611aaf575081810a61082d565b611ab983836119f1565b8060001904821115611acd57611acd6119c8565b029392505050565b600061189b8383611a34565b808202811582820484141761082d5761082d6119c8565b8181038181111561082d5761082d6119c8565b600082611b2857634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611b5557600080fd5b815161189b816117f9565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611bb05784516001600160a01b031683529383019391830191600101611b8b565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220ed873d1c3e9b95c541a851abfc2fbc9787bdfc77a47f0a020b9bc5edf60d244664736f6c63430008130033

Deployed Bytecode

0x6080604052600436106102345760003560e01c80635c38fdfd1161012e578063a9059cbb116100ab578063c49b9a801161006f578063c49b9a80146106ce578063d12a7688146106ee578063d81e1cb014610704578063dd62ed3e14610724578063f2fde38b1461076a57600080fd5b8063a9059cbb1461062a578063abdadf621461064a578063b40f946914610660578063b7a9a0af14610699578063c1b60b17146106b957600080fd5b80639429b9fe116100f25780639429b9fe1461059f57806395d89b41146105bf578063a27f656d146105d4578063a2cefe6d146105f4578063a457c2d71461060a57600080fd5b80635c38fdfd146104dd57806370035ba51461051657806370a0823114610536578063715018a61461056c5780638da5cb5b1461058157600080fd5b806332424aa3116101bc5780634108fd4f116101805780634108fd4f1461043c57806349bd5a5e1461045c5780634a74bb021461047c5780634f6a6b6e1461049d57806358c3e050146104bd57600080fd5b806332424aa3146103ae57806338a1da5c146103c457806339509351146103e657806339e6cd66146104065780633eaaf86b1461042657600080fd5b80631694505e116102035780631694505e1461030b57806318160ddd1461032b57806323b872dd146103405780632672fb9414610360578063313ce5671461039957600080fd5b806306fdde0314610240578063095ea7b31461026b5780630a6a75481461029b578063124035a8146102e757600080fd5b3661023b57005b600080fd5b34801561024c57600080fd5b5061025561078a565b60405161026291906117ab565b60405180910390f35b34801561027757600080fd5b5061028b610286366004611811565b61081c565b6040519015158152602001610262565b3480156102a757600080fd5b506102cf7f000000000000000000000000000000000000000000000000000000000000dead81565b6040516001600160a01b039091168152602001610262565b3480156102f357600080fd5b506102fd60125481565b604051908152602001610262565b34801561031757600080fd5b50600f546102cf906001600160a01b031681565b34801561033757600080fd5b506008546102fd565b34801561034c57600080fd5b5061028b61035b36600461183d565b610833565b34801561036c57600080fd5b5061028b61037b36600461187e565b6001600160a01b031660009081526003602052604090205460ff1690565b3480156103a557600080fd5b506007546102fd565b3480156103ba57600080fd5b506102fd60075481565b3480156103d057600080fd5b506103e46103df3660046118b7565b6108d6565b005b3480156103f257600080fd5b5061028b610401366004611811565b61092b565b34801561041257600080fd5b50600b546102cf906001600160a01b031681565b34801561043257600080fd5b506102fd60085481565b34801561044857600080fd5b506103e46104573660046118ec565b610967565b34801561046857600080fd5b506010546102cf906001600160a01b031681565b34801561048857600080fd5b5060105461028b90600160a81b900460ff1681565b3480156104a957600080fd5b506103e46104b836600461187e565b6109cd565b3480156104c957600080fd5b506103e46104d836600461187e565b610a18565b3480156104e957600080fd5b5061028b6104f836600461187e565b6001600160a01b031660009081526006602052604090205460ff1690565b34801561052257600080fd5b506103e461053136600461187e565b610a66565b34801561054257600080fd5b506102fd61055136600461187e565b6001600160a01b031660009081526001602052604090205490565b34801561057857600080fd5b506103e4610ab4565b34801561058d57600080fd5b506000546001600160a01b03166102cf565b3480156105ab57600080fd5b506103e46105ba3660046118ec565b610b28565b3480156105cb57600080fd5b50610255610b9f565b3480156105e057600080fd5b506103e46105ef36600461187e565b610bae565b34801561060057600080fd5b506102fd600c5481565b34801561061657600080fd5b5061028b610625366004611811565b610c50565b34801561063657600080fd5b5061028b610645366004611811565b610cec565b34801561065657600080fd5b506102fd600d5481565b34801561066c57600080fd5b5061028b61067b36600461187e565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156106a557600080fd5b506103e46106b436600461187e565b610cf9565b3480156106c557600080fd5b506103e4610db5565b3480156106da57600080fd5b506103e46106e9366004611905565b610dff565b3480156106fa57600080fd5b506102fd60115481565b34801561071057600080fd5b506103e461071f3660046118ec565b610e76565b34801561073057600080fd5b506102fd61073f366004611920565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561077657600080fd5b506103e461078536600461187e565b610ed5565b60606009805461079990611959565b80601f01602080910402602001604051908101604052809291908181526020018280546107c590611959565b80156108125780601f106107e757610100808354040283529160200191610812565b820191906000526020600020905b8154815290600101906020018083116107f557829003601f168201915b5050505050905090565b6000610829338484610fbf565b5060015b92915050565b60006108408484846110e6565b6001600160a01b0384166000908152600260209081526040808320338452909152902054828110156108cb5760405162461bcd60e51b815260206004820152602960248201527f4945524332303a207472616e7366657220616d6f756e74206578636565647320604482015268616c6c6f77616e636560b81b60648201526084015b60405180910390fd5b506001949350505050565b6000546001600160a01b031633146109005760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916108299185906109629086906119de565b610fbf565b6000546001600160a01b031633146109915760405162461bcd60e51b81526004016108c290611993565b600d8190556040518181527f4babbcf4831921e3525c5cad678d0379401b05da366a608803a6a79910969066906020015b60405180910390a150565b6000546001600160a01b031633146109f75760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03166000908152600360205260409020805460ff19169055565b6000546001600160a01b03163314610a425760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b6000546001600160a01b03163314610a905760405162461bcd60e51b81526004016108c290611993565b6001600160a01b03166000908152600460205260409020805460ff19166001179055565b6000546001600160a01b03163314610ade5760405162461bcd60e51b81526004016108c290611993565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610b525760405162461bcd60e51b81526004016108c290611993565b600754610b6090600a611ad5565b610b6a9082611ae1565b60118190556040519081527f5948780118f41f7c4577ae4619d5cbd064057bd8562d9f7b7e60324053375c00906020016109c2565b6060600a805461079990611959565b6000546001600160a01b03163314610bd85760405162461bcd60e51b81526004016108c290611993565b6001600160a01b038116610c2e5760405162461bcd60e51b815260206004820152601a60248201527f596f752063616e277420736574207a65726f206164647265737300000000000060448201526064016108c2565b600b80546001600160a01b0319166001600160a01b0392909216919091179055565b3360009081526002602090815260408083206001600160a01b038616845290915281205482811015610cd35760405162461bcd60e51b815260206004820152602660248201527f4945524332303a2064656372656173656420616c6c6f77616e63652062656c6f60448201526577207a65726f60d01b60648201526084016108c2565b610ce233856109628685611af8565b5060019392505050565b60006108293384846110e6565b6000546001600160a01b03163314610d235760405162461bcd60e51b81526004016108c290611993565b6010546001600160a01b0390811690821603610d945760405162461bcd60e51b815260206004820152602a60248201527f596f752063616e277420706c61792077697468204c69717569646974792070616044820152696972206164647265737360b01b60648201526084016108c2565b6001600160a01b03166000908152600460205260409020805460ff19169055565b6000546001600160a01b03163314610ddf5760405162461bcd60e51b81526004016108c290611993565b60646008546064610df09190611ae1565b610dfa9190611b0b565b601255565b6000546001600160a01b03163314610e295760405162461bcd60e51b81526004016108c290611993565b60108054821515600160a81b0260ff60a81b199091161790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc159906109c290831515815260200190565b6000546001600160a01b03163314610ea05760405162461bcd60e51b81526004016108c290611993565b600c8190556040518181527f0e67b9e2db5ac83e278ae529ba7f8d72a1f5e732cb9fa988e8289587a08c1ed4906020016109c2565b6000546001600160a01b03163314610eff5760405162461bcd60e51b81526004016108c290611993565b6001600160a01b038116610f645760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108c2565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166110235760405162461bcd60e51b815260206004820152602560248201527f4945524332303a20617070726f76652066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108c2565b6001600160a01b0382166110855760405162461bcd60e51b815260206004820152602360248201527f4945524332303a20617070726f766520746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108c2565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661114b5760405162461bcd60e51b815260206004820152602660248201527f4945524332303a207472616e736665722066726f6d20746865207a65726f206160448201526564647265737360d01b60648201526084016108c2565b6001600160a01b0382166111ad5760405162461bcd60e51b8152602060048201526024808201527f4945524332303a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b60648201526084016108c2565b6001600160a01b03831660009081526006602052604090205460ff161580156111ef57506001600160a01b03821660009081526006602052604090205460ff16155b61123b5760405162461bcd60e51b815260206004820152601e60248201527f536f72727920796f7572206163636f756e74206973206c696d6969746564000060448201526064016108c2565b6001600160a01b0383166000908152600160205260409020548111156112a35760405162461bcd60e51b815260206004820152601d60248201527f596f7520646f6e2774206861766520656e6f7567682062616c616e636500000060448201526064016108c2565b6001600160a01b03821660009081526004602052604090205460ff161580156112da57506000546001600160a01b03848116911614155b1561135a5760125481611302846001600160a01b031660009081526001602052604090205490565b61130c91906119de565b111561135a5760405162461bcd60e51b815260206004820152601d60248201527f57616c6c657420486f6c64696e67206c696d697420657863656564656400000060448201526064016108c2565b6001600160a01b03831660009081526003602052604081205460ff168061139957506001600160a01b03831660009081526003602052604090205460ff165b156113a65750600061141d565b6001600160a01b03831660009081526005602052604090205460ff16156113e857600e54600d546113d79084611ae1565b6113e19190611b0b565b905061141d565b6001600160a01b03841660009081526005602052604090205460ff161561141957600e54600c546113d79084611ae1565b5060005b306000908152600160205260409020546011546010549082101590600160a01b900460ff1615801561145c57506010546001600160a01b038681169116145b80156114715750601054600160a81b900460ff165b801561149857506011546010546001600160a01b0316600090815260016020526040902054115b156114b15780156114b15760115491506114b1826115e2565b60006114bd8486611af8565b306000908152600160205260408120805492935086929091906114e19084906119de565b90915550506001600160a01b03871660009081526001602052604090205461150a908690611af8565b6001600160a01b0380891660009081526001602052604080822093909355908816815290812080548392906115409084906119de565b9091555050831561158c5760405184815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516115d191815260200190565b60405180910390a350505050505050565b6010805460ff60a01b1916600160a01b1790556115fe81611651565b47801561164057600b546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561163e573d6000803e3d6000fd5b505b50506010805460ff60a01b19169055565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061168657611686611b2d565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156116df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117039190611b43565b8160018151811061171657611716611b2d565b6001600160a01b039283166020918202929092010152600f5461173c9130911684610fbf565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611775908590600090869030904290600401611b60565b600060405180830381600087803b15801561178f57600080fd5b505af11580156117a3573d6000803e3d6000fd5b505050505050565b600060208083528351808285015260005b818110156117d8578581018301518582016040015282016117bc565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461180e57600080fd5b50565b6000806040838503121561182457600080fd5b823561182f816117f9565b946020939093013593505050565b60008060006060848603121561185257600080fd5b833561185d816117f9565b9250602084013561186d816117f9565b929592945050506040919091013590565b60006020828403121561189057600080fd5b813561189b816117f9565b9392505050565b803580151581146118b257600080fd5b919050565b600080604083850312156118ca57600080fd5b82356118d5816117f9565b91506118e3602084016118a2565b90509250929050565b6000602082840312156118fe57600080fd5b5035919050565b60006020828403121561191757600080fd5b61189b826118a2565b6000806040838503121561193357600080fd5b823561193e816117f9565b9150602083013561194e816117f9565b809150509250929050565b600181811c9082168061196d57607f821691505b60208210810361198d57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561082d5761082d6119c8565b600181815b80851115611a2c578160001904821115611a1257611a126119c8565b80851615611a1f57918102915b93841c93908002906119f6565b509250929050565b600082611a435750600161082d565b81611a505750600061082d565b8160018114611a665760028114611a7057611a8c565b600191505061082d565b60ff841115611a8157611a816119c8565b50506001821b61082d565b5060208310610133831016604e8410600b8410161715611aaf575081810a61082d565b611ab983836119f1565b8060001904821115611acd57611acd6119c8565b029392505050565b600061189b8383611a34565b808202811582820484141761082d5761082d6119c8565b8181038181111561082d5761082d6119c8565b600082611b2857634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611b5557600080fd5b815161189b816117f9565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611bb05784516001600160a01b031683529383019391830191600101611b8b565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220ed873d1c3e9b95c541a851abfc2fbc9787bdfc77a47f0a020b9bc5edf60d244664736f6c63430008130033

Deployed Bytecode Sourcemap

11410:11582:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14356:85;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14878:210;;;;;;;;;;-1:-1:-1;14878:210:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;14878:210:0;1023:187:1;12026:96:0;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1379:32:1;;;1361:51;;1349:2;1334:18;12026:96:0;1215:203:1;12579:66:0;;;;;;;;;;;;;;;;;;;1569:25:1;;;1557:2;1542:18;12579:66:0;1423:177:1;12326:41:0;;;;;;;;;;-1:-1:-1;12326:41:0;;;;-1:-1:-1;;;;;12326:41:0;;;14641:102;;;;;;;;;;-1:-1:-1;14723:12:0;;14641:102;;19256:422;;;;;;;;;;-1:-1:-1;19256:422:0;;;;;:::i;:::-;;:::i;16692:126::-;;;;;;;;;;-1:-1:-1;16692:126:0;;;;;:::i;:::-;-1:-1:-1;;;;;16783:27:0;16759:4;16783:27;;;:18;:27;;;;;;;;;16692:126;14546:87;;;;;;;;;;-1:-1:-1;14616:9:0;;14546:87;;11834:29;;;;;;;;;;;;;;;;17507:157;;;;;;;;;;-1:-1:-1;17507:157:0;;;;;:::i;:::-;;:::i;:::-;;15693:297;;;;;;;;;;-1:-1:-1;15693:297:0;;;;;:::i;:::-;;:::i;12129:45::-;;;;;;;;;;-1:-1:-1;12129:45:0;;;;-1:-1:-1;;;;;12129:45:0;;;11870:57;;;;;;;;;;;;;;;;18250:189;;;;;;;;;;-1:-1:-1;18250:189:0;;;;;:::i;:::-;;:::i;12374:28::-;;;;;;;;;;-1:-1:-1;12374:28:0;;;;-1:-1:-1;;;;;12374:28:0;;;12448:40;;;;;;;;;;-1:-1:-1;12448:40:0;;;;-1:-1:-1;;;12448:40:0;;;;;;16572:112;;;;;;;;;;-1:-1:-1;16572:112:0;;;;;:::i;:::-;;:::i;16451:113::-;;;;;;;;;;-1:-1:-1;16451:113:0;;;;;:::i;:::-;;:::i;17672:124::-;;;;;;;;;;-1:-1:-1;17672:124:0;;;;;:::i;:::-;-1:-1:-1;;;;;17762:26:0;17738:4;17762:26;;;:17;:26;;;;;;;;;17672:124;17027:169;;;;;;;;;;-1:-1:-1;17027:169:0;;;;;:::i;:::-;;:::i;14751:119::-;;;;;;;;;;-1:-1:-1;14751:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;14844:18:0;14817:7;14844:18;;;:9;:18;;;;;;;14751:119;1769:148;;;;;;;;;;;;;:::i;1546:87::-;;;;;;;;;;-1:-1:-1;1592:7:0;1619:6;-1:-1:-1;;;;;1619:6:0;1546:87;;18447:261;;;;;;;;;;-1:-1:-1;18447:261:0;;;;;:::i;:::-;;:::i;14449:89::-;;;;;;;;;;;;;:::i;17804:245::-;;;;;;;;;;-1:-1:-1;17804:245:0;;;;;:::i;:::-;;:::i;12183:39::-;;;;;;;;;;;;;;;;15998:445;;;;;;;;;;-1:-1:-1;15998:445:0;;;;;:::i;:::-;;:::i;19032:216::-;;;;;;;;;;-1:-1:-1;19032:216:0;;;;;:::i;:::-;;:::i;12231:40::-;;;;;;;;;;;;;;;;16826:193;;;;;;;;;;-1:-1:-1;16826:193:0;;;;;:::i;:::-;-1:-1:-1;;;;;16963:48:0;16934:4;16963:48;;;:33;:48;;;;;;;;;16826:193;17204:295;;;;;;;;;;-1:-1:-1;17204:295:0;;;;;:::i;:::-;;:::i;18716:127::-;;;;;;;;;;;;;:::i;18851:173::-;;;;;;;;;;-1:-1:-1;18851:173:0;;;;;:::i;:::-;;:::i;12497:75::-;;;;;;;;;;;;;;;;18057:185;;;;;;;;;;-1:-1:-1;18057:185:0;;;;;:::i;:::-;;:::i;15484:201::-;;;;;;;;;;-1:-1:-1;15484:201:0;;;;;:::i;:::-;-1:-1:-1;;;;;15650:18:0;;;15618:7;15650:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;15484:201;1925:281;;;;;;;;;;-1:-1:-1;1925:281:0;;;;;:::i;:::-;;:::i;14356:85::-;14395:13;14428:5;14421:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14356:85;:::o;14878:210::-;14997:4;15019:39;1080:10;15042:7;15051:6;15019:8;:39::i;:::-;-1:-1:-1;15076:4:0;14878:210;;;;;:::o;19256:422::-;19396:4;19413:36;19423:6;19431:9;19442:6;19413:9;:36::i;:::-;-1:-1:-1;;;;;19487:19:0;;19460:24;19487:19;;;:11;:19;;;;;;;;1080:10;19487:33;;;;;;;;19553:26;;;;19531:117;;;;-1:-1:-1;;;19531:117:0;;4871:2:1;19531:117:0;;;4853:21:1;4910:2;4890:18;;;4883:30;4949:34;4929:18;;;4922:62;-1:-1:-1;;;5000:18:1;;;4993:39;5049:19;;19531:117:0;;;;;;;;;-1:-1:-1;19666:4:0;;19256:422;-1:-1:-1;;;;19256:422:0:o;17507:157::-;1592:7;1619:6;-1:-1:-1;;;;;1619:6:0;1080:10;1681:23;1673:68;;;;-1:-1:-1;;;1673:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17621:26:0;;;::::1;;::::0;;;:17:::1;:26;::::0;;;;:35;;-1:-1:-1;;17621:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;17507:157::o;15693:297::-;1080:10;15808:4;15902:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;15902:34:0;;;;;;;;;;15808:4;;15830:130;;15880:7;;15902:47;;15939:10;;15902:47;:::i;:::-;15830:8;:130::i;18250:189::-;1592:7;1619:6;-1:-1:-1;;;;;1619:6:0;1080:10;1681:23;1673:68;;;;-1:-1:-1;;;1673:68:0;;;;;;;:::i;:::-;18335:20:::1;:38:::0;;;18389:42:::1;::::0;1569:25:1;;;18389:42:0::1;::::0;1557:2:1;1542:18;18389:42:0::1;;;;;;;;18250:189:::0;:::o;16572:112::-;1592:7;1619:6;-1:-1:-1;;;;;1619:6:0;1080:10;1681:23;1673:68;;;;-1:-1:-1;;;1673:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16641:27:0::1;16671:5;16641:27:::0;;;:18:::1;:27;::::0;;;;:35;;-1:-1:-1;;16641:35:0::1;::::0;;16572:112::o;16451:113::-;1592:7;1619:6;-1:-1:-1;;;;;1619:6:0;1080:10;1681:23;1673:68;;;;-1:-1:-1;;;1673:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16522:27:0::1;;::::0;;;:18:::1;:27;::::0;;;;:34;;-1:-1:-1;;16522:34:0::1;16552:4;16522:34;::::0;;16451:113::o;17027:169::-;1592:7;1619:6;-1:-1:-1;;;;;1619:6:0;1080:10;1681:23;1673:68;;;;-1:-1:-1;;;1673:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17139:42:0::1;;::::0;;;:33:::1;:42;::::0;;;;:49;;-1:-1:-1;;17139:49:0::1;17184:4;17139:49;::::0;;17027:169::o;1769:148::-;1592:7;1619:6;-1:-1:-1;;;;;1619:6:0;1080:10;1681:23;1673:68;;;;-1:-1:-1;;;1673:68:0;;;;;;;:::i;:::-;1876:1:::1;1860:6:::0;;1839:40:::1;::::0;-1:-1:-1;;;;;1860:6:0;;::::1;::::0;1839:40:::1;::::0;1876:1;;1839:40:::1;1907:1;1890:19:::0;;-1:-1:-1;;;;;;1890:19:0::1;::::0;;1769:148::o;18447:261::-;1592:7;1619:6;-1:-1:-1;;;;;1619:6:0;1080:10;1681:23;1673:68;;;;-1:-1:-1;;;1673:68:0;;;;;;;:::i;:::-;18618:9:::1;::::0;18614:13:::1;::::0;:2:::1;:13;:::i;:::-;18597:30;::::0;:14;:30:::1;:::i;:::-;18565:29;:62:::0;;;18643:57:::1;::::0;1569:25:1;;;18643:57:0::1;::::0;1557:2:1;1542:18;18643:57:0::1;1423:177:1::0;14449:89:0;14490:13;14523:7;14516:14;;;;;:::i;17804:245::-;1592:7;1619:6;-1:-1:-1;;;;;1619:6:0;1080:10;1681:23;1673:68;;;;-1:-1:-1;;;1673:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17924:32:0;::::1;17916:71;;;::::0;-1:-1:-1;;;17916:71:0;;7451:2:1;17916:71:0::1;::::0;::::1;7433:21:1::0;7490:2;7470:18;;;7463:30;7529:28;7509:18;;;7502:56;7575:18;;17916:71:0::1;7249:350:1::0;17916:71:0::1;17998:22;:43:::0;;-1:-1:-1;;;;;;17998:43:0::1;-1:-1:-1::0;;;;;17998:43:0;;;::::1;::::0;;;::::1;::::0;;17804:245::o;15998:445::-;1080:10;16118:4;16167:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;16167:34:0;;;;;;;;;;16234:35;;;;16212:123;;;;-1:-1:-1;;;16212:123:0;;7806:2:1;16212:123:0;;;7788:21:1;7845:2;7825:18;;;7818:30;7884:34;7864:18;;;7857:62;-1:-1:-1;;;7935:18:1;;;7928:36;7981:19;;16212:123:0;7604:402:1;16212:123:0;16346:67;1080:10;16369:7;16378:34;16397:15;16378:16;:34;:::i;16346:67::-;-1:-1:-1;16431:4:0;;15998:445;-1:-1:-1;;;15998:445:0:o;19032:216::-;19154:4;19176:42;1080:10;19200:9;19211:6;19176:9;:42::i;17204:295::-;1592:7;1619:6;-1:-1:-1;;;;;1619:6:0;1080:10;1681:23;1673:68;;;;-1:-1:-1;;;1673:68:0;;;;;;;:::i;:::-;17347:13:::1;::::0;-1:-1:-1;;;;;17347:13:0;;::::1;17336:24:::0;;::::1;::::0;17314:116:::1;;;::::0;-1:-1:-1;;;17314:116:0;;8346:2:1;17314:116:0::1;::::0;::::1;8328:21:1::0;8385:2;8365:18;;;8358:30;8424:34;8404:18;;;8397:62;-1:-1:-1;;;8475:18:1;;;8468:40;8525:19;;17314:116:0::1;8144:406:1::0;17314:116:0::1;-1:-1:-1::0;;;;;17441:42:0::1;17486:5;17441:42:::0;;;:33:::1;:42;::::0;;;;:50;;-1:-1:-1;;17441:50:0::1;::::0;;17204:295::o;18716:127::-;1592:7;1619:6;-1:-1:-1;;;;;1619:6:0;1080:10;1681:23;1673:68;;;;-1:-1:-1;;;1673:68:0;;;;;;;:::i;:::-;18830:5:::1;18808:12;;18823:3;18808:18;;;;:::i;:::-;18807:28;;;;:::i;:::-;18782:22;:53:::0;18716:127::o;18851:173::-;1592:7;1619:6;-1:-1:-1;;;;;1619:6:0;1080:10;1681:23;1673:68;;;;-1:-1:-1;;;1673:68:0;;;;;;;:::i;:::-;18930:21:::1;:32:::0;;;::::1;;-1:-1:-1::0;;;18930:32:0::1;-1:-1:-1::0;;;;18930:32:0;;::::1;;::::0;;18978:38:::1;::::0;::::1;::::0;::::1;::::0;18954:8;1188:14:1;1181:22;1163:41;;1151:2;1136:18;;1023:187;18057:185:0;1592:7;1619:6;-1:-1:-1;;;;;1619:6:0;1080:10;1681:23;1673:68;;;;-1:-1:-1;;;1673:68:0;;;;;;;:::i;:::-;18141:19:::1;:37:::0;;;18194:40:::1;::::0;1569:25:1;;;18194:40:0::1;::::0;1557:2:1;1542:18;18194:40:0::1;1423:177:1::0;1925:281:0;1592:7;1619:6;-1:-1:-1;;;;;1619:6:0;1080:10;1681:23;1673:68;;;;-1:-1:-1;;;1673:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2028:22:0;::::1;2006:110;;;::::0;-1:-1:-1;;;2006:110:0;;8979:2:1;2006:110:0::1;::::0;::::1;8961:21:1::0;9018:2;8998:18;;;8991:30;9057:34;9037:18;;;9030:62;-1:-1:-1;;;9108:18:1;;;9101:36;9154:19;;2006:110:0::1;8777:402:1::0;2006:110:0::1;2153:6;::::0;;2132:38:::1;::::0;-1:-1:-1;;;;;2132:38:0;;::::1;::::0;2153:6;::::1;::::0;2132:38:::1;::::0;::::1;2181:6;:17:::0;;-1:-1:-1;;;;;;2181:17:0::1;-1:-1:-1::0;;;;;2181:17:0;;;::::1;::::0;;;::::1;::::0;;1925:281::o;15096:380::-;-1:-1:-1;;;;;15232:19:0;;15224:69;;;;-1:-1:-1;;;15224:69:0;;9386:2:1;15224:69:0;;;9368:21:1;9425:2;9405:18;;;9398:30;9464:34;9444:18;;;9437:62;-1:-1:-1;;;9515:18:1;;;9508:35;9560:19;;15224:69:0;9184:401:1;15224:69:0;-1:-1:-1;;;;;15312:21:0;;15304:69;;;;-1:-1:-1;;;15304:69:0;;9792:2:1;15304:69:0;;;9774:21:1;9831:2;9811:18;;;9804:30;9870:34;9850:18;;;9843:62;-1:-1:-1;;;9921:18:1;;;9914:33;9964:19;;15304:69:0;9590:399:1;15304:69:0;-1:-1:-1;;;;;15384:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;15436:32;;1569:25:1;;;15436:32:0;;1542:18:1;15436:32:0;;;;;;;15096:380;;;:::o;19779:2300::-;-1:-1:-1;;;;;19919:20:0;;19911:71;;;;-1:-1:-1;;;19911:71:0;;10196:2:1;19911:71:0;;;10178:21:1;10235:2;10215:18;;;10208:30;10274:34;10254:18;;;10247:62;-1:-1:-1;;;10325:18:1;;;10318:36;10371:19;;19911:71:0;9994:402:1;19911:71:0;-1:-1:-1;;;;;20015:23:0;;19993:109;;;;-1:-1:-1;;;19993:109:0;;10603:2:1;19993:109:0;;;10585:21:1;10642:2;10622:18;;;10615:30;10681:34;10661:18;;;10654:62;-1:-1:-1;;;10732:18:1;;;10725:34;10776:19;;19993:109:0;10401:400:1;19993:109:0;-1:-1:-1;;;;;20136:25:0;;;;;;:17;:25;;;;;;;;20135:26;:59;;;;-1:-1:-1;;;;;;20166:28:0;;;;;;:17;:28;;;;;;;;20165:29;20135:59;20113:139;;;;-1:-1:-1;;;20113:139:0;;11008:2:1;20113:139:0;;;10990:21:1;11047:2;11027:18;;;11020:30;11086:32;11066:18;;;11059:60;11136:18;;20113:139:0;10806:354:1;20113:139:0;-1:-1:-1;;;;;20271:17:0;;;;;;:9;:17;;;;;;:27;-1:-1:-1;20271:27:0;20263:69;;;;-1:-1:-1;;;20263:69:0;;11367:2:1;20263:69:0;;;11349:21:1;11406:2;11386:18;;;11379:30;11445:31;11425:18;;;11418:59;11494:18;;20263:69:0;11165:353:1;20263:69:0;-1:-1:-1;;;;;20364:44:0;;;;;;:33;:44;;;;;;;;20363:45;:66;;;;-1:-1:-1;1592:7:0;1619:6;-1:-1:-1;;;;;20412:17:0;;;1619:6;;20412:17;;20363:66;20345:269;;;20515:22;;20505:6;20482:20;20492:9;-1:-1:-1;;;;;14844:18:0;14817:7;14844:18;;;:9;:18;;;;;;;14751:119;20482:20;:29;;;;:::i;:::-;:55;;20456:146;;;;-1:-1:-1;;;20456:146:0;;11725:2:1;20456:146:0;;;11707:21:1;11764:2;11744:18;;;11737:30;11803:31;11783:18;;;11776:59;11852:18;;20456:146:0;11523:353:1;20456:146:0;-1:-1:-1;;;;;20663:26:0;;20626:16;20663:26;;;:18;:26;;;;;;;;;:59;;-1:-1:-1;;;;;;20693:29:0;;;;;;:18;:29;;;;;;;;20663:59;20659:467;;;-1:-1:-1;20750:1:0;20659:467;;;-1:-1:-1;;;;;20788:34:0;;;;;;:23;:34;;;;;;;;20784:331;;;20891:14;;20865:20;;20855:31;;:6;:31;:::i;:::-;20854:52;;;;:::i;:::-;20843:63;;20784:331;;;-1:-1:-1;;;;;20932:31:0;;;;;;:23;:31;;;;;;;;20928:187;;;21031:14;;21006:19;;20996:30;;:6;:30;:::i;20928:187::-;-1:-1:-1;21098:1:0;20928:187;21187:4;21138:28;14844:18;;;:9;:18;;;;;;21270:29;;21329:16;;21233:66;;;;;-1:-1:-1;;;21329:16:0;;;;21328:17;:60;;;;-1:-1:-1;21375:13:0;;-1:-1:-1;;;;;21362:26:0;;;21375:13;;21362:26;21328:60;:98;;;;-1:-1:-1;21405:21:0;;-1:-1:-1;;;21405:21:0;;;;21328:98;:171;;;;-1:-1:-1;21470:29:0;;21453:13;;-1:-1:-1;;;;;21453:13:0;14817:7;14844:18;;;:9;:18;;;;;;21443:56;21328:171;21310:390;;;21530:19;21526:163;;;21593:29;;21570:52;;21641:32;21652:20;21641:10;:32::i;:::-;21712:22;21737:19;21747:8;21737:6;:19;:::i;:::-;21785:4;21767:24;;;;:9;:24;;;;;:36;;21712:44;;-1:-1:-1;21795:8:0;;21767:24;;;:36;;21795:8;;21767:36;:::i;:::-;;;;-1:-1:-1;;;;;;;21834:17:0;;;;;;:9;:17;;;;;;:26;;21854:6;;21834:26;:::i;:::-;-1:-1:-1;;;;;21814:17:0;;;;;;;:9;:17;;;;;;:46;;;;21871:20;;;;;;;;:38;;21895:14;;21814:17;21871:38;;21895:14;;21871:38;:::i;:::-;;;;-1:-1:-1;;21926:12:0;;21922:91;;21960:41;;1569:25:1;;;21985:4:0;;-1:-1:-1;;;;;21960:41:0;;;;;1557:2:1;1542:18;21960:41:0;;;;;;;21922:91;22045:9;-1:-1:-1;;;;;22028:43:0;22037:6;-1:-1:-1;;;;;22028:43:0;;22056:14;22028:43;;;;1569:25:1;;1557:2;1542:18;;1423:177;22028:43:0;;;;;;;;19900:2179;;;;19779:2300;;;:::o;22087:305::-;13200:16;:23;;-1:-1:-1;;;;13200:23:0;-1:-1:-1;;;13200:23:0;;;22169:39:::1;22186:21:::0;22169:16:::1;:39::i;:::-;22246:21;22282:20:::0;;22278:107:::1;;22319:22;::::0;:54:::1;::::0;-1:-1:-1;;;;;22319:22:0;;::::1;::::0;22351:21:::1;22319:54:::0;::::1;;;::::0;:22:::1;:54:::0;:22;:54;22351:21;22319:22;:54;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;22278:107;-1:-1:-1::0;;13246:16:0;:24;;-1:-1:-1;;;;13246:24:0;;;22087:305::o;22400:589::-;22550:16;;;22564:1;22550:16;;;;;;;;22526:21;;22550:16;;;;;;;;;;-1:-1:-1;22550:16:0;22526:40;;22595:4;22577;22582:1;22577:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;22577:23:0;;;:7;;;;;;;;;;:23;;;;22621:15;;:22;;;-1:-1:-1;;;22621:22:0;;;;:15;;;;;:20;;:22;;;;;22577:7;;22621:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22611:4;22616:1;22611:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;22611:32:0;;;:7;;;;;;;;;:32;22688:15;;22656:62;;22673:4;;22688:15;22706:11;22656:8;:62::i;:::-;22757:15;;:224;;-1:-1:-1;;;22757:224:0;;-1:-1:-1;;;;;22757:15:0;;;;:66;;:224;;22838:11;;22757:15;;22908:4;;22935;;22955:15;;22757:224;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22455:534;22400:589;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1839:456::-;1916:6;1924;1932;1985:2;1973:9;1964:7;1960:23;1956:32;1953:52;;;2001:1;1998;1991:12;1953:52;2040:9;2027:23;2059:31;2084:5;2059:31;:::i;:::-;2109:5;-1:-1:-1;2166:2:1;2151:18;;2138:32;2179:33;2138:32;2179:33;:::i;:::-;1839:456;;2231:7;;-1:-1:-1;;;2285:2:1;2270:18;;;;2257:32;;1839:456::o;2300:247::-;2359:6;2412:2;2400:9;2391:7;2387:23;2383:32;2380:52;;;2428:1;2425;2418:12;2380:52;2467:9;2454:23;2486:31;2511:5;2486:31;:::i;:::-;2536:5;2300:247;-1:-1:-1;;;2300:247:1:o;2552:160::-;2617:20;;2673:13;;2666:21;2656:32;;2646:60;;2702:1;2699;2692:12;2646:60;2552:160;;;:::o;2717:315::-;2782:6;2790;2843:2;2831:9;2822:7;2818:23;2814:32;2811:52;;;2859:1;2856;2849:12;2811:52;2898:9;2885:23;2917:31;2942:5;2917:31;:::i;:::-;2967:5;-1:-1:-1;2991:35:1;3022:2;3007:18;;2991:35;:::i;:::-;2981:45;;2717:315;;;;;:::o;3261:180::-;3320:6;3373:2;3361:9;3352:7;3348:23;3344:32;3341:52;;;3389:1;3386;3379:12;3341:52;-1:-1:-1;3412:23:1;;3261:180;-1:-1:-1;3261:180:1:o;3706:::-;3762:6;3815:2;3803:9;3794:7;3790:23;3786:32;3783:52;;;3831:1;3828;3821:12;3783:52;3854:26;3870:9;3854:26;:::i;3891:388::-;3959:6;3967;4020:2;4008:9;3999:7;3995:23;3991:32;3988:52;;;4036:1;4033;4026:12;3988:52;4075:9;4062:23;4094:31;4119:5;4094:31;:::i;:::-;4144:5;-1:-1:-1;4201:2:1;4186:18;;4173:32;4214:33;4173:32;4214:33;:::i;:::-;4266:7;4256:17;;;3891:388;;;;;:::o;4284:380::-;4363:1;4359:12;;;;4406;;;4427:61;;4481:4;4473:6;4469:17;4459:27;;4427:61;4534:2;4526:6;4523:14;4503:18;4500:38;4497:161;;4580:10;4575:3;4571:20;4568:1;4561:31;4615:4;4612:1;4605:15;4643:4;4640:1;4633:15;4497:161;;4284:380;;;:::o;5079:356::-;5281:2;5263:21;;;5300:18;;;5293:30;5359:34;5354:2;5339:18;;5332:62;5426:2;5411:18;;5079:356::o;5440:127::-;5501:10;5496:3;5492:20;5489:1;5482:31;5532:4;5529:1;5522:15;5556:4;5553:1;5546:15;5572:125;5637:9;;;5658:10;;;5655:36;;;5671:18;;:::i;5702:422::-;5791:1;5834:5;5791:1;5848:270;5869:7;5859:8;5856:21;5848:270;;;5928:4;5924:1;5920:6;5916:17;5910:4;5907:27;5904:53;;;5937:18;;:::i;:::-;5987:7;5977:8;5973:22;5970:55;;;6007:16;;;;5970:55;6086:22;;;;6046:15;;;;5848:270;;;5852:3;5702:422;;;;;:::o;6129:806::-;6178:5;6208:8;6198:80;;-1:-1:-1;6249:1:1;6263:5;;6198:80;6297:4;6287:76;;-1:-1:-1;6334:1:1;6348:5;;6287:76;6379:4;6397:1;6392:59;;;;6465:1;6460:130;;;;6372:218;;6392:59;6422:1;6413:10;;6436:5;;;6460:130;6497:3;6487:8;6484:17;6481:43;;;6504:18;;:::i;:::-;-1:-1:-1;;6560:1:1;6546:16;;6575:5;;6372:218;;6674:2;6664:8;6661:16;6655:3;6649:4;6646:13;6642:36;6636:2;6626:8;6623:16;6618:2;6612:4;6609:12;6605:35;6602:77;6599:159;;;-1:-1:-1;6711:19:1;;;6743:5;;6599:159;6790:34;6815:8;6809:4;6790:34;:::i;:::-;6860:6;6856:1;6852:6;6848:19;6839:7;6836:32;6833:58;;;6871:18;;:::i;:::-;6909:20;;6129:806;-1:-1:-1;;;6129:806:1:o;6940:131::-;7000:5;7029:36;7056:8;7050:4;7029:36;:::i;7076:168::-;7149:9;;;7180;;7197:15;;;7191:22;;7177:37;7167:71;;7218:18;;:::i;8011:128::-;8078:9;;;8099:11;;;8096:37;;;8113:18;;:::i;8555:217::-;8595:1;8621;8611:132;;8665:10;8660:3;8656:20;8653:1;8646:31;8700:4;8697:1;8690:15;8728:4;8725:1;8718:15;8611:132;-1:-1:-1;8757:9:1;;8555:217::o;12013:127::-;12074:10;12069:3;12065:20;12062:1;12055:31;12105:4;12102:1;12095:15;12129:4;12126:1;12119:15;12145:251;12215:6;12268:2;12256:9;12247:7;12243:23;12239:32;12236:52;;;12284:1;12281;12274:12;12236:52;12316:9;12310:16;12335:31;12360:5;12335:31;:::i;12401:980::-;12663:4;12711:3;12700:9;12696:19;12742:6;12731:9;12724:25;12768:2;12806:6;12801:2;12790:9;12786:18;12779:34;12849:3;12844:2;12833:9;12829:18;12822:31;12873:6;12908;12902:13;12939:6;12931;12924:22;12977:3;12966:9;12962:19;12955:26;;13016:2;13008:6;13004:15;12990:29;;13037:1;13047:195;13061:6;13058:1;13055:13;13047:195;;;13126:13;;-1:-1:-1;;;;;13122:39:1;13110:52;;13217:15;;;;13182:12;;;;13158:1;13076:9;13047:195;;;-1:-1:-1;;;;;;;13298:32:1;;;;13293:2;13278:18;;13271:60;-1:-1:-1;;;13362:3:1;13347:19;13340:35;13259:3;12401:980;-1:-1:-1;;;12401:980:1:o

Swarm Source

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