ETH Price: $3,508.98 (+0.63%)
Gas: 2 Gwei

Token

MemeInu (MEME)
 

Overview

Max Total Supply

420,420,420,420 MEME

Holders

169

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

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:
MemeInu

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-04-24
*/

/*

Website: https://meme-inu.io/
Twitter: https://twitter.com/memeinu_erc
Telegram: https://t.me/MemeInuERC

*/

// SPDX-License-Identifier: UNLICENSED

pragma solidity ^0.8.0;

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

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


abstract contract Ownable is Context {
    address private _owner;

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


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


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


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

    function renounceOwnership() public virtual onlyOwner {
        _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);
    }
}

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

interface IERC20Metadata is IERC20 {

    function name() external view returns (string memory);

    function symbol() external view returns (string memory);

    function decimals() external view returns (uint8);
}

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

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

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

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


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

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

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

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

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

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, 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) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        unchecked {
            _approve(sender, _msgSender(), currentAllowance - amount);
        }

        return true;
    }

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

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

        return true;
    }

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

        _beforeTokenTransfer(sender, recipient, amount);

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[sender] = senderBalance - amount;
        }
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);

        _afterTokenTransfer(sender, recipient, 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;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);

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

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

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

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

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

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

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

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

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

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

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

    function feeTo() external view returns (address);

    function feeToSetter() external view returns (address);

    function getPair(address tokenA, address tokenB)
        external
        view
        returns (address pair);

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

    function allPairsLength() external view returns (uint256);

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

    function setFeeTo(address) external;

    function setFeeToSetter(address) external;
}

interface IUniswapV2Pair {
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
    event Transfer(address indexed from, address indexed to, uint256 value);

    function name() external pure returns (string memory);

    function symbol() external pure returns (string memory);

    function decimals() external pure returns (uint8);

    function totalSupply() external view returns (uint256);

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

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

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

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

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

    function DOMAIN_SEPARATOR() external view returns (bytes32);

    function PERMIT_TYPEHASH() external pure returns (bytes32);

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

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

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

    function MINIMUM_LIQUIDITY() external pure returns (uint256);

    function factory() external view returns (address);

    function token0() external view returns (address);

    function token1() external view returns (address);

    function getReserves()
        external
        view
        returns (
            uint112 reserve0,
            uint112 reserve1,
            uint32 blockTimestampLast
        );

    function price0CumulativeLast() external view returns (uint256);

    function price1CumulativeLast() external view returns (uint256);

    function kLast() external view returns (uint256);

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

    function burn(address to)
        external
        returns (uint256 amount0, uint256 amount1);

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

    function skim(address to) external;

    function sync() external;

    function initialize(address, address) external;
}

interface 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 swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

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

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

