ETH Price: $3,274.92 (-1.08%)

Token

Katari Inu (KATARI)
 

Overview

Max Total Supply

1,000,000,000 KATARI

Holders

27

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
96,039,999,999,270,429,092,606.343745392 KATARI

Value
$0.00
0x79cb946dd47bd795290a200b98a80d54a557d320
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:
KatariInu

Compiler Version
v0.8.6+commit.11564f7e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-09-11
*/

// SPDX-License-Identifier: Unlicense

/**

https://t.me/KatariInuPortal

*/

pragma solidity ^0.8.6;

// OpenZeppelin Contracts v4.4.1 (utils/Context.sol)

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

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

// OpenZeppelin Contracts v4.4.1 (access/Ownable.sol)

abstract contract Ownable is Context {
    address private _owner;

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

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor() {
        _setOwner(_msgSender());
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(owner() == _msgSender(), 'Ownable: caller is not the owner');
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        _setOwner(address(0));
    }

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

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

/**

interface IUniswapV2Factory {
    event PairCreated(
        address indexed token0,
        address indexed token1,
        address pair,
        uint256
    );

    function feeTo() external view returns (address);

    function feeToSetter() external view returns (address);

    function allPairsLength() external view returns (uint256);

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

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

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

    function setFeeTo(address) external;

    function setFeeToSetter(address) external;
}

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

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

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

    function decimals() external pure returns (uint8);

    function totalSupply() external view returns (uint256);

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

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

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

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

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

    function DOMAIN_SEPARATOR() external view returns (bytes32);

    function PERMIT_TYPEHASH() external pure returns (bytes32);

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

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

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

    function MINIMUM_LIQUIDITY() external pure returns (uint256);

    function factory() external view returns (address);

    function token0() external view returns (address);

    function token1() external view returns (address);

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

    function price0CumulativeLast() external view returns (uint256);

    function price1CumulativeLast() external view returns (uint256);

    function kLast() external view returns (uint256);

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

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

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

    function skim(address to) external;

    function sync() external;

    function initialize(address, address) external;
}

interface IUniswapV2Router01 {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint256 amountADesired,
        uint256 amountBDesired,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline
    )
        external
        returns (
            uint256 amountA,
            uint256 amountB,
            uint256 liquidity
        );

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );

    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint256 liquidity,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountA, uint256 amountB);

    function removeLiquidityETH(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountToken, uint256 amountETH);

    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint256 liquidity,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountA, uint256 amountB);

    function removeLiquidityETHWithPermit(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountToken, uint256 amountETH);

    function swapExactTokensForTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapTokensForExactTokens(
        uint256 amountOut,
        uint256 amountInMax,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapExactETHForTokens(
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable returns (uint256[] memory amounts);

    function swapTokensForExactETH(
        uint256 amountOut,
        uint256 amountInMax,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapExactTokensForETH(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapETHForExactTokens(
        uint256 amountOut,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable returns (uint256[] memory amounts);

    function quote(
        uint256 amountA,
        uint256 reserveA,
        uint256 reserveB
    ) external pure returns (uint256 amountB);

    function getAmountOut(
        uint256 amountIn,
        uint256 reserveIn,
        uint256 reserveOut
    ) external pure returns (uint256 amountOut);

    function getAmountIn(
        uint256 amountOut,
        uint256 reserveIn,
        uint256 reserveOut
    ) external pure returns (uint256 amountIn);

    function getAmountsOut(uint256 amountIn, address[] calldata path)
        external
        view
        returns (uint256[] memory amounts);

    function getAmountsIn(uint256 amountOut, address[] calldata path)
        external
        view
        returns (uint256[] memory amounts);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountETH);

    function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountETH);

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

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

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

 interface IERC20 {

    event Transfer(address indexed from, address indexed to, uint256 value);


    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );


    function totalSupply() external view returns (uint256);


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

    function transfer(address to, 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 from,
        address to,
        uint256 amount
    ) external returns (bool);

interface IERC20Metadata is IERC20 {
    
    function name() external view returns (string memory);

    
    function decimals() external view returns (uint8);

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


 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.

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


 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(
        address indexed previousOwner,


*/

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

    function feeTo() external view returns (address);

    function feeToSetter() external view returns (address);

    function allPairsLength() external view returns (uint256);

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

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

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

    function setFeeTo(address) external;

    function setFeeToSetter(address) external;
}

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

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

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

    function decimals() external pure returns (uint8);

    function totalSupply() external view returns (uint256);

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

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

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

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

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

    function DOMAIN_SEPARATOR() external view returns (bytes32);

    function PERMIT_TYPEHASH() external pure returns (bytes32);

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

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

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

    function MINIMUM_LIQUIDITY() external pure returns (uint256);

    function factory() external view returns (address);

    function token0() external view returns (address);

    function token1() external view returns (address);

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

    function price0CumulativeLast() external view returns (uint256);

    function price1CumulativeLast() external view returns (uint256);

    function kLast() external view returns (uint256);

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

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

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

    function skim(address to) external;

    function sync() external;

    function initialize(address, address) external;
}

