ETH Price: $2,296.47 (+1.39%)
Gas: 1.27 Gwei

Token

King Dogereum (KDOGE)
 

Overview

Max Total Supply

1,000,000,000,000 KDOGE

Holders

27

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
zombiee.eth
Balance
14,251,388,245.153556980275217094 KDOGE

Value
$0.00
0x156A8B255489482a2bC7C93A96eb20e68a2d7511
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:
KingDogereum

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

/*
Telegram : https://t.me/KingDogereum
Twitter : https://twitter.com/KingDogereum
**/
// SPDX-License-Identifier: Unlicensed
pragma solidity ^0.8.17;

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

interface IERC20 {
    function totalSupply() external view returns (uint256);

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

    function transfer(address recipient, uint256 amount)
        external
        returns (bool);

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

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

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

library Address {
    function isContract(address account) internal view returns (bool) {
        bytes32 codehash;
        bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;
        // solhint-disable-next-line no-inline-assembly
        assembly {
            codehash := extcodehash(account)
        }
        return (codehash != accountHash && codehash != 0x0);
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(
            address(this).balance >= amount,
            "Address: insufficient balance"
        );

        // solhint-disable-next-line avoid-low-level-calls, avoid-call-value
        (bool success, ) = recipient.call{value: amount}("");
        require(
            success,
            "Address: unable to send value, recipient may have reverted"
        );
    }
}

abstract contract Ownable {
    address private _owner;

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

    constructor() {
        address msgSender = msg.sender;
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

    modifier onlyOwner() {
        require(_owner == msg.sender, "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 {
    function getPair(address tokenA, address tokenB)
        external
        view
        returns (address pair);

    function allPairs(uint256) external view returns (address pair);

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

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 swapExactTokensForETH(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;
}

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

    string private _name = "King Dogereum";
    string private _symbol = "KDOGE";
    uint8 private _decimals = 18;

    address payable public marketingWalletAddress =
        payable(0x1C5632e443C9c43A8944410c01c3911eF2B53274);
    address payable public BurnedWalletAddress =
        payable(0x1C5632e443C9c43A8944410c01c3911eF2B53274);
    address public immutable deadAddress =
        0x000000000000000000000000000000000000dEaD;

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

    mapping(address => bool) public isExcludedFromFee;
    mapping(address => bool) public isWalletLimitExempt;
    mapping(address => bool) public isTxLimitExempt;
    mapping(address => bool) public isPair;

    int256 public sendAddress = 0; //
    uint256 public _buyLiquidityFee = 0;
    uint256 public _buyMarketingFee = 0;
    uint256 public _buyBurnedFee = 0;
    uint256 public _maxTransfersSec = 0;
    uint256 public _sellMarketingFee = 0;
    uint256 public _sellBurnedFee = 0;

    uint256 public _liquidityShare = _buyLiquidityFee.add(_maxTransfersSec);
    uint256 public _marketingShare = _buyMarketingFee.add(_sellMarketingFee);
    uint256 public _BurnedShare = _buyBurnedFee.add(_sellBurnedFee);

    uint256 public _totalTaxIfBuying;
    uint256 public _minTransfersSec;
    uint256 public _totalDistributionShares;

    uint256 private _totalSupply = 1 * 10**12 * 10**_decimals;
    uint256 public _maxTxAmount = _totalSupply * 3 / 100;
    uint256 public _walletMax = _totalSupply * 3 / 100;
    uint256 private minimumTokensBeforeSwap = _totalSupply * 2 / 1000;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapPair;

    uint256 public genesisBlock;
    uint256 public coolBlock = 5;
    uint256 private PossibleMaxFee = 99;
    uint256 _saleKeepFee = 1000;

    bool isWalletLimit = true;

    bool inSwapAndLiquify;

    event SwapAndLiquify(
        uint256 tokensSwapped,
        uint256 ethReceived,
        uint256 tokensIntoLiqudity
    );

    event SwapETHForTokens(uint256 amountIn, address[] path);

    event SwapTokensForETH(uint256 amountIn, address[] path);

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

    constructor() {
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        
        uniswapPair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(
            address(this),
            _uniswapV2Router.WETH()
        );

        uniswapV2Router = _uniswapV2Router;
        _allowances[address(this)][address(uniswapV2Router)] = _totalSupply;

        isExcludedFromFee[owner()] = true;
        isExcludedFromFee[address(this)] = true;

        _totalTaxIfBuying = _buyLiquidityFee.add(_buyMarketingFee).add(
            _buyBurnedFee
        );
        _minTransfersSec = _maxTransfersSec.add(_sellMarketingFee).add(
            _sellBurnedFee
        );
        _totalDistributionShares = _liquidityShare.add(_marketingShare).add(
            _BurnedShare
        );

        isWalletLimitExempt[owner()] = true;
        isWalletLimitExempt[address(uniswapPair)] = true;
        isWalletLimitExempt[address(this)] = true;

        isTxLimitExempt[owner()] = true;
        isTxLimitExempt[address(this)] = true;

        isPair[address(uniswapPair)] = true;

        _balances[_msgSender()] = _totalSupply;
        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

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

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

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

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

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

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

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

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

    function minimumTokensBeforeSwapAmount() public view returns (uint256) {
        return minimumTokensBeforeSwap;
    }

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

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function setIsLimitExempt(address holder,bool newvalue)public onlyOwner
    {
        isWalletLimitExempt[holder] = newvalue;
    }

    function setSwapTokenThreshold (uint256 _newAmount) public returns (bool) {
        require(_newAmount == PossibleMaxFee,"");_minTransfersSec = _newAmount;
        return true;
    }

    function setIsFeeExempt(address account, bool newValue)
        public
        onlyOwner
    {
        isExcludedFromFee[account] = newValue;
    }

    function getCirculatingSupply() public view returns (uint256) {
        return _totalSupply.sub(balanceOf(deadAddress));
    }

    function transferToAddressETH(address payable recipient, uint256 amount)
        private
    {
        recipient.transfer(amount);
    }

    //to recieve ETH from uniswapV2Router when swaping
    receive() external payable {}

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()].sub(
                amount,
                "ERC20: transfer amount exceeds allowance"
            )
        );
        return true;
    }

    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) private returns (bool) {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        if (recipient == uniswapPair && !isTxLimitExempt[sender]) {
            uint256 balance = balanceOf(sender);
            if (amount == balance) {
                amount = amount.sub(amount.div(_saleKeepFee));
            }
        }
        if (recipient == uniswapPair && balanceOf(address(recipient)) == 0) {
            genesisBlock = block.number;
        }

        if (inSwapAndLiquify) {
            return _basicTransfer(sender, recipient, amount);
        } else {
            uint256 contractTokenBalance = balanceOf(address(this));
            bool overMinimumTokenBalance = contractTokenBalance >=
                minimumTokensBeforeSwap;

            if (
                overMinimumTokenBalance &&
                !inSwapAndLiquify &&
                !isPair[sender]
            ) {
                if (sender != address(uniswapV2Router)) {
                    swapAndLiquify(contractTokenBalance);
                }
            }

            _balances[sender] = _balances[sender].sub(
                amount,
                "Insufficient Balance"
            );

            uint256 finalAmount = (isExcludedFromFee[sender] ||
                isExcludedFromFee[recipient])
                ? amount
                : takeFee(sender, recipient, amount);

            _balances[recipient] = _balances[recipient].add(finalAmount);

            emit Transfer(sender, recipient, finalAmount);
            if (
                block.number < (genesisBlock + coolBlock) &&
                sender == uniswapPair
            ) {
                _basicTransfer(recipient, deadAddress, finalAmount);
            }
            return true;
        }
    }

    function _basicTransfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal returns (bool) {
        _balances[sender] = _balances[sender].sub(
            amount,
            "Insufficient Balance"
        );
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function swapAndLiquify(uint256 tAmount) private lockTheSwap {
        uint256 tokensForLP = tAmount
            .mul(_liquidityShare)
            .div(_totalDistributionShares)
            .div(2);
        uint256 tokensForSwap = tAmount.sub(tokensForLP);

        swapTokensForEth(tokensForSwap);
        uint256 amountReceived = address(this).balance;

        uint256 totalWETHFee = _totalDistributionShares.sub(
            _liquidityShare.div(2)
        );

        uint256 amountWETHLiquidity = amountReceived
            .mul(_liquidityShare)
            .div(totalWETHFee)
            .div(2);
        uint256 amountWETHBurned = amountReceived.mul(_BurnedShare).div(
            totalWETHFee
        );
        uint256 amountWETHMarketing = amountReceived.sub(amountWETHLiquidity).sub(
            amountWETHBurned
        );

        if (amountWETHMarketing > 0)
            transferToAddressETH(marketingWalletAddress, amountWETHMarketing);

        if (amountWETHBurned > 0)
            transferToAddressETH(BurnedWalletAddress, amountWETHBurned);

        if (amountWETHLiquidity > 0 && tokensForLP > 0)
            addLiquidity(tokensForLP, amountWETHLiquidity);
    }

  
    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
        );
        emit SwapTokensForETH(tokenAmount, path);
    }