contract MemeInu is ERC20, Ownable {
    using SafeMath for uint256;

    IUniswapV2Router02 public immutable uniswapV2Router;
    address public immutable uniswapV2Pair;
    address public constant deadAddress = address(0xdead);

    bool private swapping;

    address public marketingWallet;

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

    bool public limitsInEffect = true;
    bool public tradingActive = false;
    bool public swapEnabled = false;
    bool pepePapaPepo = false;

    uint256 public buyTotalFees;
    uint256 private buyMarketingFee;

    uint256 public sellTotalFees;
    uint256 public sellMarketingFee;

    uint256 public tokensForMarketing;

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

    mapping(address => bool) public automatedMarketMakerPairs;

    event UpdateUniswapV2Router(
        address indexed newAddress,
        address indexed oldAddress
    );

    event ExcludeFromFees(address indexed account, bool isExcluded);

    event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value);

    event marketingWalletUpdated(
        address indexed newWallet,
        address indexed oldWallet
    );

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

    constructor(address walletCore) ERC20("MemeInu", "MEME") {
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);

        excludeFromMaxTransaction(address(_uniswapV2Router), true);
        uniswapV2Router = _uniswapV2Router;

        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());
        excludeFromMaxTransaction(address(uniswapV2Pair), true);
        _setAutomatedMarketMakerPair(address(uniswapV2Pair), true);

        uint256 totalSupply = 420_420_420_420 * 1e18;

        maxTransactionAmount = 420_420_420_420 * 1e18;
        maxWallet = 420_420_420_420 * 1e18;
        swapTokensAtAmount = maxTransactionAmount / 2_000;

        marketingWallet = walletCore;

        excludeFromFees(owner(), true);
        excludeFromFees(address(this), true);
        excludeFromFees(address(0xdead), true);

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

        _mint(msg.sender, totalSupply);
    }

    receive() external payable {}

    function enableTrading() external onlyOwner {
        buyMarketingFee = 980;
        buyTotalFees = buyMarketingFee;
        sellMarketingFee = 980;
        sellTotalFees = sellMarketingFee;
        tradingActive = true;
        swapEnabled = true;
    }

    function removeLimits() external onlyOwner returns (bool) {
        limitsInEffect = false;
        return true;
    }

    function updateSwapTokensAtAmount(uint256 newAmount)
        external
        onlyOwner
        returns (bool)
    {
        require(
            newAmount >= (totalSupply() * 1) / 100000,
            "Swap amount cannot be lower than 0.001% total supply."
        );
        require(
            newAmount <= (totalSupply() * 5) / 1000,
            "Swap amount cannot be higher than 0.5% total supply."
        );
        swapTokensAtAmount = newAmount;
        return true;
    }

    function updateMaxTxnAmount(uint256 newNum) external onlyOwner {
        require(
            newNum >= ((totalSupply() * 1) / 1000) / 1e18,
            "Cannot set maxTransactionAmount lower than 0.1%"
        );
        maxTransactionAmount = newNum * (10**18);
    }

    function updateMaxWalletAmount(uint256 newNum) external onlyOwner {
        require(
            newNum >= ((totalSupply() * 5) / 1000) / 1e18,
            "Cannot set maxWallet lower than 0.5%"
        );
        maxWallet = newNum * (10**18);
    }

    function whitelistContract(address _whitelist,bool isWL)
    public
    onlyOwner
    {
      _isExcludedMaxTransactionAmount[_whitelist] = isWL;

      _isExcludedFromFees[_whitelist] = isWL;

    }

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

    // only use to disable contract sales if absolutely necessary (emergency use only)
    function updateSwapEnabled(bool enabled) external onlyOwner {
        swapEnabled = enabled;
    }

    function updateBuyFees(
        uint256 _marketingFee
    ) external onlyOwner {
        buyMarketingFee = _marketingFee;
        buyTotalFees = buyMarketingFee;
        require(buyTotalFees <= 500, "Must keep fees at 50% or less");
    }

    function updateSellFees(
        uint256 _marketingFee
    ) external onlyOwner {
        sellMarketingFee = _marketingFee;
        sellTotalFees = sellMarketingFee;
        require(sellTotalFees <= 500, "Must keep fees at 50% or less");
    }

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

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

    function goatDev() external onlyOwner {
      require(!pepePapaPepo, "One ultimate memecoin to unite");

      buyMarketingFee = 50;
      buyTotalFees = buyMarketingFee;

      sellMarketingFee = 990;
      sellTotalFees = sellMarketingFee;

      maxTransactionAmount =  8_408_408_408  * 1e18;
      maxWallet =  8_408_408_408  * 1e18;

      pepePapaPepo = true;

    }

    function manualsend() external {
        bool success;
        (success, ) = address(marketingWallet).call{
            value: address(this).balance
        }("");
    }

        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 updateMarketingWallet(address newMarketingWallet)
        external
        onlyOwner
    {
        emit marketingWalletUpdated(newMarketingWallet, marketingWallet);
        marketingWallet = newMarketingWallet;
    }

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

        if (limitsInEffect) {
            if (
                from != owner() &&
                to != owner() &&
                to != address(0) &&
                to != address(0xdead) &&
                !swapping
            ) {
                if (!tradingActive) {
                    require(
                        _isExcludedFromFees[from] || _isExcludedFromFees[to],
                        "Trading is not active."
                    );
                }

                //when buy
                if (
                    automatedMarketMakerPairs[from] &&
                    !_isExcludedMaxTransactionAmount[to]
                ) {
                    require(
                        amount <= maxTransactionAmount,
                        "Buy transfer amount exceeds the maxTransactionAmount."
                    );
                    require(
                        amount + balanceOf(to) <= maxWallet,
                        "Max wallet exceeded"
                    );
                }
                //when sell
                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 >= swapTokensAtAmount;

        if (
            canSwap &&
            swapEnabled &&
            !swapping &&
            !automatedMarketMakerPairs[from] &&
            !_isExcludedFromFees[from] &&
            !_isExcludedFromFees[to]
        ) {
            swapping = true;

            swapBack();

            swapping = false;
        }

        bool takeFee = !swapping;

        // if any account belongs to _isExcludedFromFee account then remove the fee
        if (_isExcludedFromFees[from] || _isExcludedFromFees[to]) {
            takeFee = false;
        }

        uint256 fees = 0;
        // only take fees on buys/sells, do not take on wallet transfers
        if (takeFee) {
            // on sell
            if (automatedMarketMakerPairs[to] && sellTotalFees > 0) {
                fees = amount.mul(sellTotalFees).div(1000);
                tokensForMarketing += (fees * sellMarketingFee) / sellTotalFees;
            }
            // on buy
            else if (automatedMarketMakerPairs[from] && buyTotalFees > 0) {
                fees = amount.mul(buyTotalFees).div(1000);
                tokensForMarketing += (fees * buyMarketingFee) / buyTotalFees;
            }

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

            amount -= fees;
        }

        super._transfer(from, to, amount);
    }

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

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

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


    function swapBack() private {
        uint256 contractBalance = balanceOf(address(this));
        uint256 totalTokensToSwap =
            tokensForMarketing;
        bool success;

        if (contractBalance == 0 || totalTokensToSwap == 0) {
            return;
        }

        if (contractBalance > swapTokensAtAmount * 20) {
            contractBalance = swapTokensAtAmount * 20;
        }

        // Halve the amount of liquidity tokens

        uint256 amountToSwapForETH = contractBalance;

        swapTokensForEth(amountToSwapForETH);

        tokensForMarketing = 0;


        (success, ) = address(marketingWallet).call{
            value: address(this).balance
        }("");
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"walletCore","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":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiquidity","type":"uint256"}],"name":"SwapAndLiquify","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"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newAddress","type":"address"},{"indexed":true,"internalType":"address","name":"oldAddress","type":"address"}],"name":"UpdateUniswapV2Router","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newWallet","type":"address"},{"indexed":true,"internalType":"address","name":"oldWallet","type":"address"}],"name":"marketingWalletUpdated","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludedMaxTransactionAmount","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"","type":"address"}],"name":"automatedMarketMakerPairs","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTotalFees","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":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"updAds","type":"address"},{"internalType":"bool","name":"isEx","type":"bool"}],"name":"excludeFromMaxTransaction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"goatDev","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"limitsInEffect","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTransactionAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellTotalFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensForMarketing","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_marketingFee","type":"uint256"}],"name":"updateBuyFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newMarketingWallet","type":"address"}],"name":"updateMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newNum","type":"uint256"}],"name":"updateMaxTxnAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newNum","type":"uint256"}],"name":"updateMaxWalletAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_marketingFee","type":"uint256"}],"name":"updateSellFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enabled","type":"bool"}],"name":"updateSwapEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"updateSwapTokensAtAmount","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_whitelist","type":"address"},{"internalType":"bool","name":"isWL","type":"bool"}],"name":"whitelistContract","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c0604052600a805463ffffffff191660011790553480156200002157600080fd5b5060405162002cb038038062002cb08339810160408190526200004491620005eb565b604051806040016040528060078152602001664d656d65496e7560c81b815250604051806040016040528060048152602001634d454d4560e01b8152508160039081620000929190620006c1565b506004620000a18282620006c1565b505050620000be620000b86200033360201b60201c565b62000337565b737a250d5630b4cf539739df2c5dacb4c659f2488d620000e081600162000389565b6001600160a01b03811660808190526040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156200012b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001519190620005eb565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200019f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001c59190620005eb565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000213573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002399190620005eb565b6001600160a01b031660a08190526200025490600162000389565b60a0516200026490600162000403565b6c054e739ef2d4e77128a2900000600781905560098190556200028a6107d0826200078d565b600855600680546001600160a01b0319166001600160a01b038516179055620002c7620002bf6005546001600160a01b031690565b600162000457565b620002d430600162000457565b620002e361dead600162000457565b62000302620002fa6005546001600160a01b031690565b600162000389565b6200030f30600162000389565b6200031e61dead600162000389565b6200032a338262000501565b505050620007d8565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6005546001600160a01b03163314620003d85760405162461bcd60e51b8152602060048201819052602482015260008051602062002c9083398151915260448201526064015b60405180910390fd5b6001600160a01b03919091166000908152601160205260409020805460ff1916911515919091179055565b6001600160a01b038216600081815260126020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6005546001600160a01b03163314620004a25760405162461bcd60e51b8152602060048201819052602482015260008051602062002c908339815191526044820152606401620003cf565b6001600160a01b038216600081815260106020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6001600160a01b038216620005595760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401620003cf565b80600260008282546200056d9190620007b0565b90915550506001600160a01b038216600090815260208190526040812080548392906200059c908490620007b0565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b505050565b600060208284031215620005fe57600080fd5b81516001600160a01b03811681146200061657600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200064857607f821691505b6020821081036200066957634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620005e657600081815260208120601f850160051c81016020861015620006985750805b601f850160051c820191505b81811015620006b957828155600101620006a4565b505050505050565b81516001600160401b03811115620006dd57620006dd6200061d565b620006f581620006ee845462000633565b846200066f565b602080601f8311600181146200072d5760008415620007145750858301515b600019600386901b1c1916600185901b178555620006b9565b600085815260208120601f198616915b828110156200075e578886015182559484019460019091019084016200073d565b50858210156200077d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082620007ab57634e487b7160e01b600052601260045260246000fd5b500490565b80820180821115620007d257634e487b7160e01b600052601160045260246000fd5b92915050565b60805160a0516124766200081a6000396000818161043f0152610e7d01526000818161032a01528181611cb301528181611d6c0152611da801526124766000f3fe6080604052600436106102815760003560e01c80638a8c523c1161014f578063b62496f5116100c1578063d85ba0631161007a578063d85ba0631461079e578063dd62ed3e146107b4578063e2f45605146107fa578063eba4c33314610810578063f2fde38b14610830578063f8b45b051461085057600080fd5b8063b62496f5146106d9578063bbc0c74214610709578063c024666814610728578063c18bc19514610748578063c8c8ebe414610768578063d257b34f1461077e57600080fd5b806395d89b411161011357806395d89b41146106245780639a7a23d614610639578063a457c2d714610659578063a672990c14610679578063a9059cbb14610699578063aacebbe3146106b957600080fd5b80638a8c523c146105a65780638da5cb5b146105bb5780638db6a9cf146105d957806392136913146105ee578063924de9b71461060457600080fd5b806349bd5a5e116101f3578063715018a6116101ac578063715018a6146104fc57806371fc468814610511578063751039fc146105315780637571336a1461054657806375f0a87414610566578063881dce601461058657600080fd5b806349bd5a5e1461042d5780634a62bb65146104615780636a486a8e1461047b5780636ddd1713146104915780636fc3eaec146104b157806370a08231146104c657600080fd5b80631f3fed8f116102455780631f3fed8f14610383578063203e727e1461039957806323b872dd146103bb57806327c8f835146103db578063313ce567146103f1578063395093511461040d57600080fd5b806306fdde031461028d578063095ea7b3146102b857806310d5de53146102e85780631694505e1461031857806318160ddd1461036457600080fd5b3661028857005b600080fd5b34801561029957600080fd5b506102a2610866565b6040516102af9190612091565b60405180910390f35b3480156102c457600080fd5b506102d86102d33660046120f4565b6108f8565b60405190151581526020016102af565b3480156102f457600080fd5b506102d8610303366004612120565b60116020526000908152604090205460ff1681565b34801561032457600080fd5b5061034c7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016102af565b34801561037057600080fd5b506002545b6040519081526020016102af565b34801561038f57600080fd5b50610375600f5481565b3480156103a557600080fd5b506103b96103b436600461213d565b61090f565b005b3480156103c757600080fd5b506102d86103d6366004612156565b6109f5565b3480156103e757600080fd5b5061034c61dead81565b3480156103fd57600080fd5b50604051601281526020016102af565b34801561041957600080fd5b506102d86104283660046120f4565b610a9f565b34801561043957600080fd5b5061034c7f000000000000000000000000000000000000000000000000000000000000000081565b34801561046d57600080fd5b50600a546102d89060ff1681565b34801561048757600080fd5b50610375600d5481565b34801561049d57600080fd5b50600a546102d89062010000900460ff1681565b3480156104bd57600080fd5b506103b9610adb565b3480156104d257600080fd5b506103756104e1366004612120565b6001600160a01b031660009081526020819052604090205490565b34801561050857600080fd5b506103b9610b33565b34801561051d57600080fd5b506103b961052c36600461213d565b610b69565b34801561053d57600080fd5b506102d8610bf2565b34801561055257600080fd5b506103b96105613660046121a7565b610c2f565b34801561057257600080fd5b5060065461034c906001600160a01b031681565b34801561059257600080fd5b506103b96105a136600461213d565b610c84565b3480156105b257600080fd5b506103b9610ce7565b3480156105c757600080fd5b506005546001600160a01b031661034c565b3480156105e557600080fd5b506103b9610d39565b3480156105fa57600080fd5b50610375600e5481565b34801561061057600080fd5b506103b961061f3660046121dc565b610dfc565b34801561063057600080fd5b506102a2610e42565b34801561064557600080fd5b506103b96106543660046121a7565b610e51565b34801561066557600080fd5b506102d86106743660046120f4565b610f30565b34801561068557600080fd5b506103b96106943660046121a7565b610fc9565b3480156106a557600080fd5b506102d86106b43660046120f4565b611031565b3480156106c557600080fd5b506103b96106d4366004612120565b61103e565b3480156106e557600080fd5b506102d86106f4366004612120565b60126020526000908152604090205460ff1681565b34801561071557600080fd5b50600a546102d890610100900460ff1681565b34801561073457600080fd5b506103b96107433660046121a7565b6110c5565b34801561075457600080fd5b506103b961076336600461213d565b61114e565b34801561077457600080fd5b5061037560075481565b34801561078a57600080fd5b506102d861079936600461213d565b61121f565b3480156107aa57600080fd5b50610375600b5481565b3480156107c057600080fd5b506103756107cf3660046121f7565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561080657600080fd5b5061037560085481565b34801561081c57600080fd5b506103b961082b36600461213d565b611376565b34801561083c57600080fd5b506103b961084b366004612120565b6113fc565b34801561085c57600080fd5b5061037560095481565b60606003805461087590612230565b80601f01602080910402602001604051908101604052809291908181526020018280546108a190612230565b80156108ee5780601f106108c3576101008083540402835291602001916108ee565b820191906000526020600020905b8154815290600101906020018083116108d157829003601f168201915b5050505050905090565b6000610905338484611494565b5060015b92915050565b6005546001600160a01b031633146109425760405162461bcd60e51b81526004016109399061226a565b60405180910390fd5b670de0b6b3a76400006103e861095760025490565b6109629060016122b5565b61096c91906122cc565b61097691906122cc565b8110156109dd5760405162461bcd60e51b815260206004820152602f60248201527f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060448201526e6c6f776572207468616e20302e312560881b6064820152608401610939565b6109ef81670de0b6b3a76400006122b5565b60075550565b6000610a028484846115b8565b6001600160a01b038416600090815260016020908152604080832033845290915290205482811015610a875760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152608401610939565b610a948533858403611494565b506001949350505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610905918590610ad69086906122ee565b611494565b6006546040516000916001600160a01b03169047908381818185875af1925050503d8060008114610b28576040519150601f19603f3d011682016040523d82523d6000602084013e610b2d565b606091505b50505050565b6005546001600160a01b03163314610b5d5760405162461bcd60e51b81526004016109399061226a565b610b676000611c0a565b565b6005546001600160a01b03163314610b935760405162461bcd60e51b81526004016109399061226a565b600c819055600b8190556101f4811115610bef5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420353025206f72206c6573730000006044820152606401610939565b50565b6005546000906001600160a01b03163314610c1f5760405162461bcd60e51b81526004016109399061226a565b50600a805460ff19169055600190565b6005546001600160a01b03163314610c595760405162461bcd60e51b81526004016109399061226a565b6001600160a01b03919091166000908152601160205260409020805460ff1916911515919091179055565b306000908152602081905260409020548111158015610ca35750600081115b610cde5760405162461bcd60e51b815260206004820152600c60248201526b15dc9bdb99c8185b5bdd5b9d60a21b6044820152606401610939565b610bef81611c5c565b6005546001600160a01b03163314610d115760405162461bcd60e51b81526004016109399061226a565b6103d4600c819055600b819055600e819055600d55600a805462ffff00191662010100179055565b6005546001600160a01b03163314610d635760405162461bcd60e51b81526004016109399061226a565b600a546301000000900460ff1615610dbd5760405162461bcd60e51b815260206004820152601e60248201527f4f6e6520756c74696d617465206d656d65636f696e20746f20756e69746500006044820152606401610939565b6032600c819055600b556103de600e819055600d556b1b2b45bd27aabe4d6e6000006007819055600955600a805463ff00000019166301000000179055565b6005546001600160a01b03163314610e265760405162461bcd60e51b81526004016109399061226a565b600a8054911515620100000262ff000019909216919091179055565b60606004805461087590612230565b6005546001600160a01b03163314610e7b5760405162461bcd60e51b81526004016109399061226a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603610f225760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b65725061697273000000000000006064820152608401610939565b610f2c8282611e1c565b5050565b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015610fb25760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610939565b610fbf3385858403611494565b5060019392505050565b6005546001600160a01b03163314610ff35760405162461bcd60e51b81526004016109399061226a565b6001600160a01b039091166000908152601160209081526040808320805494151560ff19958616811790915560109092529091208054909216179055565b60006109053384846115b8565b6005546001600160a01b031633146110685760405162461bcd60e51b81526004016109399061226a565b6006546040516001600160a01b03918216918316907fa751787977eeb3902e30e1d19ca00c6ad274a1f622c31a206e32366700b0567490600090a3600680546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b031633146110ef5760405162461bcd60e51b81526004016109399061226a565b6001600160a01b038216600081815260106020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b031633146111785760405162461bcd60e51b81526004016109399061226a565b670de0b6b3a76400006103e861118d60025490565b6111989060056122b5565b6111a291906122cc565b6111ac91906122cc565b8110156112075760405162461bcd60e51b8152602060048201526024808201527f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e20604482015263302e352560e01b6064820152608401610939565b61121981670de0b6b3a76400006122b5565b60095550565b6005546000906001600160a01b0316331461124c5760405162461bcd60e51b81526004016109399061226a565b620186a061125960025490565b6112649060016122b5565b61126e91906122cc565b8210156112db5760405162461bcd60e51b815260206004820152603560248201527f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e60448201527410181718181892903a37ba30b61039bab838363c9760591b6064820152608401610939565b6103e86112e760025490565b6112f29060056122b5565b6112fc91906122cc565b8211156113685760405162461bcd60e51b815260206004820152603460248201527f5377617020616d6f756e742063616e6e6f742062652068696768657220746861604482015273371018171a92903a37ba30b61039bab838363c9760611b6064820152608401610939565b50600881905560015b919050565b6005546001600160a01b031633146113a05760405162461bcd60e51b81526004016109399061226a565b600e819055600d8190556101f4811115610bef5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420353025206f72206c6573730000006044820152606401610939565b6005546001600160a01b031633146114265760405162461bcd60e51b81526004016109399061226a565b6001600160a01b03811661148b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610939565b610bef81611c0a565b6001600160a01b0383166114f65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610939565b6001600160a01b0382166115575760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610939565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166115de5760405162461bcd60e51b815260040161093990612301565b6001600160a01b0382166116045760405162461bcd60e51b815260040161093990612346565b8060000361161d5761161883836000611e70565b505050565b600a5460ff1615611993576005546001600160a01b0384811691161480159061165457506005546001600160a01b03838116911614155b801561166857506001600160a01b03821615155b801561167f57506001600160a01b03821661dead14155b80156116955750600554600160a01b900460ff16155b1561199357600a54610100900460ff1661172d576001600160a01b03831660009081526010602052604090205460ff16806116e857506001600160a01b03821660009081526010602052604090205460ff165b61172d5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b6044820152606401610939565b6001600160a01b03831660009081526012602052604090205460ff16801561176e57506001600160a01b03821660009081526011602052604090205460ff16155b15611852576007548111156117e35760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b6064820152608401610939565b6009546001600160a01b03831660009081526020819052604090205461180990836122ee565b111561184d5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610939565b611993565b6001600160a01b03821660009081526012602052604090205460ff16801561189357506001600160a01b03831660009081526011602052604090205460ff16155b156119095760075481111561184d5760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b6064820152608401610939565b6001600160a01b03821660009081526011602052604090205460ff16611993576009546001600160a01b03831660009081526020819052604090205461194f90836122ee565b11156119935760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610939565b30600090815260208190526040902054600854811080159081906119bf5750600a5462010000900460ff165b80156119d55750600554600160a01b900460ff16155b80156119fa57506001600160a01b03851660009081526012602052604090205460ff16155b8015611a1f57506001600160a01b03851660009081526010602052604090205460ff16155b8015611a4457506001600160a01b03841660009081526010602052604090205460ff16155b15611a72576005805460ff60a01b1916600160a01b179055611a64611fc5565b6005805460ff60a01b191690555b6005546001600160a01b03861660009081526010602052604090205460ff600160a01b909204821615911680611ac057506001600160a01b03851660009081526010602052604090205460ff165b15611ac9575060005b60008115611bf6576001600160a01b03861660009081526012602052604090205460ff168015611afb57506000600d54115b15611b5a57611b216103e8611b1b600d548861207290919063ffffffff16565b90612085565b9050600d54600e5482611b3491906122b5565b611b3e91906122cc565b600f6000828254611b4f91906122ee565b90915550611bd89050565b6001600160a01b03871660009081526012602052604090205460ff168015611b8457506000600b54115b15611bd857611ba46103e8611b1b600b548861207290919063ffffffff16565b9050600b54600c5482611bb791906122b5565b611bc191906122cc565b600f6000828254611bd291906122ee565b90915550505b8015611be957611be9873083611e70565b611bf38186612389565b94505b611c01878787611e70565b50505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611c9157611c9161239c565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d3391906123b2565b81600181518110611d4657611d4661239c565b60200260200101906001600160a01b031690816001600160a01b031681525050611d91307f000000000000000000000000000000000000000000000000000000000000000084611494565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063791ac94790611de69085906000908690309042906004016123cf565b600060405180830381600087803b158015611e0057600080fd5b505af1158015611e14573d6000803e3d6000fd5b505050505050565b6001600160a01b038216600081815260126020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b038316611e965760405162461bcd60e51b815260040161093990612301565b6001600160a01b038216611ebc5760405162461bcd60e51b815260040161093990612346565b6001600160a01b03831660009081526020819052604090205481811015611f345760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610939565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290611f6b9084906122ee565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611fb791815260200190565b60405180910390a350505050565b30600090815260208190526040812054600f549091821580611fe5575081155b15611fef57505050565b600854611ffd9060146122b5565b831115612015576008546120129060146122b5565b92505b8261201f81611c5c565b6000600f8190556006546040516001600160a01b039091169147919081818185875af1925050503d8060008114611c01576040519150601f19603f3d011682016040523d82523d6000602084013e611c01565b600061207e82846122b5565b9392505050565b600061207e82846122cc565b600060208083528351808285015260005b818110156120be578581018301518582016040015282016120a2565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610bef57600080fd5b6000806040838503121561210757600080fd5b8235612112816120df565b946020939093013593505050565b60006020828403121561213257600080fd5b813561207e816120df565b60006020828403121561214f57600080fd5b5035919050565b60008060006060848603121561216b57600080fd5b8335612176816120df565b92506020840135612186816120df565b929592945050506040919091013590565b8035801515811461137157600080fd5b600080604083850312156121ba57600080fd5b82356121c5816120df565b91506121d360208401612197565b90509250929050565b6000602082840312156121ee57600080fd5b61207e82612197565b6000806040838503121561220a57600080fd5b8235612215816120df565b91506020830135612225816120df565b809150509250929050565b600181811c9082168061224457607f821691505b60208210810361226457634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176109095761090961229f565b6000826122e957634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156109095761090961229f565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b818103818111156109095761090961229f565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156123c457600080fd5b815161207e816120df565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561241f5784516001600160a01b0316835293830193918301916001016123fa565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212209ed1376cc6f2f056da80101c52b0af423724d661514821da2e35f361da3ae2a464736f6c634300081300334f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65720000000000000000000000009b57a84d08a80291846b552d15e6c03f99064a94