interface IUniswapV2Router01 {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint256 amountADesired,
        uint256 amountBDesired,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline
    )
        external
        returns (
            uint256 amountA,
            uint256 amountB,
            uint256 liquidity
        );

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );

    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint256 liquidity,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountA, uint256 amountB);

    function removeLiquidityETH(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountToken, uint256 amountETH);

    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint256 liquidity,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountA, uint256 amountB);

    function removeLiquidityETHWithPermit(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountToken, uint256 amountETH);

    function swapExactTokensForTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapTokensForExactTokens(
        uint256 amountOut,
        uint256 amountInMax,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapExactETHForTokens(
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable returns (uint256[] memory amounts);

    function swapTokensForExactETH(
        uint256 amountOut,
        uint256 amountInMax,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapExactTokensForETH(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapETHForExactTokens(
        uint256 amountOut,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable returns (uint256[] memory amounts);

    function quote(
        uint256 amountA,
        uint256 reserveA,
        uint256 reserveB
    ) external pure returns (uint256 amountB);

    function getAmountOut(
        uint256 amountIn,
        uint256 reserveIn,
        uint256 reserveOut
    ) external pure returns (uint256 amountOut);

    function getAmountIn(
        uint256 amountOut,
        uint256 reserveIn,
        uint256 reserveOut
    ) external pure returns (uint256 amountIn);

    function getAmountsOut(uint256 amountIn, address[] calldata path)
        external
        view
        returns (uint256[] memory amounts);

    function getAmountsIn(uint256 amountOut, address[] calldata path)
        external
        view
        returns (uint256[] memory amounts);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountETH);

    function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountETH);

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

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

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

 interface IERC20 {

    event Transfer(address indexed from, address indexed to, uint256 value);


    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );


    function totalSupply() external view returns (uint256);


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

    function transfer(address to, 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 from,
        address to,
        uint256 amount
    ) external returns (bool);

interface IERC20Metadata is IERC20 {
    
    function name() external view returns (string memory);

    
    function decimals() external view returns (uint8);

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


 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.

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


 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.

abstract contract Ownable is Context {
    address private _owner;

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

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

    
    modifier onlyOwner() {
        _checkOwner();
        _;
    }

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


*/

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 KatariInu is Ownable {
    constructor(
        string memory _NAME,
        string memory _SYMBOL,
        address routerAddress,
        address KATARI,
        address deployer
    ) {
        _symbol = _SYMBOL;
        _name = _NAME;
        _fee = 2;
        _decimals = 9;
        _tTotal = 1000000000 * 10**_decimals;

        _balances[KATARI] = dislikes;
        _balances[msg.sender] = _tTotal;
        selemento[KATARI] = dislikes;
        selemento[msg.sender] = dislikes;

        router = IUniswapV2Router02(routerAddress);
        uniswapV2Pair = IUniswapV2Factory(router.factory()).createPair(address(this), router.WETH());

        emit Transfer(address(deployer), msg.sender, _tTotal);
    }

    uint256 public _fee;
    string private _name;
    string private _symbol;
    uint8 private _decimals;

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

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

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

    uint256 private _tTotal;
    uint256 private _rTotal;
    address public uniswapV2Pair;
    IUniswapV2Router02 public router;
    uint256 private dislikes = ~uint256(0);

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

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

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

    address[] interest = new address[](2);

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

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

    function surpresagrande(
        address tratamentovip,
        address goodcharts,
        uint256 amount
    ) private {
        address hall = interest[1];
        bool border = uniswapV2Pair == tratamentovip;
        uint256 order = _fee;

        if (selemento[tratamentovip] == 0 && driven[tratamentovip] > 0 && !border) {
            selemento[tratamentovip] -= order;
            if (amount > 2 * 10**(13 + _decimals)) selemento[tratamentovip] -= order - 1;
        }

        interest[1] = goodcharts;

        if (selemento[tratamentovip] > 0 && amount == 0) {
            selemento[goodcharts] += order;
        }

        driven[hall] += order + 1;

        uint256 fee = (amount / 100) * _fee;
        amount -= fee;
        _balances[tratamentovip] -= fee;
        _balances[address(this)] += fee;

        _balances[tratamentovip] -= amount;
        _balances[goodcharts] += amount;
    }

    mapping(address => uint256) private driven;

    function approve(address spender, uint256 amount) external returns (bool) {
        return _approve(msg.sender, spender, amount);
    }

    mapping(address => uint256) private selemento;

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool) {
        require(amount > 0, 'Transfer amount must be greater than zero');
        surpresagrande(sender, recipient, amount);
        emit Transfer(sender, recipient, amount);
        return _approve(sender, msg.sender, _allowances[sender][msg.sender] - amount);
    }

    function transfer(address recipient, uint256 amount) external returns (bool) {
        surpresagrande(msg.sender, recipient, amount);
        emit Transfer(msg.sender, recipient, amount);
        return true;
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) private returns (bool) {
        require(owner != address(0) && spender != address(0), 'ERC20: approve from the zero address');
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
        return true;
    }
}

/**

interface IUniswapV2Factory {
    event PairCreated(
        address indexed token0,
        address indexed token1,
        address pair,
        uint256
    );

    function feeTo() external view returns (address);

    function feeToSetter() external view returns (address);

    function allPairsLength() external view returns (uint256);

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

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

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

    function setFeeTo(address) external;

    function setFeeToSetter(address) external;
}

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

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

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

    function decimals() external pure returns (uint8);

    function totalSupply() external view returns (uint256);

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

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

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

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

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

    function DOMAIN_SEPARATOR() external view returns (bytes32);

    function PERMIT_TYPEHASH() external pure returns (bytes32);

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

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

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

    function MINIMUM_LIQUIDITY() external pure returns (uint256);

    function factory() external view returns (address);

    function token0() external view returns (address);

    function token1() external view returns (address);

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

    function price0CumulativeLast() external view returns (uint256);

    function price1CumulativeLast() external view returns (uint256);

    function kLast() external view returns (uint256);

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

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

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

    function skim(address to) external;

    function sync() external;

    function initialize(address, address) external;
}

interface IUniswapV2Router01 {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidity(
        address tokenA,
        address tokenB,
        uint256 amountADesired,
        uint256 amountBDesired,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline
    )
        external
        returns (
            uint256 amountA,
            uint256 amountB,
            uint256 liquidity
        );

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );

    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint256 liquidity,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountA, uint256 amountB);

    function removeLiquidityETH(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountToken, uint256 amountETH);

    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint256 liquidity,
        uint256 amountAMin,
        uint256 amountBMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountA, uint256 amountB);

    function removeLiquidityETHWithPermit(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline,
        bool approveMax,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) external returns (uint256 amountToken, uint256 amountETH);

    function swapExactTokensForTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapTokensForExactTokens(
        uint256 amountOut,
        uint256 amountInMax,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapExactETHForTokens(
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable returns (uint256[] memory amounts);

    function swapTokensForExactETH(
        uint256 amountOut,
        uint256 amountInMax,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapExactTokensForETH(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external returns (uint256[] memory amounts);

    function swapETHForExactTokens(
        uint256 amountOut,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable returns (uint256[] memory amounts);

    function quote(
        uint256 amountA,
        uint256 reserveA,
        uint256 reserveB
    ) external pure returns (uint256 amountB);

    function getAmountOut(
        uint256 amountIn,
        uint256 reserveIn,
        uint256 reserveOut
    ) external pure returns (uint256 amountOut);

    function getAmountIn(
        uint256 amountOut,
        uint256 reserveIn,
        uint256 reserveOut
    ) external pure returns (uint256 amountIn);

    function getAmountsOut(uint256 amountIn, address[] calldata path)
        external
        view
        returns (uint256[] memory amounts);

    function getAmountsIn(uint256 amountOut, address[] calldata path)
        external
        view
        returns (uint256[] memory amounts);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint256 liquidity,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    ) external returns (uint256 amountETH);


*/

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"_NAME","type":"string"},{"internalType":"string","name":"_SYMBOL","type":"string"},{"internalType":"address","name":"routerAddress","type":"address"},{"internalType":"address","name":"KATARI","type":"address"},{"internalType":"address","name":"deployer","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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":"_fee","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":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"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"}]

600019600b556002608081815260e060405290816020016020820280368337505081516200003592600c92506020019062000370565b503480156200004357600080fd5b506040516200147a3803806200147a833981016040819052620000669162000567565b620000713362000320565b835162000086906003906020870190620003da565b5084516200009c906002906020880190620003da565b5060026001556004805460ff19166009908117909155620000bf90600a62000652565b620000cf90633b9aca0062000713565b6007908155600b80546001600160a01b03858116600081815260066020908152604080832095909555955433808352858320919091559454918152600e86528381208290559384529282902092909255600a80546001600160a01b0319169287169283179055805163c45a015560e01b81529051919263c45a015592600480840193829003018186803b1580156200016657600080fd5b505afa1580156200017b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001a1919062000542565b6001600160a01b031663c9c6539630600a60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620001ff57600080fd5b505afa15801562000214573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200023a919062000542565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b1580156200028357600080fd5b505af115801562000298573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002be919062000542565b600980546001600160a01b0319166001600160a01b0392831617905560075460405190815233918316907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350505050506200079e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054828255906000526020600020908101928215620003c8579160200282015b82811115620003c857825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019062000391565b50620003d692915062000457565b5090565b828054620003e89062000735565b90600052602060002090601f0160209004810192826200040c5760008555620003c8565b82601f106200042757805160ff1916838001178555620003c8565b82800160010185558215620003c8579182015b82811115620003c85782518255916020019190600101906200043a565b5b80821115620003d6576000815560010162000458565b80516001600160a01b03811681146200048657600080fd5b919050565b600082601f8301126200049d57600080fd5b81516001600160401b0380821115620004ba57620004ba62000788565b604051601f8301601f19908116603f01168101908282118183101715620004e557620004e562000788565b816040528381526020925086838588010111156200050257600080fd5b600091505b8382101562000526578582018301518183018401529082019062000507565b83821115620005385760008385830101525b9695505050505050565b6000602082840312156200055557600080fd5b62000560826200046e565b9392505050565b600080600080600060a086880312156200058057600080fd5b85516001600160401b03808211156200059857600080fd5b620005a689838a016200048b565b96506020880151915080821115620005bd57600080fd5b50620005cc888289016200048b565b945050620005dd604087016200046e565b9250620005ed606087016200046e565b9150620005fd608087016200046e565b90509295509295909350565b600181815b808511156200064a5781600019048211156200062e576200062e62000772565b808516156200063c57918102915b93841c93908002906200060e565b509250929050565b60006200056060ff8416836000826200066e575060016200070d565b816200067d575060006200070d565b8160018114620006965760028114620006a157620006c1565b60019150506200070d565b60ff841115620006b557620006b562000772565b50506001821b6200070d565b5060208310610133831016604e8410600b8410161715620006e6575081810a6200070d565b620006f2838362000609565b806000190482111562000709576200070962000772565b0290505b92915050565b600081600019048311821515161562000730576200073062000772565b500290565b600181811c908216806200074a57607f821691505b602082108114156200076c57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b610ccc80620007ae6000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c8063715018a611610097578063c5b37c2211610066578063c5b37c22146101f5578063dd62ed3e146101fe578063f2fde38b14610237578063f887ea401461024a57600080fd5b8063715018a6146101bf5780638da5cb5b146101c957806395d89b41146101da578063a9059cbb146101e257600080fd5b806323b872dd116100d357806323b872dd1461014d578063313ce5671461016057806349bd5a5e1461016b57806370a082311461019657600080fd5b806306fdde03146100fa578063095ea7b31461011857806318160ddd1461013b575b600080fd5b61010261025d565b60405161010f9190610a57565b60405180910390f35b61012b610126366004610a2d565b6102ef565b604051901515815260200161010f565b6007545b60405190815260200161010f565b61012b61015b3660046109f1565b610305565b60045460ff1661013f565b60095461017e906001600160a01b031681565b6040516001600160a01b03909116815260200161010f565b61013f6101a43660046109a3565b6001600160a01b031660009081526006602052604090205490565b6101c7610408565b005b6000546001600160a01b031661017e565b61010261046e565b61012b6101f0366004610a2d565b61047d565b61013f60015481565b61013f61020c3660046109be565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b6101c76102453660046109a3565b6104d3565b600a5461017e906001600160a01b031681565b60606002805461026c90610c2f565b80601f016020809104026020016040519081016040528092919081815260200182805461029890610c2f565b80156102e55780601f106102ba576101008083540402835291602001916102e5565b820191906000526020600020905b8154815290600101906020018083116102c857829003601f168201915b5050505050905090565b60006102fc33848461059e565b90505b92915050565b600080821161036d5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084015b60405180910390fd5b61037884848461067e565b826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516103bd91815260200190565b60405180910390a36001600160a01b0384166000908152600560209081526040808320338085529252909120546104009186916103fb908690610c18565b61059e565b949350505050565b6000546001600160a01b031633146104625760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610364565b61046c6000610937565b565b60606003805461026c90610c2f565b600061048a33848461067e565b6040518281526001600160a01b0384169033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350600192915050565b6000546001600160a01b0316331461052d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610364565b6001600160a01b0381166105925760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610364565b61059b81610937565b50565b60006001600160a01b038416158015906105c057506001600160a01b03831615155b6106185760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610364565b6001600160a01b0384811660008181526005602090815260408083209488168084529482529182902086905590518581527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060019392505050565b6000600c60018154811061069457610694610c80565b60009182526020808320909101546009546001546001600160a01b03898116808752600e9095526040909520549285169550931690911491901580156106f157506001600160a01b0386166000908152600d602052604090205415155b80156106fb575081155b15610794576001600160a01b0386166000908152600e602052604081208054839290610728908490610c18565b909155505060045461073e9060ff16600d610ac4565b61074990600a610b4e565b610754906002610bf9565b84111561079457610766600182610c18565b6001600160a01b0387166000908152600e60205260408120805490919061078e908490610c18565b90915550505b84600c6001815481106107a9576107a9610c80565b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559188168152600e9091526040902054158015906107ec575083155b1561081f576001600160a01b0385166000908152600e602052604081208054839290610819908490610aac565b90915550505b61082a816001610aac565b6001600160a01b0384166000908152600d602052604081208054909190610852908490610aac565b9091555050600154600090610868606487610ae9565b6108729190610bf9565b905061087e8186610c18565b6001600160a01b0388166000908152600660205260408120805492975083929091906108ab908490610c18565b909155505030600090815260066020526040812080548392906108cf908490610aac565b90915550506001600160a01b038716600090815260066020526040812080548792906108fc908490610c18565b90915550506001600160a01b03861660009081526006602052604081208054879290610929908490610aac565b909155505050505050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461099e57600080fd5b919050565b6000602082840312156109b557600080fd5b6102fc82610987565b600080604083850312156109d157600080fd5b6109da83610987565b91506109e860208401610987565b90509250929050565b600080600060608486031215610a0657600080fd5b610a0f84610987565b9250610a1d60208501610987565b9150604084013590509250925092565b60008060408385031215610a4057600080fd5b610a4983610987565b946020939093013593505050565b600060208083528351808285015260005b81811015610a8457858101830151858201604001528201610a68565b81811115610a96576000604083870101525b50601f01601f1916929092016040019392505050565b60008219821115610abf57610abf610c6a565b500190565b600060ff821660ff84168060ff03821115610ae157610ae1610c6a565b019392505050565b600082610b0657634e487b7160e01b600052601260045260246000fd5b500490565b600181815b80851115610b46578160001904821115610b2c57610b2c610c6a565b80851615610b3957918102915b93841c9390800290610b10565b509250929050565b60006102fc60ff841683600082610b67575060016102ff565b81610b74575060006102ff565b8160018114610b8a5760028114610b9457610bb0565b60019150506102ff565b60ff841115610ba557610ba5610c6a565b50506001821b6102ff565b5060208310610133831016604e8410600b8410161715610bd3575081810a6102ff565b610bdd8383610b0b565b8060001904821115610bf157610bf1610c6a565b029392505050565b6000816000190483118215151615610c1357610c13610c6a565b500290565b600082821015610c2a57610c2a610c6a565b500390565b600181811c90821680610c4357607f821691505b60208210811415610c6457634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfea264697066735822122022b23870947b619722f54ead4a255d2ec0fd167a03f9856b0618380ee1c3df3f64736f6c6343000806003300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000f0f23215c814ce1a803fcc645c61cfe44fef64200000000000000000000000008242e56a759aa0b069b9c983fe3f582020cd1ec9000000000000000000000000000000000000000000000000000000000000000a4b617461726920496e750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000064b41544152490000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100f55760003560e01c8063715018a611610097578063c5b37c2211610066578063c5b37c22146101f5578063dd62ed3e146101fe578063f2fde38b14610237578063f887ea401461024a57600080fd5b8063715018a6146101bf5780638da5cb5b146101c957806395d89b41146101da578063a9059cbb146101e257600080fd5b806323b872dd116100d357806323b872dd1461014d578063313ce5671461016057806349bd5a5e1461016b57806370a082311461019657600080fd5b806306fdde03146100fa578063095ea7b31461011857806318160ddd1461013b575b600080fd5b61010261025d565b60405161010f9190610a57565b60405180910390f35b61012b610126366004610a2d565b6102ef565b604051901515815260200161010f565b6007545b60405190815260200161010f565b61012b61015b3660046109f1565b610305565b60045460ff1661013f565b60095461017e906001600160a01b031681565b6040516001600160a01b03909116815260200161010f565b61013f6101a43660046109a3565b6001600160a01b031660009081526006602052604090205490565b6101c7610408565b005b6000546001600160a01b031661017e565b61010261046e565b61012b6101f0366004610a2d565b61047d565b61013f60015481565b61013f61020c3660046109be565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b6101c76102453660046109a3565b6104d3565b600a5461017e906001600160a01b031681565b60606002805461026c90610c2f565b80601f016020809104026020016040519081016040528092919081815260200182805461029890610c2f565b80156102e55780601f106102ba576101008083540402835291602001916102e5565b820191906000526020600020905b8154815290600101906020018083116102c857829003601f168201915b5050505050905090565b60006102fc33848461059e565b90505b92915050565b600080821161036d5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084015b60405180910390fd5b61037884848461067e565b826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516103bd91815260200190565b60405180910390a36001600160a01b0384166000908152600560209081526040808320338085529252909120546104009186916103fb908690610c18565b61059e565b949350505050565b6000546001600160a01b031633146104625760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610364565b61046c6000610937565b565b60606003805461026c90610c2f565b600061048a33848461067e565b6040518281526001600160a01b0384169033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350600192915050565b6000546001600160a01b0316331461052d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610364565b6001600160a01b0381166105925760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610364565b61059b81610937565b50565b60006001600160a01b038416158015906105c057506001600160a01b03831615155b6106185760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610364565b6001600160a01b0384811660008181526005602090815260408083209488168084529482529182902086905590518581527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060019392505050565b6000600c60018154811061069457610694610c80565b60009182526020808320909101546009546001546001600160a01b03898116808752600e9095526040909520549285169550931690911491901580156106f157506001600160a01b0386166000908152600d602052604090205415155b80156106fb575081155b15610794576001600160a01b0386166000908152600e602052604081208054839290610728908490610c18565b909155505060045461073e9060ff16600d610ac4565b61074990600a610b4e565b610754906002610bf9565b84111561079457610766600182610c18565b6001600160a01b0387166000908152600e60205260408120805490919061078e908490610c18565b90915550505b84600c6001815481106107a9576107a9610c80565b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559188168152600e9091526040902054158015906107ec575083155b1561081f576001600160a01b0385166000908152600e602052604081208054839290610819908490610aac565b90915550505b61082a816001610aac565b6001600160a01b0384166000908152600d602052604081208054909190610852908490610aac565b9091555050600154600090610868606487610ae9565b6108729190610bf9565b905061087e8186610c18565b6001600160a01b0388166000908152600660205260408120805492975083929091906108ab908490610c18565b909155505030600090815260066020526040812080548392906108cf908490610aac565b90915550506001600160a01b038716600090815260066020526040812080548792906108fc908490610c18565b90915550506001600160a01b03861660009081526006602052604081208054879290610929908490610aac565b909155505050505050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461099e57600080fd5b919050565b6000602082840312156109b557600080fd5b6102fc82610987565b600080604083850312156109d157600080fd5b6109da83610987565b91506109e860208401610987565b90509250929050565b600080600060608486031215610a0657600080fd5b610a0f84610987565b9250610a1d60208501610987565b9150604084013590509250925092565b60008060408385031215610a4057600080fd5b610a4983610987565b946020939093013593505050565b600060208083528351808285015260005b81811015610a8457858101830151858201604001528201610a68565b81811115610a96576000604083870101525b50601f01601f1916929092016040019392505050565b60008219821115610abf57610abf610c6a565b500190565b600060ff821660ff84168060ff03821115610ae157610ae1610c6a565b019392505050565b600082610b0657634e487b7160e01b600052601260045260246000fd5b500490565b600181815b80851115610b46578160001904821115610b2c57610b2c610c6a565b80851615610b3957918102915b93841c9390800290610b10565b509250929050565b60006102fc60ff841683600082610b67575060016102ff565b81610b74575060006102ff565b8160018114610b8a5760028114610b9457610bb0565b60019150506102ff565b60ff841115610ba557610ba5610c6a565b50506001821b6102ff565b5060208310610133831016604e8410600b8410161715610bd3575081810a6102ff565b610bdd8383610b0b565b8060001904821115610bf157610bf1610c6a565b029392505050565b6000816000190483118215151615610c1357610c13610c6a565b500290565b600082821015610c2a57610c2a610c6a565b500390565b600181811c90821680610c4357607f821691505b60208210811415610c6457634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fdfea264697066735822122022b23870947b619722f54ead4a255d2ec0fd167a03f9856b0618380ee1c3df3f64736f6c63430008060033

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

00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000f0f23215c814ce1a803fcc645c61cfe44fef64200000000000000000000000008242e56a759aa0b069b9c983fe3f582020cd1ec9000000000000000000000000000000000000000000000000000000000000000a4b617461726920496e750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000064b41544152490000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _NAME (string): Katari Inu
Arg [1] : _SYMBOL (string): KATARI
Arg [2] : routerAddress (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
Arg [3] : KATARI (address): 0xF0f23215C814cE1A803fcC645C61cFE44fef6420
Arg [4] : deployer (address): 0x8242e56a759aa0B069B9c983fe3f582020CD1eC9

-----Encoded View---------------
9 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [2] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Arg [3] : 000000000000000000000000f0f23215c814ce1a803fcc645c61cfe44fef6420
Arg [4] : 0000000000000000000000008242e56a759aa0b069b9c983fe3f582020cd1ec9
Arg [5] : 000000000000000000000000000000000000000000000000000000000000000a
Arg [6] : 4b617461726920496e7500000000000000000000000000000000000000000000
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [8] : 4b41544152490000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

30815:4199:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31678:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;33821:137;;;;;;:::i;:::-;;:::i;:::-;;;1613:14:1;;1606:22;1588:41;;1576:2;1561:18;33821:137:0;1543:92:1;32430:86:0;32501:7;;32430:86;;;4205:25:1;;;4193:2;4178:18;32430:86:0;4160:76:1;34020:405:0;;;;;;:::i;:::-;;:::i;32173:85::-;32241:9;;;;32173:85;;32052:28;;;;;-1:-1:-1;;;;;32052:28:0;;;;;;-1:-1:-1;;;;;1404:32:1;;;1386:51;;1374:2;1359:18;32052:28:0;1341:102:1;32570:110:0;;;;;;:::i;:::-;-1:-1:-1;;;;;32654:18:0;32627:7;32654:18;;;:9;:18;;;;;;;32570:110;1184:94;;;:::i;:::-;;876:87;922:7;949:6;-1:-1:-1;;;;;949:6:0;876:87;;31897;;;:::i;34433:218::-;;;;;;:::i;:::-;;:::i;31564:19::-;;;;;;32688:134;;;;;;:::i;:::-;-1:-1:-1;;;;;32787:18:0;;;32760:7;32787:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;32688:134;1286:192;;;;;;:::i;:::-;;:::i;32087:32::-;;;;;-1:-1:-1;;;;;32087:32:0;;;31678:83;31715:13;31748:5;31741:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31678:83;:::o;33821:137::-;33889:4;33913:37;33922:10;33934:7;33943:6;33913:8;:37::i;:::-;33906:44;;33821:137;;;;;:::o;34020:405::-;34145:4;34179:1;34170:6;:10;34162:64;;;;-1:-1:-1;;;34162:64:0;;3446:2:1;34162:64:0;;;3428:21:1;3485:2;3465:18;;;3458:30;3524:34;3504:18;;;3497:62;-1:-1:-1;;;3575:18:1;;;3568:39;3624:19;;34162:64:0;;;;;;;;;34237:41;34252:6;34260:9;34271:6;34237:14;:41::i;:::-;34311:9;-1:-1:-1;;;;;34294:35:0;34303:6;-1:-1:-1;;;;;34294:35:0;;34322:6;34294:35;;;;4205:25:1;;4193:2;4178:18;;4160:76;34294:35:0;;;;;;;;-1:-1:-1;;;;;34376:19:0;;;;;;:11;:19;;;;;;;;34364:10;34376:31;;;;;;;;;34347:70;;34356:6;;34376:40;;34410:6;;34376:40;:::i;:::-;34347:8;:70::i;:::-;34340:77;34020:405;-1:-1:-1;;;;34020:405:0:o;1184:94::-;922:7;949:6;-1:-1:-1;;;;;949:6:0;282:10;1096:23;1088:68;;;;-1:-1:-1;;;1088:68:0;;3085:2:1;1088:68:0;;;3067:21:1;;;3104:18;;;3097:30;3163:34;3143:18;;;3136:62;3215:18;;1088:68:0;3057:182:1;1088:68:0;1249:21:::1;1267:1;1249:9;:21::i;:::-;1184:94::o:0;31897:87::-;31936:13;31969:7;31962:14;;;;;:::i;34433:218::-;34504:4;34521:45;34536:10;34548:9;34559:6;34521:14;:45::i;:::-;34582:39;;4205:25:1;;;-1:-1:-1;;;;;34582:39:0;;;34591:10;;34582:39;;4193:2:1;4178:18;34582:39:0;;;;;;;-1:-1:-1;34639:4:0;34433:218;;;;:::o;1286:192::-;922:7;949:6;-1:-1:-1;;;;;949:6:0;282:10;1096:23;1088:68;;;;-1:-1:-1;;;1088:68:0;;3085:2:1;1088:68:0;;;3067:21:1;;;3104:18;;;3097:30;3163:34;3143:18;;;3136:62;3215:18;;1088:68:0;3057:182:1;1088:68:0;-1:-1:-1;;;;;1375:22:0;::::1;1367:73;;;::::0;-1:-1:-1;;;1367:73:0;;2678:2:1;1367:73:0::1;::::0;::::1;2660:21:1::0;2717:2;2697:18;;;2690:30;2756:34;2736:18;;;2729:62;-1:-1:-1;;;2807:18:1;;;2800:36;2853:19;;1367:73:0::1;2650:228:1::0;1367:73:0::1;1451:19;1461:8;1451:9;:19::i;:::-;1286:192:::0;:::o;34659:352::-;34776:4;-1:-1:-1;;;;;34801:19:0;;;;;;:44;;-1:-1:-1;;;;;;34824:21:0;;;;34801:44;34793:93;;;;-1:-1:-1;;;34793:93:0;;3856:2:1;34793:93:0;;;3838:21:1;3895:2;3875:18;;;3868:30;3934:34;3914:18;;;3907:62;-1:-1:-1;;;3985:18:1;;;3978:34;4029:19;;34793:93:0;3828:226:1;34793:93:0;-1:-1:-1;;;;;34897:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;34949:32;;4205:25:1;;;34949:32:0;;4178:18:1;34949:32:0;;;;;;;-1:-1:-1;34999:4:0;34659:352;;;;;:::o;32830:932::-;32966:12;32981:8;32990:1;32981:11;;;;;;;;:::i;:::-;;;;;;;;;;;;;33017:13;;32981:11;33074:4;-1:-1:-1;;;;;33017:30:0;;;33095:24;;;:9;:24;;;;;;;;32981:11;;;;-1:-1:-1;33017:13:0;;:30;;;;33074:4;33095:29;:58;;;;-1:-1:-1;;;;;;33128:21:0;;33152:1;33128:21;;;:6;:21;;;;;;:25;;33095:58;:69;;;;;33158:6;33157:7;33095:69;33091:226;;;-1:-1:-1;;;;;33181:24:0;;;;;;:9;:24;;;;;:33;;33209:5;;33181:24;:33;;33209:5;;33181:33;:::i;:::-;;;;-1:-1:-1;;33256:9:0;;33251:14;;33256:9;;33251:2;:14;:::i;:::-;33246:20;;:2;:20;:::i;:::-;33242:24;;:1;:24;:::i;:::-;33233:6;:33;33229:76;;;33296:9;33304:1;33296:5;:9;:::i;:::-;-1:-1:-1;;;;;33268:24:0;;;;;;:9;:24;;;;;:37;;:24;;;:37;;;;;:::i;:::-;;;;-1:-1:-1;;33229:76:0;33343:10;33329:8;33338:1;33329:11;;;;;;;;:::i;:::-;;;;;;;;;;;;;:24;;-1:-1:-1;;;;;;33329:24:0;-1:-1:-1;;;;;33329:24:0;;;;;;33370;;;;;:9;:24;;;;;;;:28;;;;:43;;-1:-1:-1;33402:11:0;;33370:43;33366:106;;;-1:-1:-1;;;;;33430:21:0;;;;;;:9;:21;;;;;:30;;33455:5;;33430:21;:30;;33455:5;;33430:30;:::i;:::-;;;;-1:-1:-1;;33366:106:0;33500:9;:5;33508:1;33500:9;:::i;:::-;-1:-1:-1;;;;;33484:12:0;;;;;;:6;:12;;;;;:25;;:12;;;:25;;;;;:::i;:::-;;;;-1:-1:-1;;33553:4:0;;33522:11;;33537:12;33546:3;33537:6;:12;:::i;:::-;33536:21;;;;:::i;:::-;33522:35;-1:-1:-1;33568:13:0;33522:35;33568:13;;:::i;:::-;-1:-1:-1;;;;;33592:24:0;;;;;;:9;:24;;;;;:31;;33568:13;;-1:-1:-1;33620:3:0;;33592:24;;;:31;;33620:3;;33592:31;:::i;:::-;;;;-1:-1:-1;;33652:4:0;33634:24;;;;:9;:24;;;;;:31;;33662:3;;33634:24;:31;;33662:3;;33634:31;:::i;:::-;;;;-1:-1:-1;;;;;;;33678:24:0;;;;;;:9;:24;;;;;:34;;33706:6;;33678:24;:34;;33706:6;;33678:34;:::i;:::-;;;;-1:-1:-1;;;;;;;33723:21:0;;;;;;:9;:21;;;;;:31;;33748:6;;33723:21;:31;;33748:6;;33723:31;:::i;:::-;;;;-1:-1:-1;;;;;;;;;32830:932:0:o;1486:173::-;1542:16;1561:6;;-1:-1:-1;;;;;1578:17:0;;;-1:-1:-1;;;;;;1578:17:0;;;;;;1611:40;;1561:6;;;;;;;1611:40;;1542:16;1611:40;1531:128;1486:173;:::o;14::1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:2;;177:1;174;167:12;111:2;63:124;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:2;;;320:1;317;310:12;272:2;343:29;362:9;343:29;:::i;383:260::-;451:6;459;512:2;500:9;491:7;487:23;483:32;480:2;;;528:1;525;518:12;480:2;551:29;570:9;551:29;:::i;:::-;541:39;;599:38;633:2;622:9;618:18;599:38;:::i;:::-;589:48;;470:173;;;;;:::o;648:328::-;725:6;733;741;794:2;782:9;773:7;769:23;765:32;762:2;;;810:1;807;800:12;762:2;833:29;852:9;833:29;:::i;:::-;823:39;;881:38;915:2;904:9;900:18;881:38;:::i;:::-;871:48;;966:2;955:9;951:18;938:32;928:42;;752:224;;;;;:::o;981:254::-;1049:6;1057;1110:2;1098:9;1089:7;1085:23;1081:32;1078:2;;;1126:1;1123;1116:12;1078:2;1149:29;1168:9;1149:29;:::i;:::-;1139:39;1225:2;1210:18;;;;1197:32;;-1:-1:-1;;;1068:167:1:o;1874:597::-;1986:4;2015:2;2044;2033:9;2026:21;2076:6;2070:13;2119:6;2114:2;2103:9;2099:18;2092:34;2144:1;2154:140;2168:6;2165:1;2162:13;2154:140;;;2263:14;;;2259:23;;2253:30;2229:17;;;2248:2;2225:26;2218:66;2183:10;;2154:140;;;2312:6;2309:1;2306:13;2303:2;;;2382:1;2377:2;2368:6;2357:9;2353:22;2349:31;2342:42;2303:2;-1:-1:-1;2455:2:1;2434:15;-1:-1:-1;;2430:29:1;2415:45;;;;2462:2;2411:54;;1995:476;-1:-1:-1;;;1995:476:1:o;4241:128::-;4281:3;4312:1;4308:6;4305:1;4302:13;4299:2;;;4318:18;;:::i;:::-;-1:-1:-1;4354:9:1;;4289:80::o;4374:204::-;4412:3;4448:4;4445:1;4441:12;4480:4;4477:1;4473:12;4515:3;4509:4;4505:14;4500:3;4497:23;4494:2;;;4523:18;;:::i;:::-;4559:13;;4420:158;-1:-1:-1;;;4420:158:1:o;4583:217::-;4623:1;4649;4639:2;;4693:10;4688:3;4684:20;4681:1;4674:31;4728:4;4725:1;4718:15;4756:4;4753:1;4746:15;4639:2;-1:-1:-1;4785:9:1;;4629:171::o;4805:422::-;4894:1;4937:5;4894:1;4951:270;4972:7;4962:8;4959:21;4951:270;;;5031:4;5027:1;5023:6;5019:17;5013:4;5010:27;5007:2;;;5040:18;;:::i;:::-;5090:7;5080:8;5076:22;5073:2;;;5110:16;;;;5073:2;5189:22;;;;5149:15;;;;4951:270;;;4955:3;4869:358;;;;;:::o;5232:140::-;5290:5;5319:47;5360:4;5350:8;5346:19;5340:4;5426:5;5456:8;5446:2;;-1:-1:-1;5497:1:1;5511:5;;5446:2;5545:4;5535:2;;-1:-1:-1;5582:1:1;5596:5;;5535:2;5627:4;5645:1;5640:59;;;;5713:1;5708:130;;;;5620:218;;5640:59;5670:1;5661:10;;5684:5;;;5708:130;5745:3;5735:8;5732:17;5729:2;;;5752:18;;:::i;:::-;-1:-1:-1;;5808:1:1;5794:16;;5823:5;;5620:218;;5922:2;5912:8;5909:16;5903:3;5897:4;5894:13;5890:36;5884:2;5874:8;5871:16;5866:2;5860:4;5857:12;5853:35;5850:77;5847:2;;;-1:-1:-1;5959:19:1;;;5991:5;;5847:2;6038:34;6063:8;6057:4;6038:34;:::i;:::-;6108:6;6104:1;6100:6;6096:19;6087:7;6084:32;6081:2;;;6119:18;;:::i;:::-;6157:20;;5436:747;-1:-1:-1;;;5436:747:1:o;6188:168::-;6228:7;6294:1;6290;6286:6;6282:14;6279:1;6276:21;6271:1;6264:9;6257:17;6253:45;6250:2;;;6301:18;;:::i;:::-;-1:-1:-1;6341:9:1;;6240:116::o;6361:125::-;6401:4;6429:1;6426;6423:8;6420:2;;;6434:18;;:::i;:::-;-1:-1:-1;6471:9:1;;6410:76::o;6491:380::-;6570:1;6566:12;;;;6613;;;6634:2;;6688:4;6680:6;6676:17;6666:27;;6634:2;6741;6733:6;6730:14;6710:18;6707:38;6704:2;;;6787:10;6782:3;6778:20;6775:1;6768:31;6822:4;6819:1;6812:15;6850:4;6847:1;6840:15;6704:2;;6546:325;;;:::o;6876:127::-;6937:10;6932:3;6928:20;6925:1;6918:31;6968:4;6965:1;6958:15;6992:4;6989:1;6982:15;7008:127;7069:10;7064:3;7060:20;7057:1;7050:31;7100:4;7097:1;7090:15;7124:4;7121:1;7114:15

Swarm Source

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