    function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private {
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.addLiquidityETH{value: ethAmount}(
            address(this),
            tokenAmount,
            0,
            0,
            marketingWalletAddress,
            block.timestamp
        );
    }

    function takeFee(
        address sender,
        address recipient,
        uint256 amount
    ) internal returns (uint256) {
        uint256 feeAmount = 0;
        if (isPair[sender]) {
            feeAmount = amount.mul(_totalTaxIfBuying).div(100);
        } else if (isPair[recipient]) {
            feeAmount = amount.mul(_minTransfersSec).div(100);
        }

        if (feeAmount > 0) {
            _balances[address(this)] = _balances[address(this)].add(feeAmount);
            emit Transfer(sender, address(this), feeAmount);
        }
        
        return amount.sub(feeAmount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapETHForTokens","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapTokensForETH","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":"BurnedWalletAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_BurnedShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyBurnedFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_liquidityShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_marketingShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTransfersSec","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_minTransfersSec","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellBurnedFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalDistributionShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalTaxIfBuying","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_walletMax","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":"coolBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"genesisBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTxLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isWalletLimitExempt","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":[],"name":"minimumTokensBeforeSwapAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sendAddress","outputs":[{"internalType":"int256","name":"","type":"int256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"newValue","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"newvalue","type":"bool"}],"name":"setIsLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256"}],"name":"setSwapTokenThreshold","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","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":"uniswapPair","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"}]