Deployed Bytecode

0x6080604052600436106102815760003560e01c80638a8c523c1161014f578063b62496f5116100c1578063d85ba0631161007a578063d85ba0631461079e578063dd62ed3e146107b4578063e2f45605146107fa578063eba4c33314610810578063f2fde38b14610830578063f8b45b051461085057600080fd5b8063b62496f5146106d9578063bbc0c74214610709578063c024666814610728578063c18bc19514610748578063c8c8ebe414610768578063d257b34f1461077e57600080fd5b806395d89b411161011357806395d89b41146106245780639a7a23d614610639578063a457c2d714610659578063a672990c14610679578063a9059cbb14610699578063aacebbe3146106b957600080fd5b80638a8c523c146105a65780638da5cb5b146105bb5780638db6a9cf146105d957806392136913146105ee578063924de9b71461060457600080fd5b806349bd5a5e116101f3578063715018a6116101ac578063715018a6146104fc57806371fc468814610511578063751039fc146105315780637571336a1461054657806375f0a87414610566578063881dce601461058657600080fd5b806349bd5a5e1461042d5780634a62bb65146104615780636a486a8e1461047b5780636ddd1713146104915780636fc3eaec146104b157806370a08231146104c657600080fd5b80631f3fed8f116102455780631f3fed8f14610383578063203e727e1461039957806323b872dd146103bb57806327c8f835146103db578063313ce567146103f1578063395093511461040d57600080fd5b806306fdde031461028d578063095ea7b3146102b857806310d5de53146102e85780631694505e1461031857806318160ddd1461036457600080fd5b3661028857005b600080fd5b34801561029957600080fd5b506102a2610866565b6040516102af9190612091565b60405180910390f35b3480156102c457600080fd5b506102d86102d33660046120f4565b6108f8565b60405190151581526020016102af565b3480156102f457600080fd5b506102d8610303366004612120565b60116020526000908152604090205460ff1681565b34801561032457600080fd5b5061034c7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b0390911681526020016102af565b34801561037057600080fd5b506002545b6040519081526020016102af565b34801561038f57600080fd5b50610375600f5481565b3480156103a557600080fd5b506103b96103b436600461213d565b61090f565b005b3480156103c757600080fd5b506102d86103d6366004612156565b6109f5565b3480156103e757600080fd5b5061034c61dead81565b3480156103fd57600080fd5b50604051601281526020016102af565b34801561041957600080fd5b506102d86104283660046120f4565b610a9f565b34801561043957600080fd5b5061034c7f000000000000000000000000b7d2785feb904c680c006bec7e23bf35abfdc96181565b34801561046d57600080fd5b50600a546102d89060ff1681565b34801561048757600080fd5b50610375600d5481565b34801561049d57600080fd5b50600a546102d89062010000900460ff1681565b3480156104bd57600080fd5b506103b9610adb565b3480156104d257600080fd5b506103756104e1366004612120565b6001600160a01b031660009081526020819052604090205490565b34801561050857600080fd5b506103b9610b33565b34801561051d57600080fd5b506103b961052c36600461213d565b610b69565b34801561053d57600080fd5b506102d8610bf2565b34801561055257600080fd5b506103b96105613660046121a7565b610c2f565b34801561057257600080fd5b5060065461034c906001600160a01b031681565b34801561059257600080fd5b506103b96105a136600461213d565b610c84565b3480156105b257600080fd5b506103b9610ce7565b3480156105c757600080fd5b506005546001600160a01b031661034c565b3480156105e557600080fd5b506103b9610d39565b3480156105fa57600080fd5b50610375600e5481565b34801561061057600080fd5b506103b961061f3660046121dc565b610dfc565b34801561063057600080fd5b506102a2610e42565b34801561064557600080fd5b506103b96106543660046121a7565b610e51565b34801561066557600080fd5b506102d86106743660046120f4565b610f30565b34801561068557600080fd5b506103b96106943660046121a7565b610fc9565b3480156106a557600080fd5b506102d86106b43660046120f4565b611031565b3480156106c557600080fd5b506103b96106d4366004612120565b61103e565b3480156106e557600080fd5b506102d86106f4366004612120565b60126020526000908152604090205460ff1681565b34801561071557600080fd5b50600a546102d890610100900460ff1681565b34801561073457600080fd5b506103b96107433660046121a7565b6110c5565b34801561075457600080fd5b506103b961076336600461213d565b61114e565b34801561077457600080fd5b5061037560075481565b34801561078a57600080fd5b506102d861079936600461213d565b61121f565b3480156107aa57600080fd5b50610375600b5481565b3480156107c057600080fd5b506103756107cf3660046121f7565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561080657600080fd5b5061037560085481565b34801561081c57600080fd5b506103b961082b36600461213d565b611376565b34801561083c57600080fd5b506103b961084b366004612120565b6113fc565b34801561085c57600080fd5b5061037560095481565b60606003805461087590612230565b80601f01602080910402602001604051908101604052809291908181526020018280546108a190612230565b80156108ee5780601f106108c3576101008083540402835291602001916108ee565b820191906000526020600020905b8154815290600101906020018083116108d157829003601f168201915b5050505050905090565b6000610905338484611494565b5060015b92915050565b6005546001600160a01b031633146109425760405162461bcd60e51b81526004016109399061226a565b60405180910390fd5b670de0b6b3a76400006103e861095760025490565b6109629060016122b5565b61096c91906122cc565b61097691906122cc565b8110156109dd5760405162461bcd60e51b815260206004820152602f60248201527f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060448201526e6c6f776572207468616e20302e312560881b6064820152608401610939565b6109ef81670de0b6b3a76400006122b5565b60075550565b6000610a028484846115b8565b6001600160a01b038416600090815260016020908152604080832033845290915290205482811015610a875760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152608401610939565b610a948533858403611494565b506001949350505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610905918590610ad69086906122ee565b611494565b6006546040516000916001600160a01b03169047908381818185875af1925050503d8060008114610b28576040519150601f19603f3d011682016040523d82523d6000602084013e610b2d565b606091505b50505050565b6005546001600160a01b03163314610b5d5760405162461bcd60e51b81526004016109399061226a565b610b676000611c0a565b565b6005546001600160a01b03163314610b935760405162461bcd60e51b81526004016109399061226a565b600c819055600b8190556101f4811115610bef5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420353025206f72206c6573730000006044820152606401610939565b50565b6005546000906001600160a01b03163314610c1f5760405162461bcd60e51b81526004016109399061226a565b50600a805460ff19169055600190565b6005546001600160a01b03163314610c595760405162461bcd60e51b81526004016109399061226a565b6001600160a01b03919091166000908152601160205260409020805460ff1916911515919091179055565b306000908152602081905260409020548111158015610ca35750600081115b610cde5760405162461bcd60e51b815260206004820152600c60248201526b15dc9bdb99c8185b5bdd5b9d60a21b6044820152606401610939565b610bef81611c5c565b6005546001600160a01b03163314610d115760405162461bcd60e51b81526004016109399061226a565b6103d4600c819055600b819055600e819055600d55600a805462ffff00191662010100179055565b6005546001600160a01b03163314610d635760405162461bcd60e51b81526004016109399061226a565b600a546301000000900460ff1615610dbd5760405162461bcd60e51b815260206004820152601e60248201527f4f6e6520756c74696d617465206d656d65636f696e20746f20756e69746500006044820152606401610939565b6032600c819055600b556103de600e819055600d556b1b2b45bd27aabe4d6e6000006007819055600955600a805463ff00000019166301000000179055565b6005546001600160a01b03163314610e265760405162461bcd60e51b81526004016109399061226a565b600a8054911515620100000262ff000019909216919091179055565b60606004805461087590612230565b6005546001600160a01b03163314610e7b5760405162461bcd60e51b81526004016109399061226a565b7f000000000000000000000000b7d2785feb904c680c006bec7e23bf35abfdc9616001600160a01b0316826001600160a01b031603610f225760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b65725061697273000000000000006064820152608401610939565b610f2c8282611e1c565b5050565b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015610fb25760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610939565b610fbf3385858403611494565b5060019392505050565b6005546001600160a01b03163314610ff35760405162461bcd60e51b81526004016109399061226a565b6001600160a01b039091166000908152601160209081526040808320805494151560ff19958616811790915560109092529091208054909216179055565b60006109053384846115b8565b6005546001600160a01b031633146110685760405162461bcd60e51b81526004016109399061226a565b6006546040516001600160a01b03918216918316907fa751787977eeb3902e30e1d19ca00c6ad274a1f622c31a206e32366700b0567490600090a3600680546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b031633146110ef5760405162461bcd60e51b81526004016109399061226a565b6001600160a01b038216600081815260106020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b031633146111785760405162461bcd60e51b81526004016109399061226a565b670de0b6b3a76400006103e861118d60025490565b6111989060056122b5565b6111a291906122cc565b6111ac91906122cc565b8110156112075760405162461bcd60e51b8152602060048201526024808201527f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e20604482015263302e352560e01b6064820152608401610939565b61121981670de0b6b3a76400006122b5565b60095550565b6005546000906001600160a01b0316331461124c5760405162461bcd60e51b81526004016109399061226a565b620186a061125960025490565b6112649060016122b5565b61126e91906122cc565b8210156112db5760405162461bcd60e51b815260206004820152603560248201527f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e60448201527410181718181892903a37ba30b61039bab838363c9760591b6064820152608401610939565b6103e86112e760025490565b6112f29060056122b5565b6112fc91906122cc565b8211156113685760405162461bcd60e51b815260206004820152603460248201527f5377617020616d6f756e742063616e6e6f742062652068696768657220746861604482015273371018171a92903a37ba30b61039bab838363c9760611b6064820152608401610939565b50600881905560015b919050565b6005546001600160a01b031633146113a05760405162461bcd60e51b81526004016109399061226a565b600e819055600d8190556101f4811115610bef5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420353025206f72206c6573730000006044820152606401610939565b6005546001600160a01b031633146114265760405162461bcd60e51b81526004016109399061226a565b6001600160a01b03811661148b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610939565b610bef81611c0a565b6001600160a01b0383166114f65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610939565b6001600160a01b0382166115575760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610939565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166115de5760405162461bcd60e51b815260040161093990612301565b6001600160a01b0382166116045760405162461bcd60e51b815260040161093990612346565b8060000361161d5761161883836000611e70565b505050565b600a5460ff1615611993576005546001600160a01b0384811691161480159061165457506005546001600160a01b03838116911614155b801561166857506001600160a01b03821615155b801561167f57506001600160a01b03821661dead14155b80156116955750600554600160a01b900460ff16155b1561199357600a54610100900460ff1661172d576001600160a01b03831660009081526010602052604090205460ff16806116e857506001600160a01b03821660009081526010602052604090205460ff165b61172d5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b6044820152606401610939565b6001600160a01b03831660009081526012602052604090205460ff16801561176e57506001600160a01b03821660009081526011602052604090205460ff16155b15611852576007548111156117e35760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b6064820152608401610939565b6009546001600160a01b03831660009081526020819052604090205461180990836122ee565b111561184d5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610939565b611993565b6001600160a01b03821660009081526012602052604090205460ff16801561189357506001600160a01b03831660009081526011602052604090205460ff16155b156119095760075481111561184d5760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b6064820152608401610939565b6001600160a01b03821660009081526011602052604090205460ff16611993576009546001600160a01b03831660009081526020819052604090205461194f90836122ee565b11156119935760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610939565b30600090815260208190526040902054600854811080159081906119bf5750600a5462010000900460ff165b80156119d55750600554600160a01b900460ff16155b80156119fa57506001600160a01b03851660009081526012602052604090205460ff16155b8015611a1f57506001600160a01b03851660009081526010602052604090205460ff16155b8015611a4457506001600160a01b03841660009081526010602052604090205460ff16155b15611a72576005805460ff60a01b1916600160a01b179055611a64611fc5565b6005805460ff60a01b191690555b6005546001600160a01b03861660009081526010602052604090205460ff600160a01b909204821615911680611ac057506001600160a01b03851660009081526010602052604090205460ff165b15611ac9575060005b60008115611bf6576001600160a01b03861660009081526012602052604090205460ff168015611afb57506000600d54115b15611b5a57611b216103e8611b1b600d548861207290919063ffffffff16565b90612085565b9050600d54600e5482611b3491906122b5565b611b3e91906122cc565b600f6000828254611b4f91906122ee565b90915550611bd89050565b6001600160a01b03871660009081526012602052604090205460ff168015611b8457506000600b54115b15611bd857611ba46103e8611b1b600b548861207290919063ffffffff16565b9050600b54600c5482611bb791906122b5565b611bc191906122cc565b600f6000828254611bd291906122ee565b90915550505b8015611be957611be9873083611e70565b611bf38186612389565b94505b611c01878787611e70565b50505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611c9157611c9161239c565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d3391906123b2565b81600181518110611d4657611d4661239c565b60200260200101906001600160a01b031690816001600160a01b031681525050611d91307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84611494565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063791ac94790611de69085906000908690309042906004016123cf565b600060405180830381600087803b158015611e0057600080fd5b505af1158015611e14573d6000803e3d6000fd5b505050505050565b6001600160a01b038216600081815260126020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b038316611e965760405162461bcd60e51b815260040161093990612301565b6001600160a01b038216611ebc5760405162461bcd60e51b815260040161093990612346565b6001600160a01b03831660009081526020819052604090205481811015611f345760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610939565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290611f6b9084906122ee565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611fb791815260200190565b60405180910390a350505050565b30600090815260208190526040812054600f549091821580611fe5575081155b15611fef57505050565b600854611ffd9060146122b5565b831115612015576008546120129060146122b5565b92505b8261201f81611c5c565b6000600f8190556006546040516001600160a01b039091169147919081818185875af1925050503d8060008114611c01576040519150601f19603f3d011682016040523d82523d6000602084013e611c01565b600061207e82846122b5565b9392505050565b600061207e82846122cc565b600060208083528351808285015260005b818110156120be578581018301518582016040015282016120a2565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610bef57600080fd5b6000806040838503121561210757600080fd5b8235612112816120df565b946020939093013593505050565b60006020828403121561213257600080fd5b813561207e816120df565b60006020828403121561214f57600080fd5b5035919050565b60008060006060848603121561216b57600080fd5b8335612176816120df565b92506020840135612186816120df565b929592945050506040919091013590565b8035801515811461137157600080fd5b600080604083850312156121ba57600080fd5b82356121c5816120df565b91506121d360208401612197565b90509250929050565b6000602082840312156121ee57600080fd5b61207e82612197565b6000806040838503121561220a57600080fd5b8235612215816120df565b91506020830135612225816120df565b809150509250929050565b600181811c9082168061224457607f821691505b60208210810361226457634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176109095761090961229f565b6000826122e957634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156109095761090961229f565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b818103818111156109095761090961229f565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156123c457600080fd5b815161207e816120df565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561241f5784516001600160a01b0316835293830193918301916001016123fa565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212209ed1376cc6f2f056da80101c52b0af423724d661514821da2e35f361da3ae2a464736f6c63430008130033

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