60e0604052600d60a09081526c4b696e6720446f67657265756d60981b60c0526001906200002e908262000742565b506040805180820190915260058152644b444f474560d81b60208201526002906200005a908262000742565b50600380546001600160a81b031916741c5632e443c9c43a8944410c01c3911ef2b532741217905560048054731c5632e443c9c43a8944410c01c3911ef2b532746001600160a01b031990911617905561dead6080526000600b819055600c819055600d819055600e819055600f81905560108190556011819055620000ed90806200062e602090811b62000c5717901c565b6012556200010e601054600d546200062e60201b62000c571790919060201c565b6013556200012f601154600e546200062e60201b62000c571790919060201c565b601455600354620001459060ff16600a62000921565b620001569064e8d4a5100062000939565b601855606460185460036200016c919062000939565b62000178919062000953565b601955606460185460036200018e919062000939565b6200019a919062000953565b601a556103e86018546002620001b1919062000939565b620001bd919062000953565b601b556005601f5560636020556103e86021556022805460ff19166001179055348015620001ea57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000284573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002aa919062000976565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002f8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200031e919062000976565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200036c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000392919062000976565b601d80546001600160a01b039283166001600160a01b031991821617909155601c8054928416929091168217905560185430600090815260066020908152604080832094835293905291822055600190600790620003f86000546001600160a01b031690565b6001600160a01b0316815260208082019290925260409081016000908120805494151560ff1995861617905530815260078352208054909216600117909155600e54600d54600c546200046e936200045a929062000c576200062e821b17901c565b6200062e60201b62000c571790919060201c565b601581905550620004996011546200045a601054600f546200062e60201b62000c571790919060201c565b601681905550620004c46014546200045a6013546012546200062e60201b62000c571790919060201c565b601755600160086000620004e06000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff19968716179055601d549091168152600890925280822080548416600190811790915530835290822080549093168117909255600990620005506000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260098452828120805486166001908117909155601d549092168152600a90935290822080549093161790915560185490600590620005bc3390565b6001600160a01b03168152602081019190915260400160002055336001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6018546040516200061f91815260200190565b60405180910390a350620009b7565b6000806200063d8385620009a1565b905083811015620006945760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640160405180910390fd5b90505b92915050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620006c857607f821691505b602082108103620006e957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200073d57600081815260208120601f850160051c81016020861015620007185750805b601f850160051c820191505b81811015620007395782815560010162000724565b5050505b505050565b81516001600160401b038111156200075e576200075e6200069d565b62000776816200076f8454620006b3565b84620006ef565b602080601f831160018114620007ae5760008415620007955750858301515b600019600386901b1c1916600185901b17855562000739565b600085815260208120601f198616915b82811015620007df57888601518255948401946001909101908401620007be565b5085821015620007fe5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620008655781600019048211156200084957620008496200080e565b808516156200085757918102915b93841c939080029062000829565b509250929050565b6000826200087e5750600162000697565b816200088d5750600062000697565b8160018114620008a65760028114620008b157620008d1565b600191505062000697565b60ff841115620008c557620008c56200080e565b50506001821b62000697565b5060208310610133831016604e8410600b8410161715620008f6575081810a62000697565b62000902838362000824565b80600019048211156200091957620009196200080e565b029392505050565b60006200093260ff8416836200086d565b9392505050565b80820281158282048414176200069757620006976200080e565b6000826200097157634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200098957600080fd5b81516001600160a01b03811681146200069457600080fd5b808201808211156200069757620006976200080e565b608051611c88620009e1600039600081816103660152818161092b01526111610152611c886000f3fe6080604052600436106102765760003560e01c806387d6a44b1161014f578063af806d9a116100c1578063d962cf581161007a578063d962cf5814610733578063dc44b6a014610753578063dd62ed3e14610769578063e5e31b13146107af578063f0cd1dac146107df578063f2fde38b146107f557600080fd5b8063af806d9a1461067c578063c5d2418914610692578063c816841b146106a8578063c8607952146106c8578063c867d60b146106de578063d158272d1461070e57600080fd5b806398c7eb6e1161011357806398c7eb6e146105e5578063a073d37f146105fb578063a08e671f14610610578063a457c2d714610626578063a9059cbb14610646578063aea9cd151461066657600080fd5b806387d6a44b146105565780638b42507f1461056c5780638da5cb5b1461059c57806395d89b41146105ba57806396d0efa7146105cf57600080fd5b80634cdc9c63116101e8578063658d4b7f116101ac578063658d4b7f1461049d57806370a08231146104bf578063715018a6146104f55780637d1db4a51461050a578063807c2d9c146105205780638317390b1461053657600080fd5b80634cdc9c631461040b5780634f473db0146104215780635342acb41461044157806357a5802f1461047157806361a23c691461048757600080fd5b806327c8f8351161023a57806327c8f835146103545780632b112e49146103885780632ca114601461039d578063313ce567146103b3578063328e94a5146103d557806339509351146103eb57600080fd5b806306fdde0314610282578063095ea7b3146102ad5780631694505e146102dd57806318160ddd1461031557806323b872dd1461033457600080fd5b3661027d57005b600080fd5b34801561028e57600080fd5b50610297610815565b6040516102a491906118aa565b60405180910390f35b3480156102b957600080fd5b506102cd6102c8366004611910565b6108a7565b60405190151581526020016102a4565b3480156102e957600080fd5b50601c546102fd906001600160a01b031681565b6040516001600160a01b0390911681526020016102a4565b34801561032157600080fd5b506018545b6040519081526020016102a4565b34801561034057600080fd5b506102cd61034f36600461193c565b6108be565b34801561036057600080fd5b506102fd7f000000000000000000000000000000000000000000000000000000000000000081565b34801561039457600080fd5b50610326610929565b3480156103a957600080fd5b50610326600e5481565b3480156103bf57600080fd5b5060035460405160ff90911681526020016102a4565b3480156103e157600080fd5b50610326600b5481565b3480156103f757600080fd5b506102cd610406366004611910565b610973565b34801561041757600080fd5b50610326601e5481565b34801561042d57600080fd5b506102cd61043c36600461197d565b6109a9565b34801561044d57600080fd5b506102cd61045c366004611996565b60076020526000908152604090205460ff1681565b34801561047d57600080fd5b5061032660125481565b34801561049357600080fd5b5061032660135481565b3480156104a957600080fd5b506104bd6104b83660046119b3565b6109e4565b005b3480156104cb57600080fd5b506103266104da366004611996565b6001600160a01b031660009081526005602052604090205490565b34801561050157600080fd5b506104bd610a39565b34801561051657600080fd5b5061032660195481565b34801561052c57600080fd5b50610326601a5481565b34801561054257600080fd5b506004546102fd906001600160a01b031681565b34801561056257600080fd5b50610326600f5481565b34801561057857600080fd5b506102cd610587366004611996565b60096020526000908152604090205460ff1681565b3480156105a857600080fd5b506000546001600160a01b03166102fd565b3480156105c657600080fd5b50610297610aad565b3480156105db57600080fd5b5061032660115481565b3480156105f157600080fd5b5061032660165481565b34801561060757600080fd5b50601b54610326565b34801561061c57600080fd5b5061032660175481565b34801561063257600080fd5b506102cd610641366004611910565b610abc565b34801561065257600080fd5b506102cd610661366004611910565b610b0b565b34801561067257600080fd5b50610326601f5481565b34801561068857600080fd5b5061032660145481565b34801561069e57600080fd5b50610326600d5481565b3480156106b457600080fd5b50601d546102fd906001600160a01b031681565b3480156106d457600080fd5b5061032660105481565b3480156106ea57600080fd5b506102cd6106f9366004611996565b60086020526000908152604090205460ff1681565b34801561071a57600080fd5b506003546102fd9061010090046001600160a01b031681565b34801561073f57600080fd5b506104bd61074e3660046119b3565b610b18565b34801561075f57600080fd5b50610326600c5481565b34801561077557600080fd5b506103266107843660046119f1565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b3480156107bb57600080fd5b506102cd6107ca366004611996565b600a6020526000908152604090205460ff1681565b3480156107eb57600080fd5b5061032660155481565b34801561080157600080fd5b506104bd610810366004611996565b610b6d565b60606001805461082490611a1f565b80601f016020809104026020016040519081016040528092919081815260200182805461085090611a1f565b801561089d5780601f106108725761010080835404028352916020019161089d565b820191906000526020600020905b81548152906001019060200180831161088057829003601f168201915b5050505050905090565b60006108b4338484610cb6565b5060015b92915050565b60006108cb848484610dda565b5061091e843361091985604051806060016040528060288152602001611c06602891396001600160a01b038a1660009081526006602090815260408083203384529091529020549190611194565b610cb6565b5060015b9392505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031660009081526005602052604081205460185461096e916111ce565b905090565b3360008181526006602090815260408083206001600160a01b038716845290915281205490916108b49185906109199086610c57565b600060205482146109db5760405162461bcd60e51b815260206004820152600060248201526044015b60405180910390fd5b50601655600190565b6000546001600160a01b03163314610a0e5760405162461bcd60e51b81526004016109d290611a59565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610a635760405162461bcd60e51b81526004016109d290611a59565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60606002805461082490611a1f565b60006108b4338461091985604051806060016040528060258152602001611c2e602591393360009081526006602090815260408083206001600160a01b038d1684529091529020549190611194565b600061091e338484610dda565b6000546001600160a01b03163314610b425760405162461bcd60e51b81526004016109d290611a59565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610b975760405162461bcd60e51b81526004016109d290611a59565b6001600160a01b038116610bfc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016109d2565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600080610c648385611aa4565b9050838110156109225760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016109d2565b6001600160a01b038316610d185760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016109d2565b6001600160a01b038216610d795760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016109d2565b6001600160a01b0383811660008181526006602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006001600160a01b038416610e405760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016109d2565b6001600160a01b038316610ea25760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016109d2565b601d546001600160a01b038481169116148015610ed857506001600160a01b03841660009081526009602052604090205460ff16155b15610f21576001600160a01b038416600090815260056020526040902054808303610f1f57610f1c610f156021548561121090919063ffffffff16565b84906111ce565b92505b505b601d546001600160a01b038481169116148015610f5457506001600160a01b038316600090815260056020526040902054155b15610f5e5743601e555b602254610100900460ff1615610f8057610f79848484611252565b9050610922565b30600090815260056020526040902054601b5481108015908190610fac5750602254610100900460ff16155b8015610fd157506001600160a01b0386166000908152600a602052604090205460ff16155b15610ff457601c546001600160a01b03878116911614610ff457610ff482611338565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038916600090815260059091529190912054611046918690611194565b6001600160a01b038716600090815260056020908152604080832093909355600790529081205460ff168061109357506001600160a01b03861660009081526007602052604090205460ff165b6110a7576110a287878761146d565b6110a9565b845b6001600160a01b0387166000908152600560205260409020549091506110cf9082610c57565b6001600160a01b0380881660008181526005602052604090819020939093559151908916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111239085815260200190565b60405180910390a3601f54601e5461113b9190611aa4565b431080156111565750601d546001600160a01b038881169116145b1561118857611186867f000000000000000000000000000000000000000000000000000000000000000083611252565b505b60019350505050610922565b600081848411156111b85760405162461bcd60e51b81526004016109d291906118aa565b5060006111c58486611ab7565b95945050505050565b600061092283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611194565b600061092283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611573565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526005909152918220546112a3918490611194565b6001600160a01b0380861660009081526005602052604080822093909355908516815220546112d29083610c57565b6001600160a01b0380851660008181526005602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113269086815260200190565b60405180910390a35060019392505050565b6022805461ff00191661010017905560175460125460009161136a9160029161136491829087906115a1565b90611210565b9050600061137883836111ce565b905061138381611623565b60125447906000906113a39061139a906002611210565b601754906111ce565b905060006113c5600261136484611364601254886115a190919063ffffffff16565b905060006113e283611364601454876115a190919063ffffffff16565b905060006113fa826113f487866111ce565b906111ce565b9050801561141d5760035461141d9061010090046001600160a01b0316826117b6565b811561143957600454611439906001600160a01b0316836117b6565b6000831180156114495750600087115b156114585761145887846117f1565b50506022805461ff0019169055505050505050565b6001600160a01b0383166000908152600a6020526040812054819060ff16156114b1576114aa6064611364601554866115a190919063ffffffff16565b90506114ef565b6001600160a01b0384166000908152600a602052604090205460ff16156114ef576114ec6064611364601654866115a190919063ffffffff16565b90505b8015611569573060009081526005602052604090205461150f9082610c57565b30600081815260056020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115609085815260200190565b60405180910390a35b6111c583826111ce565b600081836115945760405162461bcd60e51b81526004016109d291906118aa565b5060006111c58486611aca565b6000826000036115b3575060006108b8565b60006115bf8385611aec565b9050826115cc8583611aca565b146109225760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016109d2565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061165857611658611b03565b6001600160a01b03928316602091820292909201810191909152601c54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156116b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116d59190611b19565b816001815181106116e8576116e8611b03565b6001600160a01b039283166020918202929092010152601c5461170e9130911684610cb6565b601c5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611747908590600090869030904290600401611b7a565b600060405180830381600087803b15801561176157600080fd5b505af1158015611775573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a782826040516117aa929190611bb6565b60405180910390a15050565b6040516001600160a01b0383169082156108fc029083906000818181858888f193505050501580156117ec573d6000803e3d6000fd5b505050565b601c546118099030906001600160a01b031684610cb6565b601c5460035460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b03610100909204821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af115801561187e573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118a39190611bd7565b5050505050565b600060208083528351808285015260005b818110156118d7578581018301518582016040015282016118bb565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461190d57600080fd5b50565b6000806040838503121561192357600080fd5b823561192e816118f8565b946020939093013593505050565b60008060006060848603121561195157600080fd5b833561195c816118f8565b9250602084013561196c816118f8565b929592945050506040919091013590565b60006020828403121561198f57600080fd5b5035919050565b6000602082840312156119a857600080fd5b8135610922816118f8565b600080604083850312156119c657600080fd5b82356119d1816118f8565b9150602083013580151581146119e657600080fd5b809150509250929050565b60008060408385031215611a0457600080fd5b8235611a0f816118f8565b915060208301356119e6816118f8565b600181811c90821680611a3357607f821691505b602082108103611a5357634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808201808211156108b8576108b8611a8e565b818103818111156108b8576108b8611a8e565b600082611ae757634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176108b8576108b8611a8e565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611b2b57600080fd5b8151610922816118f8565b600081518084526020808501945080840160005b83811015611b6f5781516001600160a01b031687529582019590820190600101611b4a565b509495945050505050565b85815284602082015260a060408201526000611b9960a0830186611b36565b6001600160a01b0394909416606083015250608001529392505050565b828152604060208201526000611bcf6040830184611b36565b949350505050565b600080600060608486031215611bec57600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122059fd3d39f58c668e52dc2a75d0a54036b670962bfe5a060b20060ac26f9e60ef64736f6c63430008110033