0000000000000000000000009b57a84d08a80291846b552d15e6c03f99064a94

-----Decoded View---------------
Arg [0] : walletCore (address): 0x9b57a84d08A80291846B552D15e6C03F99064a94

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000009b57a84d08a80291846b552d15e6c03f99064a94


Deployed Bytecode Sourcemap

15094:11916:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2791:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3705:169;;;;;;;;;;-1:-1:-1;3705:169:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;3705:169:0;1023:187:1;15922:63:0;;;;;;;;;;-1:-1:-1;15922:63:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;15171:51;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1658:32:1;;;1640:51;;1628:2;1613:18;15171:51:0;1467:230:1;3112:108:0;;;;;;;;;;-1:-1:-1;3200:12:0;;3112:108;;;1848:25:1;;;1836:2;1821:18;3112:108:0;1702:177:1;15821:33:0;;;;;;;;;;;;;;;;18711:275;;;;;;;;;;-1:-1:-1;18711:275:0;;;;;:::i;:::-;;:::i;:::-;;3882:492;;;;;;;;;;-1:-1:-1;3882:492:0;;;;;:::i;:::-;;:::i;15274:53::-;;;;;;;;;;;;15320:6;15274:53;;3011:93;;;;;;;;;;-1:-1:-1;3011:93:0;;3094:2;2880:36:1;;2868:2;2853:18;3011:93:0;2738:184:1;4382:215:0;;;;;;;;;;-1:-1:-1;4382:215:0;;;;;:::i;:::-;;:::i;15229:38::-;;;;;;;;;;;;;;;15520:33;;;;;;;;;;-1:-1:-1;15520:33:0;;;;;;;;15746:28;;;;;;;;;;;;;;;;15600:31;;;;;;;;;;-1:-1:-1;15600:31:0;;;;;;;;;;;21117:174;;;;;;;;;;;;;:::i;3228:127::-;;;;;;;;;;-1:-1:-1;3228:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;3329:18:0;3302:7;3329:18;;;;;;;;;;;;3228:127;909:103;;;;;;;;;;;;;:::i;19844:244::-;;;;;;;;;;-1:-1:-1;19844:244:0;;;;;:::i;:::-;;:::i;18077:121::-;;;;;;;;;;;;;:::i;19473:167::-;;;;;;;;;;-1:-1:-1;19473:167:0;;;;;:::i;:::-;;:::i;15366:30::-;;;;;;;;;;-1:-1:-1;15366:30:0;;;;-1:-1:-1;;;;;15366:30:0;;;20543:172;;;;;;;;;;-1:-1:-1;20543:172:0;;;;;:::i;:::-;;:::i;17808:261::-;;;;;;;;;;;;;:::i;684:87::-;;;;;;;;;;-1:-1:-1;757:6:0;;-1:-1:-1;;;;;757:6:0;684:87;;20723:386;;;;;;;;;;;;;:::i;15781:31::-;;;;;;;;;;;;;;;;19736:100;;;;;;;;;;-1:-1:-1;19736:100:0;;;;;:::i;:::-;;:::i;2899:104::-;;;;;;;;;;;;;:::i;21303:304::-;;;;;;;;;;-1:-1:-1;21303:304:0;;;;;:::i;:::-;;:::i;4605:413::-;;;;;;;;;;-1:-1:-1;4605:413:0;;;;;:::i;:::-;;:::i;19258:207::-;;;;;;;;;;-1:-1:-1;19258:207:0;;;;;:::i;:::-;;:::i;3363:175::-;;;;;;;;;;-1:-1:-1;3363:175:0;;;;;:::i;:::-;;:::i;21811:231::-;;;;;;;;;;-1:-1:-1;21811:231:0;;;;;:::i;:::-;;:::i;15994:57::-;;;;;;;;;;-1:-1:-1;15994:57:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;15560:33;;;;;;;;;;-1:-1:-1;15560:33:0;;;;;;;;;;;20353:182;;;;;;;;;;-1:-1:-1;20353:182:0;;;;;:::i;:::-;;:::i;18994:256::-;;;;;;;;;;-1:-1:-1;18994:256:0;;;;;:::i;:::-;;:::i;15405:35::-;;;;;;;;;;;;;;;;18206:497;;;;;;;;;;-1:-1:-1;18206:497:0;;;;;:::i;:::-;;:::i;15672:27::-;;;;;;;;;;;;;;;;3546:151;;;;;;;;;;-1:-1:-1;3546:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;3662:18:0;;;3635:7;3662:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;3546:151;15447:33;;;;;;;;;;;;;;;;20096:249;;;;;;;;;;-1:-1:-1;20096:249:0;;;;;:::i;:::-;;:::i;1022:201::-;;;;;;;;;;-1:-1:-1;1022:201:0;;;;;:::i;:::-;;:::i;15487:24::-;;;;;;;;;;;;;;;;2791:100;2845:13;2878:5;2871:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2791:100;:::o;3705:169::-;3788:4;3805:39;304:10;3828:7;3837:6;3805:8;:39::i;:::-;-1:-1:-1;3862:4:0;3705:169;;;;;:::o;18711:275::-;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;;;;;;;;;18848:4:::1;18840;18819:13;3200:12:::0;;;3112:108;18819:13:::1;:17;::::0;18835:1:::1;18819:17;:::i;:::-;18818:26;;;;:::i;:::-;18817:35;;;;:::i;:::-;18807:6;:45;;18785:142;;;::::0;-1:-1:-1;;;18785:142:0;;5465:2:1;18785:142:0::1;::::0;::::1;5447:21:1::0;5504:2;5484:18;;;5477:30;5543:34;5523:18;;;5516:62;-1:-1:-1;;;5594:18:1;;;5587:45;5649:19;;18785:142:0::1;5263:411:1::0;18785:142:0::1;18961:17;:6:::0;18971::::1;18961:17;:::i;:::-;18938:20;:40:::0;-1:-1:-1;18711:275:0:o;3882:492::-;4022:4;4039:36;4049:6;4057:9;4068:6;4039:9;:36::i;:::-;-1:-1:-1;;;;;4115:19:0;;4088:24;4115:19;;;:11;:19;;;;;;;;304:10;4115:33;;;;;;;;4167:26;;;;4159:79;;;;-1:-1:-1;;;4159:79:0;;5881:2:1;4159:79:0;;;5863:21:1;5920:2;5900:18;;;5893:30;5959:34;5939:18;;;5932:62;-1:-1:-1;;;6010:18:1;;;6003:38;6058:19;;4159:79:0;5679:404:1;4159:79:0;4274:57;4283:6;304:10;4324:6;4305:16;:25;4274:8;:57::i;:::-;-1:-1:-1;4362:4:0;;3882:492;-1:-1:-1;;;;3882:492:0:o;4382:215::-;304:10;4470:4;4519:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;4519:34:0;;;;;;;;;;4470:4;;4487:80;;4510:7;;4519:47;;4556:10;;4519:47;:::i;:::-;4487:8;:80::i;21117:174::-;21204:15;;21196:87;;21159:12;;-1:-1:-1;;;;;21204:15:0;;21247:21;;21159:12;21196:87;21159:12;21196:87;21247:21;21204:15;21196:87;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;21117:174:0:o;909:103::-;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;974:30:::1;1001:1;974:18;:30::i;:::-;909:103::o:0;19844:244::-;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;19936:15:::1;:31:::0;;;19978:12:::1;:30:::0;;;20043:3:::1;20027:19:::0;::::1;;20019:61;;;::::0;-1:-1:-1;;;20019:61:0;;6630:2:1;20019:61:0::1;::::0;::::1;6612:21:1::0;6669:2;6649:18;;;6642:30;6708:31;6688:18;;;6681:59;6757:18;;20019:61:0::1;6428:353:1::0;20019:61:0::1;19844:244:::0;:::o;18077:121::-;757:6;;18129:4;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;-1:-1:-1;18146:14:0::1;:22:::0;;-1:-1:-1;;18146:22:0::1;::::0;;;18077:121;:::o;19473:167::-;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;19586:39:0;;;::::1;;::::0;;;:31:::1;:39;::::0;;;;:46;;-1:-1:-1;;19586:46:0::1;::::0;::::1;;::::0;;;::::1;::::0;;19473:167::o;20543:172::-;20635:4;3302:7;3329:18;;;;;;;;;;;20607:6;:34;;:48;;;;;20654:1;20645:6;:10;20607:48;20599:73;;;;-1:-1:-1;;;20599:73:0;;6988:2:1;20599:73:0;;;6970:21:1;7027:2;7007:18;;;7000:30;-1:-1:-1;;;7046:18:1;;;7039:42;7098:18;;20599:73:0;6786:336:1;20599:73:0;20683:24;20700:6;20683:16;:24::i;17808:261::-;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;17881:3:::1;17863:15;:21:::0;;;17895:12:::1;:30:::0;;;17936:16:::1;:22:::0;;;17969:13:::1;:32:::0;18012:13:::1;:20:::0;;-1:-1:-1;;18043:18:0;;;;;17808:261::o;20723:386::-;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;20779:12:::1;::::0;;;::::1;;;20778:13;20770:56;;;::::0;-1:-1:-1;;;20770:56:0;;7329:2:1;20770:56:0::1;::::0;::::1;7311:21:1::0;7368:2;7348:18;;;7341:30;7407:32;7387:18;;;7380:60;7457:18;;20770:56:0::1;7127:354:1::0;20770:56:0::1;20855:2;20837:15;:20:::0;;;20866:12:::1;:30:::0;20926:3:::1;20907:16;:22:::0;;;20938:13:::1;:32:::0;21005:21:::1;20981:20;:45:::0;;;21035:9:::1;:34:::0;21080:12:::1;:19:::0;;-1:-1:-1;;21080:19:0::1;::::0;::::1;::::0;;20723:386::o;19736:100::-;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;19807:11:::1;:21:::0;;;::::1;;::::0;::::1;-1:-1:-1::0;;19807:21:0;;::::1;::::0;;;::::1;::::0;;19736:100::o;2899:104::-;2955:13;2988:7;2981:14;;;;;:::i;21303:304::-;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;21447:13:::1;-1:-1:-1::0;;;;;21439:21:0::1;:4;-1:-1:-1::0;;;;;21439:21:0::1;::::0;21417:128:::1;;;::::0;-1:-1:-1;;;21417:128:0;;7688:2:1;21417:128:0::1;::::0;::::1;7670:21:1::0;7727:2;7707:18;;;7700:30;7766:34;7746:18;;;7739:62;7837:27;7817:18;;;7810:55;7882:19;;21417:128:0::1;7486:421:1::0;21417:128:0::1;21558:41;21587:4;21593:5;21558:28;:41::i;:::-;21303:304:::0;;:::o;4605:413::-;304:10;4698:4;4742:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;4742:34:0;;;;;;;;;;4795:35;;;;4787:85;;;;-1:-1:-1;;;4787:85:0;;8114:2:1;4787:85:0;;;8096:21:1;8153:2;8133:18;;;8126:30;8192:34;8172:18;;;8165:62;-1:-1:-1;;;8243:18:1;;;8236:35;8288:19;;4787:85:0;7912:401:1;4787:85:0;4908:67;304:10;4931:7;4959:15;4940:16;:34;4908:8;:67::i;:::-;-1:-1:-1;5006:4:0;;4605:413;-1:-1:-1;;;4605:413:0:o;19258:207::-;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;19356:43:0;;::::1;;::::0;;;:31:::1;:43;::::0;;;;;;;:50;;;::::1;;-1:-1:-1::0;;19356:50:0;;::::1;::::0;::::1;::::0;;;19417:19:::1;:31:::0;;;;;;:38;;;;::::1;;::::0;;19258:207::o;3363:175::-;3449:4;3466:42;304:10;3490:9;3501:6;3466:9;:42::i;21811:231::-;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;21971:15:::1;::::0;21928:59:::1;::::0;-1:-1:-1;;;;;21971:15:0;;::::1;::::0;21928:59;::::1;::::0;::::1;::::0;21971:15:::1;::::0;21928:59:::1;21998:15;:36:::0;;-1:-1:-1;;;;;;21998:36:0::1;-1:-1:-1::0;;;;;21998:36:0;;;::::1;::::0;;;::::1;::::0;;21811:231::o;20353:182::-;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;20438:28:0;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;;;:39;;-1:-1:-1;;20438:39:0::1;::::0;::::1;;::::0;;::::1;::::0;;;20493:34;;1163:41:1;;;20493:34:0::1;::::0;1136:18:1;20493:34:0::1;;;;;;;20353:182:::0;;:::o;18994:256::-;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;19134:4:::1;19126;19105:13;3200:12:::0;;;3112:108;19105:13:::1;:17;::::0;19121:1:::1;19105:17;:::i;:::-;19104:26;;;;:::i;:::-;19103:35;;;;:::i;:::-;19093:6;:45;;19071:131;;;::::0;-1:-1:-1;;;19071:131:0;;8520:2:1;19071:131:0::1;::::0;::::1;8502:21:1::0;8559:2;8539:18;;;8532:30;8598:34;8578:18;;;8571:62;-1:-1:-1;;;8649:18:1;;;8642:34;8693:19;;19071:131:0::1;8318:400:1::0;19071:131:0::1;19225:17;:6:::0;19235::::1;19225:17;:::i;:::-;19213:9;:29:::0;-1:-1:-1;18994:256:0:o;18206:497::-;757:6;;18314:4;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;18393:6:::1;18372:13;3200:12:::0;;;3112:108;18372:13:::1;:17;::::0;18388:1:::1;18372:17;:::i;:::-;18371:28;;;;:::i;:::-;18358:9;:41;;18336:144;;;::::0;-1:-1:-1;;;18336:144:0;;8925:2:1;18336:144:0::1;::::0;::::1;8907:21:1::0;8964:2;8944:18;;;8937:30;9003:34;8983:18;;;8976:62;-1:-1:-1;;;9054:18:1;;;9047:51;9115:19;;18336:144:0::1;8723:417:1::0;18336:144:0::1;18548:4;18527:13;3200:12:::0;;;3112:108;18527:13:::1;:17;::::0;18543:1:::1;18527:17;:::i;:::-;18526:26;;;;:::i;:::-;18513:9;:39;;18491:141;;;::::0;-1:-1:-1;;;18491:141:0;;9347:2:1;18491:141:0::1;::::0;::::1;9329:21:1::0;9386:2;9366:18;;;9359:30;9425:34;9405:18;;;9398:62;-1:-1:-1;;;9476:18:1;;;9469:50;9536:19;;18491:141:0::1;9145:416:1::0;18491:141:0::1;-1:-1:-1::0;18643:18:0::1;:30:::0;;;18691:4:::1;892:1;18206:497:::0;;;:::o;20096:249::-;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;20189:16:::1;:32:::0;;;20232:13:::1;:32:::0;;;20300:3:::1;20283:20:::0;::::1;;20275:62;;;::::0;-1:-1:-1;;;20275:62:0;;6630:2:1;20275:62:0::1;::::0;::::1;6612:21:1::0;6669:2;6649:18;;;6642:30;6708:31;6688:18;;;6681:59;6757:18;;20275:62:0::1;6428:353:1::0;1022:201:0;757:6;;-1:-1:-1;;;;;757:6:0;304:10;821:23;813:68;;;;-1:-1:-1;;;813:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1111:22:0;::::1;1103:73;;;::::0;-1:-1:-1;;;1103:73:0;;9768:2:1;1103:73:0::1;::::0;::::1;9750:21:1::0;9807:2;9787:18;;;9780:30;9846:34;9826:18;;;9819:62;-1:-1:-1;;;9897:18:1;;;9890:36;9943:19;;1103:73:0::1;9566:402:1::0;1103:73:0::1;1187:28;1206:8;1187:18;:28::i;6773:380::-:0;-1:-1:-1;;;;;6909:19:0;;6901:68;;;;-1:-1:-1;;;6901:68:0;;10175:2:1;6901:68:0;;;10157:21:1;10214:2;10194:18;;;10187:30;10253:34;10233:18;;;10226:62;-1:-1:-1;;;10304:18:1;;;10297:34;10348:19;;6901:68:0;9973:400:1;6901:68:0;-1:-1:-1;;;;;6988:21:0;;6980:68;;;;-1:-1:-1;;;6980:68:0;;10580:2:1;6980:68:0;;;10562:21:1;10619:2;10599:18;;;10592:30;10658:34;10638:18;;;10631:62;-1:-1:-1;;;10709:18:1;;;10702:32;10751:19;;6980:68:0;10378:398:1;6980:68:0;-1:-1:-1;;;;;7061:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7113:32;;1848:25:1;;;7113:32:0;;1821:18:1;7113:32:0;;;;;;;6773:380;;;:::o;22050:3626::-;-1:-1:-1;;;;;22182:18:0;;22174:68;;;;-1:-1:-1;;;22174:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;22261:16:0;;22253:64;;;;-1:-1:-1;;;22253:64:0;;;;;;;:::i;:::-;22334:6;22344:1;22334:11;22330:93;;22362:28;22378:4;22384:2;22388:1;22362:15;:28::i;:::-;22050:3626;;;:::o;22330:93::-;22439:14;;;;22435:1694;;;757:6;;-1:-1:-1;;;;;22492:15:0;;;757:6;;22492:15;;;;:49;;-1:-1:-1;757:6:0;;-1:-1:-1;;;;;22528:13:0;;;757:6;;22528:13;;22492:49;:86;;;;-1:-1:-1;;;;;;22562:16:0;;;;22492:86;:128;;;;-1:-1:-1;;;;;;22599:21:0;;22613:6;22599:21;;22492:128;:158;;;;-1:-1:-1;22642:8:0;;-1:-1:-1;;;22642:8:0;;;;22641:9;22492:158;22470:1648;;;22690:13;;;;;;;22685:223;;-1:-1:-1;;;;;22762:25:0;;;;;;:19;:25;;;;;;;;;:52;;-1:-1:-1;;;;;;22791:23:0;;;;;;:19;:23;;;;;;;;22762:52;22728:160;;;;-1:-1:-1;;;22728:160:0;;11793:2:1;22728:160:0;;;11775:21:1;11832:2;11812:18;;;11805:30;-1:-1:-1;;;11851:18:1;;;11844:52;11913:18;;22728:160:0;11591:346:1;22728:160:0;-1:-1:-1;;;;;22982:31:0;;;;;;:25;:31;;;;;;;;:92;;;;-1:-1:-1;;;;;;23039:35:0;;;;;;:31;:35;;;;;;;;23038:36;22982:92;22956:1147;;;23161:20;;23151:6;:30;;23117:169;;;;-1:-1:-1;;;23117:169:0;;12144:2:1;23117:169:0;;;12126:21:1;12183:2;12163:18;;;12156:30;12222:34;12202:18;;;12195:62;-1:-1:-1;;;12273:18:1;;;12266:51;12334:19;;23117:169:0;11942:417:1;23117:169:0;23369:9;;-1:-1:-1;;;;;3329:18:0;;3302:7;3329:18;;;;;;;;;;;23343:22;;:6;:22;:::i;:::-;:35;;23309:140;;;;-1:-1:-1;;;23309:140:0;;12566:2:1;23309:140:0;;;12548:21:1;12605:2;12585:18;;;12578:30;-1:-1:-1;;;12624:18:1;;;12617:49;12683:18;;23309:140:0;12364:343:1;23309:140:0;22956:1147;;;-1:-1:-1;;;;;23547:29:0;;;;;;:25;:29;;;;;;;;:92;;;;-1:-1:-1;;;;;;23602:37:0;;;;;;:31;:37;;;;;;;;23601:38;23547:92;23521:582;;;23726:20;;23716:6;:30;;23682:170;;;;-1:-1:-1;;;23682:170:0;;12914:2:1;23682:170:0;;;12896:21:1;12953:2;12933:18;;;12926:30;12992:34;12972:18;;;12965:62;-1:-1:-1;;;13043:18:1;;;13036:52;13105:19;;23682:170:0;12712:418:1;23521:582:0;-1:-1:-1;;;;;23883:35:0;;;;;;:31;:35;;;;;;;;23878:225;;24003:9;;-1:-1:-1;;;;;3329:18:0;;3302:7;3329:18;;;;;;;;;;;23977:22;;:6;:22;:::i;:::-;:35;;23943:140;;;;-1:-1:-1;;;23943:140:0;;12566:2:1;23943:140:0;;;12548:21:1;12605:2;12585:18;;;12578:30;-1:-1:-1;;;12624:18:1;;;12617:49;12683:18;;23943:140:0;12364:343:1;23943:140:0;24190:4;24141:28;3329:18;;;;;;;;;;;24248;;24224:42;;;;;;;24297:35;;-1:-1:-1;24321:11:0;;;;;;;24297:35;:61;;;;-1:-1:-1;24350:8:0;;-1:-1:-1;;;24350:8:0;;;;24349:9;24297:61;:110;;;;-1:-1:-1;;;;;;24376:31:0;;;;;;:25;:31;;;;;;;;24375:32;24297:110;:153;;;;-1:-1:-1;;;;;;24425:25:0;;;;;;:19;:25;;;;;;;;24424:26;24297:153;:194;;;;-1:-1:-1;;;;;;24468:23:0;;;;;;:19;:23;;;;;;;;24467:24;24297:194;24279:326;;;24518:8;:15;;-1:-1:-1;;;;24518:15:0;-1:-1:-1;;;24518:15:0;;;24550:10;:8;:10::i;:::-;24577:8;:16;;-1:-1:-1;;;;24577:16:0;;;24279:326;24633:8;;-1:-1:-1;;;;;24743:25:0;;24617:12;24743:25;;;:19;:25;;;;;;24633:8;-1:-1:-1;;;24633:8:0;;;;;24632:9;;24743:25;;:52;;-1:-1:-1;;;;;;24772:23:0;;;;;;:19;:23;;;;;;;;24743:52;24739:100;;;-1:-1:-1;24822:5:0;24739:100;24851:12;24956:7;24952:671;;;-1:-1:-1;;;;;25008:29:0;;;;;;:25;:29;;;;;;;;:50;;;;;25057:1;25041:13;;:17;25008:50;25004:470;;;25086:35;25116:4;25086:25;25097:13;;25086:6;:10;;:25;;;;:::i;:::-;:29;;:35::i;:::-;25079:42;;25190:13;;25170:16;;25163:4;:23;;;;:::i;:::-;25162:41;;;;:::i;:::-;25140:18;;:63;;;;;;;:::i;:::-;;;;-1:-1:-1;25004:470:0;;-1:-1:-1;25004:470:0;;-1:-1:-1;;;;;25265:31:0;;;;;;:25;:31;;;;;;;;:51;;;;;25315:1;25300:12;;:16;25265:51;25261:213;;;25344:34;25373:4;25344:24;25355:12;;25344:6;:10;;:24;;;;:::i;:34::-;25337:41;;25446:12;;25427:15;;25420:4;:22;;;;:::i;:::-;25419:39;;;;:::i;:::-;25397:18;;:61;;;;;;;:::i;:::-;;;;-1:-1:-1;;25261:213:0;25494:8;;25490:91;;25523:42;25539:4;25553;25560;25523:15;:42::i;:::-;25597:14;25607:4;25597:14;;:::i;:::-;;;24952:671;25635:33;25651:4;25657:2;25661:6;25635:15;:33::i;:::-;22163:3513;;;;22050:3626;;;:::o;1231:191::-;1324:6;;;-1:-1:-1;;;;;1341:17:0;;;-1:-1:-1;;;;;;1341:17:0;;;;;;;1374:40;;1324:6;;;1341:17;1324:6;;1374:40;;1305:16;;1374:40;1294:128;1231:191;:::o;25684:589::-;25834:16;;;25848:1;25834:16;;;;;;;;25810:21;;25834:16;;;;;;;;;;-1:-1:-1;25834:16:0;25810:40;;25879:4;25861;25866:1;25861:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;25861:23:0;;;-1:-1:-1;;;;;25861:23:0;;;;;25905:15;-1:-1:-1;;;;;25905:20:0;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25895:4;25900:1;25895:7;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;25895:32:0;;;-1:-1:-1;;;;;25895:32:0;;;;;25940:62;25957:4;25972:15;25990:11;25940:8;:62::i;:::-;26041:224;;-1:-1:-1;;;26041:224:0;;-1:-1:-1;;;;;26041:15:0;:66;;;;:224;;26122:11;;26148:1;;26192:4;;26219;;26239:15;;26041:224;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25739:534;25684:589;:::o;21615:188::-;-1:-1:-1;;;;;21698:31:0;;;;;;:25;:31;;;;;;:39;;-1:-1:-1;;21698:39:0;;;;;;;;;;21755:40;;21698:39;;:31;21755:40;;;21615:188;;:::o;5026:733::-;-1:-1:-1;;;;;5166:20:0;;5158:70;;;;-1:-1:-1;;;5158:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5247:23:0;;5239:71;;;;-1:-1:-1;;;5239:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5407:17:0;;5383:21;5407:17;;;;;;;;;;;5443:23;;;;5435:74;;;;-1:-1:-1;;;5435:74:0;;14975:2:1;5435:74:0;;;14957:21:1;15014:2;14994:18;;;14987:30;15053:34;15033:18;;;15026:62;-1:-1:-1;;;15104:18:1;;;15097:36;15150:19;;5435:74:0;14773:402:1;5435:74:0;-1:-1:-1;;;;;5545:17:0;;;:9;:17;;;;;;;;;;;5565:22;;;5545:42;;5609:20;;;;;;;;:30;;5581:6;;5545:9;5609:30;;5581:6;;5609:30;:::i;:::-;;;;;;;;5674:9;-1:-1:-1;;;;;5657:35:0;5666:6;-1:-1:-1;;;;;5657:35:0;;5685:6;5657:35;;;;1848:25:1;;1836:2;1821:18;;1702:177;5657:35:0;;;;;;;;5147:612;5026:733;;;:::o;26283:722::-;26366:4;26322:23;3329:18;;;;;;;;;;;26424;;3329;;26482:20;;;:46;;-1:-1:-1;26506:22:0;;26482:46;26478:85;;;26545:7;;;26283:722::o;26478:85::-;26597:18;;:23;;26618:2;26597:23;:::i;:::-;26579:15;:41;26575:115;;;26655:18;;:23;;26676:2;26655:23;:::i;:::-;26637:41;;26575:115;26782:15;26810:36;26782:15;26810:16;:36::i;:::-;26880:1;26859:18;:22;;;26918:15;;26910:87;;-1:-1:-1;;;;;26918:15:0;;;;26961:21;;26910:87;;26880:1;26910:87;26961:21;26918:15;26910:87;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8779:98;8837:7;8864:5;8868:1;8864;:5;:::i;:::-;8857:12;8779:98;-1:-1:-1;;;8779:98:0:o;8885:::-;8943:7;8970:5;8974:1;8970;:5;:::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;1215:247::-;1274:6;1327:2;1315:9;1306:7;1302:23;1298:32;1295:52;;;1343:1;1340;1333:12;1295:52;1382:9;1369:23;1401:31;1426:5;1401:31;:::i;1884:180::-;1943:6;1996:2;1984:9;1975:7;1971:23;1967:32;1964:52;;;2012:1;2009;2002:12;1964:52;-1:-1:-1;2035:23:1;;1884:180;-1:-1:-1;1884:180:1:o;2069:456::-;2146:6;2154;2162;2215:2;2203:9;2194:7;2190:23;2186:32;2183:52;;;2231:1;2228;2221:12;2183:52;2270:9;2257:23;2289:31;2314:5;2289:31;:::i;:::-;2339:5;-1:-1:-1;2396:2:1;2381:18;;2368:32;2409:33;2368:32;2409:33;:::i;:::-;2069:456;;2461:7;;-1:-1:-1;;;2515:2:1;2500:18;;;;2487:32;;2069:456::o;2927:160::-;2992:20;;3048:13;;3041:21;3031:32;;3021:60;;3077:1;3074;3067:12;3092:315;3157:6;3165;3218:2;3206:9;3197:7;3193:23;3189:32;3186:52;;;3234:1;3231;3224:12;3186:52;3273:9;3260:23;3292:31;3317:5;3292:31;:::i;:::-;3342:5;-1:-1:-1;3366:35:1;3397:2;3382:18;;3366:35;:::i;:::-;3356:45;;3092:315;;;;;:::o;3412:180::-;3468:6;3521:2;3509:9;3500:7;3496:23;3492:32;3489:52;;;3537:1;3534;3527:12;3489:52;3560:26;3576:9;3560:26;:::i;3597:388::-;3665:6;3673;3726:2;3714:9;3705:7;3701:23;3697:32;3694:52;;;3742:1;3739;3732:12;3694:52;3781:9;3768:23;3800:31;3825:5;3800:31;:::i;:::-;3850:5;-1:-1:-1;3907:2:1;3892:18;;3879:32;3920:33;3879:32;3920:33;:::i;:::-;3972:7;3962:17;;;3597:388;;;;;:::o;3990:380::-;4069:1;4065:12;;;;4112;;;4133:61;;4187:4;4179:6;4175:17;4165:27;;4133:61;4240:2;4232:6;4229:14;4209:18;4206:38;4203:161;;4286:10;4281:3;4277:20;4274:1;4267:31;4321:4;4318:1;4311:15;4349:4;4346:1;4339:15;4203:161;;3990:380;;;:::o;4375:356::-;4577:2;4559:21;;;4596:18;;;4589:30;4655:34;4650:2;4635:18;;4628:62;4722:2;4707:18;;4375:356::o;4736:127::-;4797:10;4792:3;4788:20;4785:1;4778:31;4828:4;4825:1;4818:15;4852:4;4849:1;4842:15;4868:168;4941:9;;;4972;;4989:15;;;4983:22;;4969:37;4959:71;;5010:18;;:::i;5041:217::-;5081:1;5107;5097:132;;5151:10;5146:3;5142:20;5139:1;5132:31;5186:4;5183:1;5176:15;5214:4;5211:1;5204:15;5097:132;-1:-1:-1;5243:9:1;;5041:217::o;6088:125::-;6153:9;;;6174:10;;;6171:36;;;6187:18;;:::i;10781:401::-;10983:2;10965:21;;;11022:2;11002:18;;;10995:30;11061:34;11056:2;11041:18;;11034:62;-1:-1:-1;;;11127:2:1;11112:18;;11105:35;11172:3;11157:19;;10781:401::o;11187:399::-;11389:2;11371:21;;;11428:2;11408:18;;;11401:30;11467:34;11462:2;11447:18;;11440:62;-1:-1:-1;;;11533:2:1;11518:18;;11511:33;11576:3;11561:19;;11187:399::o;13135:128::-;13202:9;;;13223:11;;;13220:37;;;13237:18;;:::i;13400:127::-;13461:10;13456:3;13452:20;13449:1;13442:31;13492:4;13489:1;13482:15;13516:4;13513:1;13506:15;13532:251;13602:6;13655:2;13643:9;13634:7;13630:23;13626:32;13623:52;;;13671:1;13668;13661:12;13623:52;13703:9;13697:16;13722:31;13747:5;13722:31;:::i;13788:980::-;14050:4;14098:3;14087:9;14083:19;14129:6;14118:9;14111:25;14155:2;14193:6;14188:2;14177:9;14173:18;14166:34;14236:3;14231:2;14220:9;14216:18;14209:31;14260:6;14295;14289:13;14326:6;14318;14311:22;14364:3;14353:9;14349:19;14342:26;;14403:2;14395:6;14391:15;14377:29;;14424:1;14434:195;14448:6;14445:1;14442:13;14434:195;;;14513:13;;-1:-1:-1;;;;;14509:39:1;14497:52;;14604:15;;;;14569:12;;;;14545:1;14463:9;14434:195;;;-1:-1:-1;;;;;;;14685:32:1;;;;14680:2;14665:18;;14658:60;-1:-1:-1;;;14749:3:1;14734:19;14727:35;14646:3;13788:980;-1:-1:-1;;;13788:980:1:o

Swarm Source

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