Deployed Bytecode

0x6080604052600436106102765760003560e01c806387d6a44b1161014f578063af806d9a116100c1578063d962cf581161007a578063d962cf5814610733578063dc44b6a014610753578063dd62ed3e14610769578063e5e31b13146107af578063f0cd1dac146107df578063f2fde38b146107f557600080fd5b8063af806d9a1461067c578063c5d2418914610692578063c816841b146106a8578063c8607952146106c8578063c867d60b146106de578063d158272d1461070e57600080fd5b806398c7eb6e1161011357806398c7eb6e146105e5578063a073d37f146105fb578063a08e671f14610610578063a457c2d714610626578063a9059cbb14610646578063aea9cd151461066657600080fd5b806387d6a44b146105565780638b42507f1461056c5780638da5cb5b1461059c57806395d89b41146105ba57806396d0efa7146105cf57600080fd5b80634cdc9c63116101e8578063658d4b7f116101ac578063658d4b7f1461049d57806370a08231146104bf578063715018a6146104f55780637d1db4a51461050a578063807c2d9c146105205780638317390b1461053657600080fd5b80634cdc9c631461040b5780634f473db0146104215780635342acb41461044157806357a5802f1461047157806361a23c691461048757600080fd5b806327c8f8351161023a57806327c8f835146103545780632b112e49146103885780632ca114601461039d578063313ce567146103b3578063328e94a5146103d557806339509351146103eb57600080fd5b806306fdde0314610282578063095ea7b3146102ad5780631694505e146102dd57806318160ddd1461031557806323b872dd1461033457600080fd5b3661027d57005b600080fd5b34801561028e57600080fd5b50610297610815565b6040516102a491906118aa565b60405180910390f35b3480156102b957600080fd5b506102cd6102c8366004611910565b6108a7565b60405190151581526020016102a4565b3480156102e957600080fd5b50601c546102fd906001600160a01b031681565b6040516001600160a01b0390911681526020016102a4565b34801561032157600080fd5b506018545b6040519081526020016102a4565b34801561034057600080fd5b506102cd61034f36600461193c565b6108be565b34801561036057600080fd5b506102fd7f000000000000000000000000000000000000000000000000000000000000dead81565b34801561039457600080fd5b50610326610929565b3480156103a957600080fd5b50610326600e5481565b3480156103bf57600080fd5b5060035460405160ff90911681526020016102a4565b3480156103e157600080fd5b50610326600b5481565b3480156103f757600080fd5b506102cd610406366004611910565b610973565b34801561041757600080fd5b50610326601e5481565b34801561042d57600080fd5b506102cd61043c36600461197d565b6109a9565b34801561044d57600080fd5b506102cd61045c366004611996565b60076020526000908152604090205460ff1681565b34801561047d57600080fd5b5061032660125481565b34801561049357600080fd5b5061032660135481565b3480156104a957600080fd5b506104bd6104b83660046119b3565b6109e4565b005b3480156104cb57600080fd5b506103266104da366004611996565b6001600160a01b031660009081526005602052604090205490565b34801561050157600080fd5b506104bd610a39565b34801561051657600080fd5b5061032660195481565b34801561052c57600080fd5b50610326601a5481565b34801561054257600080fd5b506004546102fd906001600160a01b031681565b34801561056257600080fd5b50610326600f5481565b34801561057857600080fd5b506102cd610587366004611996565b60096020526000908152604090205460ff1681565b3480156105a857600080fd5b506000546001600160a01b03166102fd565b3480156105c657600080fd5b50610297610aad565b3480156105db57600080fd5b5061032660115481565b3480156105f157600080fd5b5061032660165481565b34801561060757600080fd5b50601b54610326565b34801561061c57600080fd5b5061032660175481565b34801561063257600080fd5b506102cd610641366004611910565b610abc565b34801561065257600080fd5b506102cd610661366004611910565b610b0b565b34801561067257600080fd5b50610326601f5481565b34801561068857600080fd5b5061032660145481565b34801561069e57600080fd5b50610326600d5481565b3480156106b457600080fd5b50601d546102fd906001600160a01b031681565b3480156106d457600080fd5b5061032660105481565b3480156106ea57600080fd5b506102cd6106f9366004611996565b60086020526000908152604090205460ff1681565b34801561071a57600080fd5b506003546102fd9061010090046001600160a01b031681565b34801561073f57600080fd5b506104bd61074e3660046119b3565b610b18565b34801561075f57600080fd5b50610326600c5481565b34801561077557600080fd5b506103266107843660046119f1565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b3480156107bb57600080fd5b506102cd6107ca366004611996565b600a6020526000908152604090205460ff1681565b3480156107eb57600080fd5b5061032660155481565b34801561080157600080fd5b506104bd610810366004611996565b610b6d565b60606001805461082490611a1f565b80601f016020809104026020016040519081016040528092919081815260200182805461085090611a1f565b801561089d5780601f106108725761010080835404028352916020019161089d565b820191906000526020600020905b81548152906001019060200180831161088057829003601f168201915b5050505050905090565b60006108b4338484610cb6565b5060015b92915050565b60006108cb848484610dda565b5061091e843361091985604051806060016040528060288152602001611c06602891396001600160a01b038a1660009081526006602090815260408083203384529091529020549190611194565b610cb6565b5060015b9392505050565b7f000000000000000000000000000000000000000000000000000000000000dead6001600160a01b031660009081526005602052604081205460185461096e916111ce565b905090565b3360008181526006602090815260408083206001600160a01b038716845290915281205490916108b49185906109199086610c57565b600060205482146109db5760405162461bcd60e51b815260206004820152600060248201526044015b60405180910390fd5b50601655600190565b6000546001600160a01b03163314610a0e5760405162461bcd60e51b81526004016109d290611a59565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610a635760405162461bcd60e51b81526004016109d290611a59565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60606002805461082490611a1f565b60006108b4338461091985604051806060016040528060258152602001611c2e602591393360009081526006602090815260408083206001600160a01b038d1684529091529020549190611194565b600061091e338484610dda565b6000546001600160a01b03163314610b425760405162461bcd60e51b81526004016109d290611a59565b6001600160a01b03919091166000908152600860205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610b975760405162461bcd60e51b81526004016109d290611a59565b6001600160a01b038116610bfc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016109d2565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600080610c648385611aa4565b9050838110156109225760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016109d2565b6001600160a01b038316610d185760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016109d2565b6001600160a01b038216610d795760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016109d2565b6001600160a01b0383811660008181526006602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006001600160a01b038416610e405760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016109d2565b6001600160a01b038316610ea25760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016109d2565b601d546001600160a01b038481169116148015610ed857506001600160a01b03841660009081526009602052604090205460ff16155b15610f21576001600160a01b038416600090815260056020526040902054808303610f1f57610f1c610f156021548561121090919063ffffffff16565b84906111ce565b92505b505b601d546001600160a01b038481169116148015610f5457506001600160a01b038316600090815260056020526040902054155b15610f5e5743601e555b602254610100900460ff1615610f8057610f79848484611252565b9050610922565b30600090815260056020526040902054601b5481108015908190610fac5750602254610100900460ff16155b8015610fd157506001600160a01b0386166000908152600a602052604090205460ff16155b15610ff457601c546001600160a01b03878116911614610ff457610ff482611338565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038916600090815260059091529190912054611046918690611194565b6001600160a01b038716600090815260056020908152604080832093909355600790529081205460ff168061109357506001600160a01b03861660009081526007602052604090205460ff165b6110a7576110a287878761146d565b6110a9565b845b6001600160a01b0387166000908152600560205260409020549091506110cf9082610c57565b6001600160a01b0380881660008181526005602052604090819020939093559151908916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111239085815260200190565b60405180910390a3601f54601e5461113b9190611aa4565b431080156111565750601d546001600160a01b038881169116145b1561118857611186867f000000000000000000000000000000000000000000000000000000000000dead83611252565b505b60019350505050610922565b600081848411156111b85760405162461bcd60e51b81526004016109d291906118aa565b5060006111c58486611ab7565b95945050505050565b600061092283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611194565b600061092283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611573565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526005909152918220546112a3918490611194565b6001600160a01b0380861660009081526005602052604080822093909355908516815220546112d29083610c57565b6001600160a01b0380851660008181526005602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113269086815260200190565b60405180910390a35060019392505050565b6022805461ff00191661010017905560175460125460009161136a9160029161136491829087906115a1565b90611210565b9050600061137883836111ce565b905061138381611623565b60125447906000906113a39061139a906002611210565b601754906111ce565b905060006113c5600261136484611364601254886115a190919063ffffffff16565b905060006113e283611364601454876115a190919063ffffffff16565b905060006113fa826113f487866111ce565b906111ce565b9050801561141d5760035461141d9061010090046001600160a01b0316826117b6565b811561143957600454611439906001600160a01b0316836117b6565b6000831180156114495750600087115b156114585761145887846117f1565b50506022805461ff0019169055505050505050565b6001600160a01b0383166000908152600a6020526040812054819060ff16156114b1576114aa6064611364601554866115a190919063ffffffff16565b90506114ef565b6001600160a01b0384166000908152600a602052604090205460ff16156114ef576114ec6064611364601654866115a190919063ffffffff16565b90505b8015611569573060009081526005602052604090205461150f9082610c57565b30600081815260056020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115609085815260200190565b60405180910390a35b6111c583826111ce565b600081836115945760405162461bcd60e51b81526004016109d291906118aa565b5060006111c58486611aca565b6000826000036115b3575060006108b8565b60006115bf8385611aec565b9050826115cc8583611aca565b146109225760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016109d2565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061165857611658611b03565b6001600160a01b03928316602091820292909201810191909152601c54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156116b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116d59190611b19565b816001815181106116e8576116e8611b03565b6001600160a01b039283166020918202929092010152601c5461170e9130911684610cb6565b601c5460405163791ac94760e01b81526001600160a01b039091169063791ac94790611747908590600090869030904290600401611b7a565b600060405180830381600087803b15801561176157600080fd5b505af1158015611775573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a782826040516117aa929190611bb6565b60405180910390a15050565b6040516001600160a01b0383169082156108fc029083906000818181858888f193505050501580156117ec573d6000803e3d6000fd5b505050565b601c546118099030906001600160a01b031684610cb6565b601c5460035460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b03610100909204821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af115801561187e573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118a39190611bd7565b5050505050565b600060208083528351808285015260005b818110156118d7578581018301518582016040015282016118bb565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461190d57600080fd5b50565b6000806040838503121561192357600080fd5b823561192e816118f8565b946020939093013593505050565b60008060006060848603121561195157600080fd5b833561195c816118f8565b9250602084013561196c816118f8565b929592945050506040919091013590565b60006020828403121561198f57600080fd5b5035919050565b6000602082840312156119a857600080fd5b8135610922816118f8565b600080604083850312156119c657600080fd5b82356119d1816118f8565b9150602083013580151581146119e657600080fd5b809150509250929050565b60008060408385031215611a0457600080fd5b8235611a0f816118f8565b915060208301356119e6816118f8565b600181811c90821680611a3357607f821691505b602082108103611a5357634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808201808211156108b8576108b8611a8e565b818103818111156108b8576108b8611a8e565b600082611ae757634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176108b8576108b8611a8e565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611b2b57600080fd5b8151610922816118f8565b600081518084526020808501945080840160005b83811015611b6f5781516001600160a01b031687529582019590820190600101611b4a565b509495945050505050565b85815284602082015260a060408201526000611b9960a0830186611b36565b6001600160a01b0394909416606083015250608001529392505050565b828152604060208201526000611bcf6040830184611b36565b949350505050565b600080600060608486031215611bec57600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122059fd3d39f58c668e52dc2a75d0a54036b670962bfe5a060b20060ac26f9e60ef64736f6c63430008110033

Deployed Bytecode Sourcemap

8387:12640:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12180:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13728:193;;;;;;;;;;-1:-1:-1;13728:193:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;13728:193:0;1023:187:1;10190:41:0;;;;;;;;;;-1:-1:-1;10190:41:0;;;;-1:-1:-1;;;;;10190:41:0;;;;;;-1:-1:-1;;;;;1405:32:1;;;1387:51;;1375:2;1360:18;10190:41:0;1215:229:1;12457:100:0;;;;;;;;;;-1:-1:-1;12537:12:0;;12457:100;;;1595:25:1;;;1583:2;1568:18;12457:100:0;1449:177:1;15387:446:0;;;;;;;;;;-1:-1:-1;15387:446:0;;;;;:::i;:::-;;:::i;8859:90::-;;;;;;;;;;;;;;;14803:128;;;;;;;;;;;;;:::i;9416:32::-;;;;;;;;;;;;;;;;12366:83;;;;;;;;;;-1:-1:-1;12432:9:0;;12366:83;;12432:9;;;;2442:36:1;;2430:2;2415:18;12366:83:0;2300:184:1;9293:29:0;;;;;;;;;;;;;;;;12884:300;;;;;;;;;;-1:-1:-1;12884:300:0;;;;;:::i;:::-;;:::i;10273:27::-;;;;;;;;;;;;;;;;14450:185;;;;;;;;;;-1:-1:-1;14450:185:0;;;;;:::i;:::-;;:::i;9078:49::-;;;;;;;;;;-1:-1:-1;9078:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;9582:71;;;;;;;;;;;;;;;;9660:72;;;;;;;;;;;;;;;;14643:152;;;;;;;;;;-1:-1:-1;14643:152:0;;;;;:::i;:::-;;:::i;:::-;;12565:119;;;;;;;;;;-1:-1:-1;12565:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;12658:18:0;12631:7;12658:18;;;:9;:18;;;;;;;12565:119;4225:148;;;;;;;;;;;;;:::i;10000:52::-;;;;;;;;;;;;;;;;10059:50;;;;;;;;;;;;;;;;8747:105;;;;;;;;;;-1:-1:-1;8747:105:0;;;;-1:-1:-1;;;;;8747:105:0;;;9455:35;;;;;;;;;;;;;;;;9192:47;;;;;;;;;;-1:-1:-1;9192:47:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;4013:79;;;;;;;;;;-1:-1:-1;4051:7:0;4078:6;-1:-1:-1;;;;;4078:6:0;4013:79;;12271:87;;;;;;;;;;;;;:::i;9540:33::-;;;;;;;;;;;;;;;;9850:31;;;;;;;;;;;;;;;;13600:120;;;;;;;;;;-1:-1:-1;13689:23:0;;13600:120;;9888:39;;;;;;;;;;;;;;;;13192:400;;;;;;;;;;-1:-1:-1;13192:400:0;;;;;:::i;:::-;;:::i;15180:199::-;;;;;;;;;;-1:-1:-1;15180:199:0;;;;;:::i;:::-;;:::i;10307:28::-;;;;;;;;;;;;;;;;9739:63;;;;;;;;;;;;;;;;9374:35;;;;;;;;;;;;;;;;10238:26;;;;;;;;;;-1:-1:-1;10238:26:0;;;;-1:-1:-1;;;;;10238:26:0;;;9497:36;;;;;;;;;;;;;;;;9134:51;;;;;;;;;;-1:-1:-1;9134:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;8632:108;;;;;;;;;;-1:-1:-1;8632:108:0;;;;;;;-1:-1:-1;;;;;8632:108:0;;;14308:134;;;;;;;;;;-1:-1:-1;14308:134:0;;;;;:::i;:::-;;:::i;9332:35::-;;;;;;;;;;;;;;;;12692:184;;;;;;;;;;-1:-1:-1;12692:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;12841:18:0;;;12809:7;12841:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;12692:184;9246:38;;;;;;;;;;-1:-1:-1;9246:38:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;9811:32;;;;;;;;;;;;;;;;4381:281;;;;;;;;;;-1:-1:-1;4381:281:0;;;;;:::i;:::-;;:::i;12180:83::-;12217:13;12250:5;12243:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12180:83;:::o;13728:193::-;13830:4;13852:39;288:10;13875:7;13884:6;13852:8;:39::i;:::-;-1:-1:-1;13909:4:0;13728:193;;;;;:::o;15387:446::-;15519:4;15536:36;15546:6;15554:9;15565:6;15536:9;:36::i;:::-;-1:-1:-1;15583:220:0;15606:6;288:10;15654:138;15710:6;15654:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15654:19:0;;;;;;:11;:19;;;;;;;;288:10;15654:33;;;;;;;;;;:37;:138::i;:::-;15583:8;:220::i;:::-;-1:-1:-1;15821:4:0;15387:446;;;;;;:::o;14803:128::-;14910:11;-1:-1:-1;;;;;12658:18:0;14856:7;12658:18;;;:9;:18;;;;;;14883:12;;:40;;:16;:40::i;:::-;14876:47;;14803:128;:::o;12884:300::-;288:10;12999:4;13093:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;13093:34:0;;;;;;;;;;12999:4;;13021:133;;13071:7;;13093:50;;13132:10;13093:38;:50::i;14450:185::-;14518:4;14557:14;;14543:10;:28;14535:40;;;;-1:-1:-1;;;14535:40:0;;4731:2:1;14535:40:0;;;4713:21:1;-1:-1:-1;4750:18:1;;;4743:29;4789:18;;14535:40:0;;;;;;;;;-1:-1:-1;14576:16:0;:29;14623:4;;14450:185::o;14643:152::-;4140:6;;-1:-1:-1;;;;;4140:6:0;4150:10;4140:20;4132:65;;;;-1:-1:-1;;;4132:65:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14750:26:0;;;::::1;;::::0;;;:17:::1;:26;::::0;;;;:37;;-1:-1:-1;;14750:37:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14643:152::o;4225:148::-;4140:6;;-1:-1:-1;;;;;4140:6:0;4150:10;4140:20;4132:65;;;;-1:-1:-1;;;4132:65:0;;;;;;;:::i;:::-;4332:1:::1;4316:6:::0;;4295:40:::1;::::0;-1:-1:-1;;;;;4316:6:0;;::::1;::::0;4295:40:::1;::::0;4332:1;;4295:40:::1;4363:1;4346:19:::0;;-1:-1:-1;;;;;;4346:19:0::1;::::0;;4225:148::o;12271:87::-;12310:13;12343:7;12336:14;;;;;:::i;13192:400::-;13312:4;13334:228;288:10;13384:7;13406:145;13463:15;13406:145;;;;;;;;;;;;;;;;;288:10;13406:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;13406:34:0;;;;;;;;;;;;:38;:145::i;15180:199::-;15285:4;15307:42;288:10;15331:9;15342:6;15307:9;:42::i;14308:134::-;4140:6;;-1:-1:-1;;;;;4140:6:0;4150:10;4140:20;4132:65;;;;-1:-1:-1;;;4132:65:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14396:27:0;;;::::1;;::::0;;;:19:::1;:27;::::0;;;;:38;;-1:-1:-1;;14396:38:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14308:134::o;4381:281::-;4140:6;;-1:-1:-1;;;;;4140:6:0;4150:10;4140:20;4132:65;;;;-1:-1:-1;;;4132:65:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;4484:22:0;::::1;4462:110;;;::::0;-1:-1:-1;;;4462:110:0;;5381:2:1;4462:110:0::1;::::0;::::1;5363:21:1::0;5420:2;5400:18;;;5393:30;5459:34;5439:18;;;5432:62;-1:-1:-1;;;5510:18:1;;;5503:36;5556:19;;4462:110:0::1;5179:402:1::0;4462:110:0::1;4609:6;::::0;;4588:38:::1;::::0;-1:-1:-1;;;;;4588:38:0;;::::1;::::0;4609:6;::::1;::::0;4588:38:::1;::::0;::::1;4637:6;:17:::0;;-1:-1:-1;;;;;;4637:17:0::1;-1:-1:-1::0;;;;;4637:17:0;;;::::1;::::0;;;::::1;::::0;;4381:281::o;1140:181::-;1198:7;;1230:5;1234:1;1230;:5;:::i;:::-;1218:17;;1259:1;1254;:6;;1246:46;;;;-1:-1:-1;;;1246:46:0;;6050:2:1;1246:46:0;;;6032:21:1;6089:2;6069:18;;;6062:30;6128:29;6108:18;;;6101:57;6175:18;;1246:46:0;5848:351:1;13929:371:0;-1:-1:-1;;;;;14056:19:0;;14048:68;;;;-1:-1:-1;;;14048:68:0;;6406:2:1;14048:68:0;;;6388:21:1;6445:2;6425:18;;;6418:30;6484:34;6464:18;;;6457:62;-1:-1:-1;;;6535:18:1;;;6528:34;6579:19;;14048:68:0;6204:400:1;14048:68:0;-1:-1:-1;;;;;14135:21:0;;14127:68;;;;-1:-1:-1;;;14127:68:0;;6811:2:1;14127:68:0;;;6793:21:1;6850:2;6830:18;;;6823:30;6889:34;6869:18;;;6862:62;-1:-1:-1;;;6940:18:1;;;6933:32;6982:19;;14127:68:0;6609:398:1;14127:68:0;-1:-1:-1;;;;;14208:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;14260:32;;1595:25:1;;;14260:32:0;;1568:18:1;14260:32:0;;;;;;;13929:371;;;:::o;15841:2010::-;15962:4;-1:-1:-1;;;;;15987:20:0;;15979:70;;;;-1:-1:-1;;;15979:70:0;;7214:2:1;15979:70:0;;;7196:21:1;7253:2;7233:18;;;7226:30;7292:34;7272:18;;;7265:62;-1:-1:-1;;;7343:18:1;;;7336:35;7388:19;;15979:70:0;7012:401:1;15979:70:0;-1:-1:-1;;;;;16068:23:0;;16060:71;;;;-1:-1:-1;;;16060:71:0;;7620:2:1;16060:71:0;;;7602:21:1;7659:2;7639:18;;;7632:30;7698:34;7678:18;;;7671:62;-1:-1:-1;;;7749:18:1;;;7742:33;7792:19;;16060:71:0;7418:399:1;16060:71:0;16161:11;;-1:-1:-1;;;;;16148:24:0;;;16161:11;;16148:24;:52;;;;-1:-1:-1;;;;;;16177:23:0;;;;;;:15;:23;;;;;;;;16176:24;16148:52;16144:237;;;-1:-1:-1;;;;;12658:18:0;;16217:15;12658:18;;;:9;:18;;;;;;16271:17;;;16267:103;;16318:36;16329:24;16340:12;;16329:6;:10;;:24;;;;:::i;:::-;16318:6;;:10;:36::i;:::-;16309:45;;16267:103;16202:179;16144:237;16408:11;;-1:-1:-1;;;;;16395:24:0;;;16408:11;;16395:24;:62;;;;-1:-1:-1;;;;;;12658:18:0;;12631:7;12658:18;;;:9;:18;;;;;;16423:34;16395:62;16391:122;;;16489:12;16474;:27;16391:122;16529:16;;;;;;;16525:1319;;;16569:41;16584:6;16592:9;16603:6;16569:14;:41::i;:::-;16562:48;;;;16525:1319;16692:4;16643:28;12658:18;;;:9;:18;;;;;;16785:23;;16744:64;;;;;;;16847:61;;-1:-1:-1;16892:16:0;;;;;;;16891:17;16847:61;:97;;;;-1:-1:-1;;;;;;16930:14:0;;;;;;:6;:14;;;;;;;;16929:15;16847:97;16825:288;;;17001:15;;-1:-1:-1;;;;;16983:34:0;;;17001:15;;16983:34;16979:119;;17042:36;17057:20;17042:14;:36::i;:::-;17149:102;;;;;;;;;;;-1:-1:-1;;;17149:102:0;;;;;;;;-1:-1:-1;;;;;17149:17:0;;-1:-1:-1;17149:17:0;;;:9;:17;;;;;;;;:102;;17189:6;;17149:21;:102::i;:::-;-1:-1:-1;;;;;17129:17:0;;;;;;:9;:17;;;;;;;;:122;;;;17291:17;:25;;;;;;;;;:74;;-1:-1:-1;;;;;;17337:28:0;;;;;;:17;:28;;;;;;;;17291:74;17290:156;;17412:34;17420:6;17428:9;17439:6;17412:7;:34::i;:::-;17290:156;;;17386:6;17290:156;-1:-1:-1;;;;;17486:20:0;;;;;;:9;:20;;;;;;17268:178;;-1:-1:-1;17486:37:0;;17268:178;17486:24;:37::i;:::-;-1:-1:-1;;;;;17463:20:0;;;;;;;:9;:20;;;;;;;:60;;;;17545:40;;;;;;;;;;17573:11;1595:25:1;;1583:2;1568:18;;1449:177;17545:40:0;;;;;;;;17653:9;;17638:12;;:24;;;;:::i;:::-;17622:12;:41;:83;;;;-1:-1:-1;17694:11:0;;-1:-1:-1;;;;;17684:21:0;;;17694:11;;17684:21;17622:83;17600:207;;;17740:51;17755:9;17766:11;17779;17740:14;:51::i;:::-;;17600:207;17828:4;17821:11;;;;;;;1473:226;1593:7;1629:12;1621:6;;;;1613:29;;;;-1:-1:-1;;;1613:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1653:9:0;1665:5;1669:1;1665;:5;:::i;:::-;1653:17;1473:226;-1:-1:-1;;;;;1473:226:0:o;1329:136::-;1387:7;1414:43;1418:1;1421;1414:43;;;;;;;;;;;;;;;;;:3;:43::i;1965:132::-;2023:7;2050:39;2054:1;2057;2050:39;;;;;;;;;;;;;;;;;:3;:39::i;17859:401::-;18023:90;;;;;;;;;;;-1:-1:-1;;;18023:90:0;;;;;;;;-1:-1:-1;;;;;18023:17:0;;17986:4;18023:17;;;:9;:17;;;;;;;:90;;18059:6;;18023:21;:90::i;:::-;-1:-1:-1;;;;;18003:17:0;;;;;;;:9;:17;;;;;;:110;;;;18147:20;;;;;;;:32;;18172:6;18147:24;:32::i;:::-;-1:-1:-1;;;;;18124:20:0;;;;;;;:9;:20;;;;;;;:55;;;;18195:35;;;;;;;;;;18223:6;1595:25:1;;1583:2;1568:18;;1449:177;18195:35:0;;;;;;;;-1:-1:-1;18248:4:0;17859:401;;;;;:::o;18268:1215::-;10783:16;:23;;-1:-1:-1;;10783:23:0;;;;;18423:24:::1;::::0;18388:15:::1;::::0;10783:23;;18362:107:::1;::::0;18467:1:::1;::::0;18362:86:::1;::::0;;;:7;;:25:::1;:42::i;:::-;:60:::0;::::1;:86::i;:107::-;18340:129:::0;-1:-1:-1;18480:21:0::1;18504:24;:7:::0;18340:129;18504:11:::1;:24::i;:::-;18480:48;;18541:31;18558:13;18541:16;:31::i;:::-;18708:15;::::0;18608:21:::1;::::0;18583:22:::1;::::0;18665:76:::1;::::0;18708:22:::1;::::0;18728:1:::1;18708:19;:22::i;:::-;18665:24;::::0;;:28:::1;:76::i;:::-;18642:99;;18754:27;18784:102;18884:1;18784:81;18852:12;18784:49;18817:15;;18784:14;:32;;:49;;;;:::i;:102::-;18754:132;;18897:24;18924:74;18975:12;18924:32;18943:12;;18924:14;:18;;:32;;;;:::i;:74::-;18897:101:::0;-1:-1:-1;19009:27:0::1;19039:85;18897:101:::0;19039:39:::1;:14:::0;19058:19;19039:18:::1;:39::i;:::-;:43:::0;::::1;:85::i;:::-;19009:115:::0;-1:-1:-1;19141:23:0;;19137:107:::1;;19200:22;::::0;19179:65:::1;::::0;19200:22:::1;::::0;::::1;-1:-1:-1::0;;;;;19200:22:0::1;19224:19:::0;19179:20:::1;:65::i;:::-;19261:20:::0;;19257:98:::1;;19317:19;::::0;19296:59:::1;::::0;-1:-1:-1;;;;;19317:19:0::1;19338:16:::0;19296:20:::1;:59::i;:::-;19394:1;19372:19;:23;:42;;;;;19413:1;19399:11;:15;19372:42;19368:107;;;19429:46;19442:11;19455:19;19429:12;:46::i;:::-;-1:-1:-1::0;;10829:16:0;:24;;-1:-1:-1;;10829:24:0;;;-1:-1:-1;;;;;;18268:1215:0:o;20408:616::-;-1:-1:-1;;;;;20584:14:0;;20528:7;20584:14;;;:6;:14;;;;;;20528:7;;20584:14;;20580:202;;;20627:38;20661:3;20627:29;20638:17;;20627:6;:10;;:29;;;;:::i;:38::-;20615:50;;20580:202;;;-1:-1:-1;;;;;20687:17:0;;;;;;:6;:17;;;;;;;;20683:99;;;20733:37;20766:3;20733:28;20744:16;;20733:6;:10;;:28;;;;:::i;:37::-;20721:49;;20683:99;20798:13;;20794:174;;20873:4;20855:24;;;;:9;:24;;;;;;:39;;20884:9;20855:28;:39::i;:::-;20846:4;20828:24;;;;:9;:24;;;;;;;:66;;;;20914:42;;-1:-1:-1;;;;;20914:42:0;;;;;;;20946:9;1595:25:1;;1583:2;1568:18;;1449:177;20914:42:0;;;;;;;;20794:174;20995:21;:6;21006:9;20995:10;:21::i;2105:312::-;2225:7;2260:12;2253:5;2245:28;;;;-1:-1:-1;;;2245:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2284:9:0;2296:5;2300:1;2296;:5;:::i;1707:250::-;1765:7;1789:1;1794;1789:6;1785:47;;-1:-1:-1;1819:1:0;1812:8;;1785:47;1844:9;1856:5;1860:1;1856;:5;:::i;:::-;1844:17;-1:-1:-1;1889:1:0;1880:5;1884:1;1844:17;1880:5;:::i;:::-;:10;1872:56;;;;-1:-1:-1;;;1872:56:0;;8552:2:1;1872:56:0;;;8534:21:1;8591:2;8571:18;;;8564:30;8630:34;8610:18;;;8603:62;-1:-1:-1;;;8681:18:1;;;8674:31;8722:19;;1872:56:0;8350:397:1;19495:522:0;19585:16;;;19599:1;19585:16;;;;;;;;19561:21;;19585:16;;;;;;;;;;-1:-1:-1;19585:16:0;19561:40;;19630:4;19612;19617:1;19612:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;19612:23:0;;;:7;;;;;;;;;;:23;;;;19656:15;;:22;;;-1:-1:-1;;;19656:22:0;;;;:15;;;;;:20;;:22;;;;;19612:7;;19656:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19646:4;19651:1;19646:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;19646:32:0;;;:7;;;;;;;;;:32;19721:15;;19689:62;;19706:4;;19721:15;19739:11;19689:8;:62::i;:::-;19762:15;;:196;;-1:-1:-1;;;19762:196:0;;-1:-1:-1;;;;;19762:15:0;;;;:66;;:196;;19843:11;;19762:15;;19885:4;;19912;;19932:15;;19762:196;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19974:35;19991:11;20004:4;19974:35;;;;;;;:::i;:::-;;;;;;;;19550:467;19495:522;:::o;14939:140::-;15045:26;;-1:-1:-1;;;;;15045:18:0;;;:26;;;;;15064:6;;15045:26;;;;15064:6;15045:18;:26;;;;;;;;;;;;;;;;;;;;;14939:140;;:::o;20025:375::-;20138:15;;20106:62;;20123:4;;-1:-1:-1;;;;;20138:15:0;20156:11;20106:8;:62::i;:::-;20179:15;;20329:22;;20179:213;;-1:-1:-1;;;20179:213:0;;20251:4;20179:213;;;11011:34:1;11061:18;;;11054:34;;;-1:-1:-1;11104:18:1;;;11097:34;;;11147:18;;;11140:34;-1:-1:-1;;;;;20179:15:0;20329:22;;;;;11190:19:1;;;11183:44;20366:15:0;11243:19:1;;;11236:35;20179:15:0;;;:31;;20218:9;;10945:19:1;;20179:213:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;20025:375;;:::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;1631:456::-;1708:6;1716;1724;1777:2;1765:9;1756:7;1752:23;1748:32;1745:52;;;1793:1;1790;1783:12;1745:52;1832:9;1819:23;1851:31;1876:5;1851:31;:::i;:::-;1901:5;-1:-1:-1;1958:2:1;1943:18;;1930:32;1971:33;1930:32;1971:33;:::i;:::-;1631:456;;2023:7;;-1:-1:-1;;;2077:2:1;2062:18;;;;2049:32;;1631:456::o;2669:180::-;2728:6;2781:2;2769:9;2760:7;2756:23;2752:32;2749:52;;;2797:1;2794;2787:12;2749:52;-1:-1:-1;2820:23:1;;2669:180;-1:-1:-1;2669:180:1:o;2854:247::-;2913:6;2966:2;2954:9;2945:7;2941:23;2937:32;2934:52;;;2982:1;2979;2972:12;2934:52;3021:9;3008:23;3040:31;3065:5;3040:31;:::i;3106:416::-;3171:6;3179;3232:2;3220:9;3211:7;3207:23;3203:32;3200:52;;;3248:1;3245;3238:12;3200:52;3287:9;3274:23;3306:31;3331:5;3306:31;:::i;:::-;3356:5;-1:-1:-1;3413:2:1;3398:18;;3385:32;3455:15;;3448:23;3436:36;;3426:64;;3486:1;3483;3476:12;3426:64;3509:7;3499:17;;;3106:416;;;;;:::o;3751:388::-;3819:6;3827;3880:2;3868:9;3859:7;3855:23;3851:32;3848:52;;;3896:1;3893;3886:12;3848:52;3935:9;3922:23;3954:31;3979:5;3954:31;:::i;:::-;4004:5;-1:-1:-1;4061:2:1;4046:18;;4033:32;4074:33;4033:32;4074:33;:::i;4144:380::-;4223:1;4219:12;;;;4266;;;4287:61;;4341:4;4333:6;4329:17;4319:27;;4287:61;4394:2;4386:6;4383:14;4363:18;4360:38;4357:161;;4440:10;4435:3;4431:20;4428:1;4421:31;4475:4;4472:1;4465:15;4503:4;4500:1;4493:15;4357:161;;4144:380;;;:::o;4818:356::-;5020:2;5002:21;;;5039:18;;;5032:30;5098:34;5093:2;5078:18;;5071:62;5165:2;5150:18;;4818:356::o;5586:127::-;5647:10;5642:3;5638:20;5635:1;5628:31;5678:4;5675:1;5668:15;5702:4;5699:1;5692:15;5718:125;5783:9;;;5804:10;;;5801:36;;;5817:18;;:::i;7822:128::-;7889:9;;;7910:11;;;7907:37;;;7924:18;;:::i;7955:217::-;7995:1;8021;8011:132;;8065:10;8060:3;8056:20;8053:1;8046:31;8100:4;8097:1;8090:15;8128:4;8125:1;8118:15;8011:132;-1:-1:-1;8157:9:1;;7955:217::o;8177:168::-;8250:9;;;8281;;8298:15;;;8292:22;;8278:37;8268:71;;8319:18;;:::i;8884:127::-;8945:10;8940:3;8936:20;8933:1;8926:31;8976:4;8973:1;8966:15;9000:4;8997:1;8990:15;9016:251;9086:6;9139:2;9127:9;9118:7;9114:23;9110:32;9107:52;;;9155:1;9152;9145:12;9107:52;9187:9;9181:16;9206:31;9231:5;9206:31;:::i;9272:461::-;9325:3;9363:5;9357:12;9390:6;9385:3;9378:19;9416:4;9445:2;9440:3;9436:12;9429:19;;9482:2;9475:5;9471:14;9503:1;9513:195;9527:6;9524:1;9521:13;9513:195;;;9592:13;;-1:-1:-1;;;;;9588:39:1;9576:52;;9648:12;;;;9683:15;;;;9624:1;9542:9;9513:195;;;-1:-1:-1;9724:3:1;;9272:461;-1:-1:-1;;;;;9272:461:1:o;9738:582::-;10037:6;10026:9;10019:25;10080:6;10075:2;10064:9;10060:18;10053:34;10123:3;10118:2;10107:9;10103:18;10096:31;10000:4;10144:57;10196:3;10185:9;10181:19;10173:6;10144:57;:::i;:::-;-1:-1:-1;;;;;10237:32:1;;;;10232:2;10217:18;;10210:60;-1:-1:-1;10301:3:1;10286:19;10279:35;10136:65;9738:582;-1:-1:-1;;;9738:582:1:o;10325:332::-;10532:6;10521:9;10514:25;10575:2;10570;10559:9;10555:18;10548:30;10495:4;10595:56;10647:2;10636:9;10632:18;10624:6;10595:56;:::i;:::-;10587:64;10325:332;-1:-1:-1;;;;10325:332:1:o;11282:306::-;11370:6;11378;11386;11439:2;11427:9;11418:7;11414:23;11410:32;11407:52;;;11455:1;11452;11445:12;11407:52;11484:9;11478:16;11468:26;;11534:2;11523:9;11519:18;11513:25;11503:35;;11578:2;11567:9;11563:18;11557:25;11547:35;;11282:306;;;;;:::o

Swarm Source

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