ETH Price: $2,430.61 (+3.09%)

Token

Animalverse Club (AVC)
 

Overview

Max Total Supply

10,000,000,000 AVC

Holders

93

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
2,900 AVC

Value
$0.00
0x29168cce1a88138e9cdd3aeb509f1dfc6e21a857
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:
MAKECOINGENRATOR

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-04-06
*/

// SPDX-License-Identifier: MIT
// ================================================================
// This token contract was generated by using Makecoin  
// Webiste: https://makecoinlive.com    
// ================================================================
pragma solidity ^0.8.19;

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

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

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) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

library Address {
    /**
     * @dev The ETH balance of the account is not enough to perform the operation.
     */
    error AddressInsufficientBalance(address account);

    /**
     * @dev There's no code at `target` (it is not a contract).
     */
    error AddressEmptyCode(address target);

    /**
     * @dev A call to an address target failed. The target may have reverted.
     */
    error FailedInnerCall();

    /**
     * @dev Replacement for Solidity's `transfer`: sends `amount` wei to
     * `recipient`, forwarding all available gas and reverting on errors.
     *
     * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost
     * of certain opcodes, possibly making contracts go over the 2300 gas limit
     * imposed by `transfer`, making them unable to receive funds via
     * `transfer`. {sendValue} removes this limitation.
     *
     * https://consensys.net/diligence/blog/2019/09/stop-using-soliditys-transfer-now/[Learn more].
     *
     * IMPORTANT: because control is transferred to `recipient`, care must be
     * taken to not create reentrancy vulnerabilities. Consider using
     * {ReentrancyGuard} or the
     * https://solidity.readthedocs.io/en/v0.8.20/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].
     */
    function sendValue(address payable recipient, uint256 amount) internal {
        if (address(this).balance < amount) {
            revert AddressInsufficientBalance(address(this));
        }

        (bool success, ) = recipient.call{value: amount}("");
        if (!success) {
            revert FailedInnerCall();
        }
    }

    /**
     * @dev Performs a Solidity function call using a low level `call`. A
     * plain `call` is an unsafe replacement for a function call: use this
     * function instead.
     *
     * If `target` reverts with a revert reason or custom error, it is bubbled
     * up by this function (like regular Solidity function calls). However, if
     * the call reverted with no returned reason, this function reverts with a
     * {FailedInnerCall} error.
     *
     * Returns the raw returned data. To convert to the expected return value,
     * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].
     *
     * Requirements:
     *
     * - `target` must be a contract.
     * - calling `target` with `data` must not revert.
     */
    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but also transferring `value` wei to `target`.
     *
     * Requirements:
     *
     * - the calling contract must have an ETH balance of at least `value`.
     * - the called Solidity function must be `payable`.
     */
    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
        if (address(this).balance < value) {
            revert AddressInsufficientBalance(address(this));
        }
        (bool success, bytes memory returndata) = target.call{value: value}(data);
        return verifyCallResultFromTarget(target, success, returndata);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but performing a static call.
     */
    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
        (bool success, bytes memory returndata) = target.staticcall(data);
        return verifyCallResultFromTarget(target, success, returndata);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but performing a delegate call.
     */
    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
        (bool success, bytes memory returndata) = target.delegatecall(data);
        return verifyCallResultFromTarget(target, success, returndata);
    }

    /**
     * @dev Tool to verify that a low level call to smart-contract was successful, and reverts if the target
     * was not a contract or bubbling up the revert reason (falling back to {FailedInnerCall}) in case of an
     * unsuccessful call.
     */
    function verifyCallResultFromTarget(
        address target,
        bool success,
        bytes memory returndata
    ) internal view returns (bytes memory) {
        if (!success) {
            _revert(returndata);
        } else {
            // only check if target is a contract if the call was successful and the return data is empty
            // otherwise we already know that it was a contract
            if (returndata.length == 0 && target.code.length == 0) {
                revert AddressEmptyCode(target);
            }
            return returndata;
        }
    }

    /**
     * @dev Tool to verify that a low level call was successful, and reverts if it wasn't, either by bubbling the
     * revert reason or with a default {FailedInnerCall} error.
     */
    function verifyCallResult(bool success, bytes memory returndata) internal pure returns (bytes memory) {
        if (!success) {
            _revert(returndata);
        } else {
            return returndata;
        }
    }

    /**
     * @dev Reverts with returndata if present. Otherwise reverts with {FailedInnerCall}.
     */
    function _revert(bytes memory returndata) private pure {
        // Look for revert reason and bubble it up if present
        if (returndata.length > 0) {
            // The easiest way to bubble the revert reason is using memory via assembly
            /// @solidity memory-safe-assembly
            assembly {
                let returndata_size := mload(returndata)
                revert(add(32, returndata), returndata_size)
            }
        } else {
            revert FailedInnerCall();
        }
    }
}

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    uint256 private _lockTime;

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

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }   
    
    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }
    
    function RenounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

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

/// @title Callback for IUniswapV3PoolActions#swap
/// @notice Any contract that calls IUniswapV3PoolActions#swap must implement this interface
interface IUniswapV3SwapCallback {
    /// @notice Called to `msg.sender` after executing a swap via IUniswapV3Pool#swap.
    /// @dev In the implementation you must pay the pool tokens owed for the swap.
    /// The caller of this method must be checked to be a UniswapV3Pool deployed by the canonical UniswapV3Factory.
    /// amount0Delta and amount1Delta can both be 0 if no tokens were swapped.
    /// @param amount0Delta The amount of token0 that was sent (negative) or must be received (positive) by the pool by
    /// the end of the swap. If positive, the callback must send that amount of token0 to the pool.
    /// @param amount1Delta The amount of token1 that was sent (negative) or must be received (positive) by the pool by
    /// the end of the swap. If positive, the callback must send that amount of token1 to the pool.
    /// @param data Any data passed through by the caller via the IUniswapV3PoolActions#swap call
    function uniswapV3SwapCallback(
        int256 amount0Delta,
        int256 amount1Delta,
        bytes calldata data
    ) external;
}

interface IUniswapV3Factory {
    /// @notice Emitted when the owner of the factory is changed
    /// @param oldOwner The owner before the owner was changed
    /// @param newOwner The owner after the owner was changed
    event OwnerChanged(address indexed oldOwner, address indexed newOwner);

    /// @notice Emitted when a pool is created
    /// @param token0 The first token of the pool by address sort order
    /// @param token1 The second token of the pool by address sort order
    /// @param fee The fee collected upon every swap in the pool, denominated in hundredths of a bip
    /// @param tickSpacing The minimum number of ticks between initialized ticks
    /// @param pool The address of the created pool
    event PoolCreated(
        address indexed token0,
        address indexed token1,
        uint24 indexed fee,
        int24 tickSpacing,
        address pool
    );

    /// @notice Emitted when a new fee amount is enabled for pool creation via the factory
    /// @param fee The enabled fee, denominated in hundredths of a bip
    /// @param tickSpacing The minimum number of ticks between initialized ticks for pools created with the given fee
    event FeeAmountEnabled(uint24 indexed fee, int24 indexed tickSpacing);

    /// @notice Returns the current owner of the factory
    /// @dev Can be changed by the current owner via setOwner
    /// @return The address of the factory owner
    function owner() external view returns (address);

    /// @notice Returns the tick spacing for a given fee amount, if enabled, or 0 if not enabled
    /// @dev A fee amount can never be removed, so this value should be hard coded or cached in the calling context
    /// @param fee The enabled fee, denominated in hundredths of a bip. Returns 0 in case of unenabled fee
    /// @return The tick spacing
    function feeAmountTickSpacing(uint24 fee) external view returns (int24);

    /// @notice Returns the pool address for a given pair of tokens and a fee, or address 0 if it does not exist
    /// @dev tokenA and tokenB may be passed in either token0/token1 or token1/token0 order
    /// @param tokenA The contract address of either token0 or token1
    /// @param tokenB The contract address of the other token
    /// @param fee The fee collected upon every swap in the pool, denominated in hundredths of a bip
    /// @return pool The pool address
    function getPool(
        address tokenA,
        address tokenB,
        uint24 fee
    ) external view returns (address pool);

    /// @notice Creates a pool for the given two tokens and fee
    /// @param tokenA One of the two tokens in the desired pool
    /// @param tokenB The other of the two tokens in the desired pool
    /// @param fee The desired fee for the pool
    /// @dev tokenA and tokenB may be passed in either order: token0/token1 or token1/token0. tickSpacing is retrieved
    /// from the fee. The call will revert if the pool already exists, the fee is invalid, or the token arguments
    /// are invalid.
    /// @return pool The address of the newly created pool
    function createPool(
        address tokenA,
        address tokenB,
        uint24 fee
    ) external returns (address pool);

    /// @notice Updates the owner of the factory
    /// @dev Must be called by the current owner
    /// @param _owner The new owner of the factory
    function setOwner(address _owner) external;

    /// @notice Enables a fee amount with the given tickSpacing
    /// @dev Fee amounts may never be removed once enabled
    /// @param fee The fee amount to enable, denominated in hundredths of a bip (i.e. 1e-6)
    /// @param tickSpacing The spacing between ticks to be enforced for all pools created with the given fee amount
    function enableFeeAmount(uint24 fee, int24 tickSpacing) external;
}

interface ISwapRouter is IUniswapV3SwapCallback{
    function factory() external view returns (address);

    /// @return Returns the address of WETH9
    function WETH9() external view returns (address);

    struct ExactInputSingleParams {
        address tokenIn;
        address tokenOut;
        uint24 fee;
        address recipient;
        uint256 deadline;
        uint256 amountIn;
        uint256 amountOutMinimum;
        uint160 sqrtPriceLimitX96;
    }

    /// @notice Swaps `amountIn` of one token for as much as possible of another token
    /// @param params The parameters necessary for the swap, encoded as `ExactInputSingleParams` in calldata
    /// @return amountOut The amount of the received token
    function exactInputSingle(ExactInputSingleParams calldata params) external payable returns (uint256 amountOut);

    struct ExactInputParams {
        bytes path;
        address recipient;
        uint256 deadline;
        uint256 amountIn;
        uint256 amountOutMinimum;
    }

    /// @notice Swaps `amountIn` of one token for as much as possible of another along the specified path
    /// @param params The parameters necessary for the multi-hop swap, encoded as `ExactInputParams` in calldata
    /// @return amountOut The amount of the received token
    function exactInput(ExactInputParams calldata params) external payable returns (uint256 amountOut);

    struct ExactOutputSingleParams {
        address tokenIn;
        address tokenOut;
        uint24 fee;
        address recipient;
        uint256 deadline;
        uint256 amountOut;
        uint256 amountInMaximum;
        uint160 sqrtPriceLimitX96;
    }

    /// @notice Swaps as little as possible of one token for `amountOut` of another token
    /// @param params The parameters necessary for the swap, encoded as `ExactOutputSingleParams` in calldata
    /// @return amountIn The amount of the input token
    function exactOutputSingle(ExactOutputSingleParams calldata params) external payable returns (uint256 amountIn);

    struct ExactOutputParams {
        bytes path;
        address recipient;
        uint256 deadline;
        uint256 amountOut;
        uint256 amountInMaximum;
    }

    /// @notice Swaps as little as possible of one token for `amountOut` of another along the specified path (reversed)
    /// @param params The parameters necessary for the multi-hop swap, encoded as `ExactOutputParams` in calldata
    /// @return amountIn The amount of the input token
    function exactOutput(ExactOutputParams calldata params) external payable returns (uint256 amountIn);
}

interface IPayable{
    function payServicesFees(string memory _serviceName,address _refaddress) payable 
        external
        returns (bool);
}

abstract contract ServicePayer{
    constructor (address receiver, string memory serviceName,address _refaddress) payable {
        IPayable(receiver).payServicesFees{value: msg.value}(serviceName,_refaddress);
    }
}

contract MAKECOINGENRATOR is Context, IERC20, Ownable,ServicePayer {
    
    using SafeMath for uint256;
    using Address for address;
    
    string private _name;
    string private _symbol;
    uint8 private _decimals;
    uint256 private _totalSupply;
    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    address public deadAddress;
    mapping (address => bool) public isMarketPair;
    uint256 public  minimumTokensBeforeSwap; // Should be 0.1% of the total supply
    ISwapRouter public uniswapV3Router;
    address public uniswapPair;
    uint24 private poolFees;
    bool inSwapAndLiquify;
    bool public swapAndLiquifyEnabled;
    bool public swapAndLiquifyByLimitOnly;

    // markeing
    address payable public marketingWalletAddress; //  Fee Receiver Address
    mapping (address => bool) public isExcludedFromFee;
    
    // Tax
    uint256 public _totalTaxIfBuying;
    uint256 public _totalTaxIfSelling;

    event SwapAndLiquifyEnabledUpdated(bool enabled);
    event SwapAndLiquify(uint256 tokensSwapped,uint256 ethReceived,uint256 tokensIntoLiqudity);
    event SwapETHForTokens(uint256 amountIn,address[] path);
    event SwapTokensForETH(uint256 amountIn,address[] path);
    
    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }

    //to recieve ETH from uniswapV2Router when swaping
    receive() external payable {}
    
    constructor(
      string memory name_, 
      string memory symbol_,
      uint8 decimals_,
      uint totalSupply_,
      address _servicePayer,
      string memory _servicesName,
      address _refaddress,
      address _marketingWalletAddress,
      address[2] memory _commonAddress,
      uint256[2] memory _tax,
      uint24 _poolFees
    ) ServicePayer(_servicePayer,_servicesName,_refaddress) payable {
        _name = name_;
        _symbol = symbol_;
        _decimals = decimals_;
        _totalSupply = totalSupply_ * 10**decimals_;
        deadAddress = _commonAddress[0];
        
        //buy and sell tax
        _totalTaxIfBuying = _tax[0];
        _totalTaxIfSelling = _tax[1];

        //marketning wallet and tax
        marketingWalletAddress = payable(_marketingWalletAddress);
   
        swapAndLiquifyEnabled = true;
        swapAndLiquifyByLimitOnly = false;

        minimumTokensBeforeSwap = (totalSupply_ * 10) / 1000; // 0.1% of total supply
        ISwapRouter _uniswapV3Router = ISwapRouter(_commonAddress[1]); 
        uniswapPair = IUniswapV3Factory(_uniswapV3Router.factory())
            .createPool(address(this), _uniswapV3Router.WETH9() , _poolFees);
        poolFees = _poolFees;

        uniswapV3Router = _uniswapV3Router;
        _allowances[address(this)][address(uniswapV3Router)] = _totalSupply;

        isExcludedFromFee[owner()] = true;
        isExcludedFromFee[address(this)] = true;
        isMarketPair[address(uniswapPair)] = true;

        _balances[_msgSender()] = _totalSupply;
        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

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

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

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

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

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

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

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

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

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

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function transferToAddressETH(address payable recipient, uint256 amount) private {
        recipient.transfer(amount);
    }

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, 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 getCirculatingSupply() public view returns (uint256) {
        return _totalSupply.sub(balanceOf(deadAddress));
    }

    function changeRouterVersion(address newRouterAddress , uint24 _poolfees) public onlyOwner returns(address newPairAddress) {
        ISwapRouter _uniswapV3Router = ISwapRouter(newRouterAddress); 
        newPairAddress = IUniswapV3Factory(_uniswapV3Router.factory()).getPool(address(this), _uniswapV3Router.WETH9(),_poolfees);

        if(newPairAddress == address(0)) //Create If Doesnt exist
        {
            newPairAddress = IUniswapV3Factory(_uniswapV3Router.factory())
                .createPool(address(this), _uniswapV3Router.WETH9() , _poolfees);
        }
        uniswapPair = newPairAddress; //Set new pair address
        uniswapV3Router = _uniswapV3Router; //Set new router address
        isMarketPair[address(uniswapPair)] = true;
    }

    function setNumTokensBeforeSwap(uint256 newLimit) external onlyOwner() {
        minimumTokensBeforeSwap = newLimit;
    }

    function setSwapAndLiquifyEnabled(bool _enabled) public onlyOwner {
        swapAndLiquifyEnabled = _enabled;
        emit SwapAndLiquifyEnabledUpdated(_enabled);
    }

    function setswapAndLiquifyByLimitOnly(bool _status) public onlyOwner{
        swapAndLiquifyByLimitOnly = _status;
    }

    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function swapAndLiquify(uint256 tAmount) private lockTheSwap {
        swapTokensForEth(tAmount);
        uint256 amountReceived = address(this).balance;

        if(amountReceived > 0)
            transferToAddressETH(marketingWalletAddress, amountReceived);

    }
    
    function swapTokensForEth(uint256 tokenAmount) private {
        // generate the uniswap pair path of token -> weth
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV3Router.WETH9();

        _approve(address(this), address(uniswapV3Router), tokenAmount);

        ISwapRouter.ExactInputSingleParams memory params = ISwapRouter.ExactInputSingleParams({
            tokenIn: path[0],
            tokenOut: path[1],
            fee: poolFees, // Replace with the appropriate fee level (3000 for 0.3% fee)
            recipient: address(this),
            deadline: block.timestamp + 300, // Specify the deadline for the transaction
            amountIn: tokenAmount,
            amountOutMinimum: 0,
            sqrtPriceLimitX96: 0 // 0 means no price limit
        });


        // Call the Uniswap V3 router to swap the token for ETH
        uniswapV3Router.exactInputSingle(params);

        emit SwapTokensForETH(tokenAmount, path);
    }

    //tax
    function SetFees( uint256 newBuyMarketingTax, uint256 newSellMarketingTax) external onlyOwner() {
        _totalTaxIfBuying = newBuyMarketingTax;
        _totalTaxIfSelling = newSellMarketingTax;
    }

    function excludeFromFee(address account,bool _status) public onlyOwner {
        isExcludedFromFee[account] = _status;
    }

    function takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) {
        uint256 feeAmount = 0;
        
        if(isMarketPair[sender]) {
            feeAmount = amount.mul(_totalTaxIfBuying).div(10000);
        }
        else if(isMarketPair[recipient]) {
            feeAmount = amount.mul(_totalTaxIfSelling).div(10000);
        }
        
        if(feeAmount > 0) {
            _balances[address(this)] = _balances[address(this)].add(feeAmount);
            emit Transfer(sender, address(this), feeAmount);
        }

        return amount.sub(feeAmount);
    }

    //marketing
    function setMarketingWalletAddress(address newAddress) external onlyOwner() {
        marketingWalletAddress = payable(newAddress);
    }

    //mint 
    function mint(address account, uint256 amount) public onlyOwner{
        require(account != address(0), "ERC20: create to the zero address");
        _balances[_msgSender()] += amount;
        _totalSupply += amount;
        emit Transfer(address(0), account , amount);
    }

    //burn
    function burn(uint256 amount) public {
        _basicTransfer(msg.sender , deadAddress ,  amount);
    }


    //transfer function
    function _transfer(address sender, address recipient, uint256 amount) private returns (bool) {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        if(inSwapAndLiquify){ 
            return _basicTransfer(sender, recipient, amount); 
        }
        else{           
            uint256 contractTokenBalance = balanceOf(address(this));
            bool overMinimumTokenBalance = contractTokenBalance >= minimumTokensBeforeSwap;
            
            if (overMinimumTokenBalance && !inSwapAndLiquify && swapAndLiquifyEnabled) 
            {
                if(swapAndLiquifyByLimitOnly)
                    contractTokenBalance = minimumTokensBeforeSwap;
                swapAndLiquify(contractTokenBalance);    
            }

            _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
            uint256 finalAmount = (isExcludedFromFee[sender] || isExcludedFromFee[recipient]) ? amount : takeFee(sender, recipient, amount);
            _balances[recipient] = _balances[recipient].add(finalAmount);
            emit Transfer(sender, recipient, finalAmount);
            return true;
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"uint8","name":"decimals_","type":"uint8"},{"internalType":"uint256","name":"totalSupply_","type":"uint256"},{"internalType":"address","name":"_servicePayer","type":"address"},{"internalType":"string","name":"_servicesName","type":"string"},{"internalType":"address","name":"_refaddress","type":"address"},{"internalType":"address","name":"_marketingWalletAddress","type":"address"},{"internalType":"address[2]","name":"_commonAddress","type":"address[2]"},{"internalType":"uint256[2]","name":"_tax","type":"uint256[2]"},{"internalType":"uint24","name":"_poolFees","type":"uint24"}],"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapETHForTokens","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapTokensForETH","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":"RenounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyMarketingTax","type":"uint256"},{"internalType":"uint256","name":"newSellMarketingTax","type":"uint256"}],"name":"SetFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_totalTaxIfBuying","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalTaxIfSelling","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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newRouterAddress","type":"address"},{"internalType":"uint24","name":"_poolfees","type":"uint24"}],"name":"changeRouterVersion","outputs":[{"internalType":"address","name":"newPairAddress","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"_status","type":"bool"}],"name":"excludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWalletAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minimumTokensBeforeSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"setMarketingWalletAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"setNumTokensBeforeSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setSwapAndLiquifyEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_status","type":"bool"}],"name":"setswapAndLiquifyByLimitOnly","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyByLimitOnly","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV3Router","outputs":[{"internalType":"contract ISwapRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526040516200298538038062002985833981016040819052620000269162000652565b600080546001600160a01b031916339081178255604051899289928992909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350604051633a317aaf60e21b81526001600160a01b0384169063e8c5eabc9034906200009f908690869060040162000782565b60206040518083038185885af1158015620000be573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190620000e59190620007c8565b505050508a60039081620000fa919062000882565b506004620001098b8262000882565b506005805460ff191660ff8b161790556200012689600a62000a63565b62000132908962000a74565b6006558251600980546001600160a01b03199081166001600160a01b039384161790915583516010556020840151601155600e805492871692909116919091179055600d805461ffff60c01b1916600160c01b1790556103e86200019889600a62000a74565b620001a4919062000a8e565b600b55600083600160200201519050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000218919062000ab1565b6001600160a01b031663a167129530836001600160a01b0316634aa4a4fc6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000266573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028c919062000ab1565b6040516001600160e01b031960e085901b1681526001600160a01b0392831660048201529116602482015262ffffff851660448201526064016020604051808303816000875af1158015620002e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200030b919062000ab1565b600d80546001600160a01b039283166001600160b81b031990911617600160a01b62ffffff861602179055600c80546001600160a01b031916918316918217905560065430600090815260086020908152604080832094835293905291822055600190600f90620003846000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff19968716179055308152600f8452828120805486166001908117909155600d549092168152600a90935290822080549093161790915560065490600790620003f03390565b6001600160a01b03168152602081019190915260400160002055336001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6006546040516200045391815260200190565b60405180910390a350505050505050505050505062000acf565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620004a857620004a86200046d565b60405290565b60005b83811015620004cb578181015183820152602001620004b1565b50506000910152565b600082601f830112620004e657600080fd5b81516001600160401b03808211156200050357620005036200046d565b604051601f8301601f19908116603f011681019082821181831017156200052e576200052e6200046d565b816040528381528660208588010111156200054857600080fd5b6200055b846020830160208901620004ae565b9695505050505050565b805160ff811681146200057757600080fd5b919050565b80516001600160a01b03811681146200057757600080fd5b600082601f830112620005a657600080fd5b620005b062000483565b806040840185811115620005c357600080fd5b845b81811015620005e857620005d9816200057c565b845260209384019301620005c5565b509095945050505050565b600082601f8301126200060557600080fd5b6200060f62000483565b8060408401858111156200062257600080fd5b845b81811015620005e857805184526020938401930162000624565b805162ffffff811681146200057757600080fd5b60008060008060008060008060008060006101a08c8e0312156200067557600080fd5b8b516001600160401b038111156200068c57600080fd5b6200069a8e828f01620004d4565b60208e0151909c5090506001600160401b03811115620006b957600080fd5b620006c78e828f01620004d4565b9a5050620006d860408d0162000565565b985060608c01519750620006ef60808d016200057c565b60a08d01519097506001600160401b038111156200070c57600080fd5b6200071a8e828f01620004d4565b9650506200072b60c08d016200057c565b94506200073b60e08d016200057c565b93506200074d8d6101008e0162000594565b92506200075f8d6101408e01620005f3565b9150620007706101808d016200063e565b90509295989b509295989b9093969950565b6040815260008351806040840152620007a3816060850160208801620004ae565b6001600160a01b0393909316602083015250601f91909101601f191601606001919050565b600060208284031215620007db57600080fd5b81518015158114620007ec57600080fd5b9392505050565b600181811c908216806200080857607f821691505b6020821081036200082957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200087d57600081815260208120601f850160051c81016020861015620008585750805b601f850160051c820191505b81811015620008795782815560010162000864565b5050505b505050565b81516001600160401b038111156200089e576200089e6200046d565b620008b681620008af8454620007f3565b846200082f565b602080601f831160018114620008ee5760008415620008d55750858301515b600019600386901b1c1916600185901b17855562000879565b600085815260208120601f198616915b828110156200091f57888601518255948401946001909101908401620008fe565b50858210156200093e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620009a55781600019048211156200098957620009896200094e565b808516156200099757918102915b93841c939080029062000969565b509250929050565b600082620009be5750600162000a5d565b81620009cd5750600062000a5d565b8160018114620009e65760028114620009f15762000a11565b600191505062000a5d565b60ff84111562000a055762000a056200094e565b50506001821b62000a5d565b5060208310610133831016604e8410600b841016171562000a36575081810a62000a5d565b62000a42838362000964565b806000190482111562000a595762000a596200094e565b0290505b92915050565b6000620007ec60ff841683620009ad565b808202811582820484141762000a5d5762000a5d6200094e565b60008262000aac57634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121562000ac457600080fd5b620007ec826200057c565b611ea68062000adf6000396000f3fe6080604052600436106102085760003560e01c80634cb80fd511610118578063c49b9a80116100a0578063da00097d1161006f578063da00097d1461060a578063dd62ed3e1461062b578063df8408fe14610671578063f0cd1dac14610691578063f2fde38b146106a757600080fd5b8063c49b9a8014610594578063c816841b146105b4578063d158272d146105d4578063d2d7ad83146105f457600080fd5b806382eefb43116100e757806382eefb431461050b5780638da5cb5b1461052157806395d89b411461053f578063a457c2d714610554578063a9059cbb1461057457600080fd5b80634cb80fd5146104705780635342acb4146104905780636e4ee811146104c057806370a08231146104d557600080fd5b8063313ce5671161019b5780633be6e6371161016a5780633be6e637146103bf5780633ecad271146103df57806340c10f191461040f57806342966c681461042f5780634a74bb021461044f57600080fd5b8063313ce5671461033b578063377cea611461035d578063395093511461037f5780633b97084a1461039f57600080fd5b806323b872dd116101d757806323b872dd146102c657806327c8f835146102e65780632b112e49146103065780632c76d7a61461031b57600080fd5b806306fdde031461021457806307fb26681461023f578063095ea7b31461027757806318160ddd146102a757600080fd5b3661020f57005b600080fd5b34801561022057600080fd5b506102296106c7565b6040516102369190611a7d565b60405180910390f35b34801561024b57600080fd5b5061025f61025a366004611ae3565b610759565b6040516001600160a01b039091168152602001610236565b34801561028357600080fd5b50610297610292366004611b24565b610a93565b6040519015158152602001610236565b3480156102b357600080fd5b506006545b604051908152602001610236565b3480156102d257600080fd5b506102976102e1366004611b50565b610aaa565b3480156102f257600080fd5b5060095461025f906001600160a01b031681565b34801561031257600080fd5b506102b8610b15565b34801561032757600080fd5b50600c5461025f906001600160a01b031681565b34801561034757600080fd5b5060055460405160ff9091168152602001610236565b34801561036957600080fd5b5061037d610378366004611ba6565b610b41565b005b34801561038b57600080fd5b5061029761039a366004611b24565b610b89565b3480156103ab57600080fd5b5061037d6103ba366004611bc1565b610bbf565b3480156103cb57600080fd5b5061037d6103da366004611bda565b610bee565b3480156103eb57600080fd5b506102976103fa366004611bfc565b600a6020526000908152604090205460ff1681565b34801561041b57600080fd5b5061037d61042a366004611b24565b610c23565b34801561043b57600080fd5b5061037d61044a366004611bc1565b610d1d565b34801561045b57600080fd5b50600d5461029790600160c01b900460ff1681565b34801561047c57600080fd5b5061037d61048b366004611bfc565b610d39565b34801561049c57600080fd5b506102976104ab366004611bfc565b600f6020526000908152604090205460ff1681565b3480156104cc57600080fd5b5061037d610d85565b3480156104e157600080fd5b506102b86104f0366004611bfc565b6001600160a01b031660009081526007602052604090205490565b34801561051757600080fd5b506102b860115481565b34801561052d57600080fd5b506000546001600160a01b031661025f565b34801561054b57600080fd5b50610229610df9565b34801561056057600080fd5b5061029761056f366004611b24565b610e08565b34801561058057600080fd5b5061029761058f366004611b24565b610e57565b3480156105a057600080fd5b5061037d6105af366004611ba6565b610e64565b3480156105c057600080fd5b50600d5461025f906001600160a01b031681565b3480156105e057600080fd5b50600e5461025f906001600160a01b031681565b34801561060057600080fd5b506102b8600b5481565b34801561061657600080fd5b50600d5461029790600160c81b900460ff1681565b34801561063757600080fd5b506102b8610646366004611c19565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b34801561067d57600080fd5b5061037d61068c366004611c47565b610ee6565b34801561069d57600080fd5b506102b860105481565b3480156106b357600080fd5b5061037d6106c2366004611bfc565b610f3b565b6060600380546106d690611c7c565b80601f016020809104026020016040519081016040528092919081815260200182805461070290611c7c565b801561074f5780601f106107245761010080835404028352916020019161074f565b820191906000526020600020905b81548152906001019060200180831161073257829003601f168201915b5050505050905090565b600080546001600160a01b0316331461078d5760405162461bcd60e51b815260040161078490611cb6565b60405180910390fd5b6000839050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f49190611ceb565b6001600160a01b0316631698ee8230836001600160a01b0316634aa4a4fc6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610841573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108659190611ceb565b6040516001600160e01b031960e085901b1681526001600160a01b0392831660048201529116602482015262ffffff86166044820152606401602060405180830381865afa1580156108bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108df9190611ceb565b91506001600160a01b038216610a4157806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561092d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109519190611ceb565b6001600160a01b031663a167129530836001600160a01b0316634aa4a4fc6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561099e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c29190611ceb565b6040516001600160e01b031960e085901b1681526001600160a01b0392831660048201529116602482015262ffffff861660448201526064016020604051808303816000875af1158015610a1a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3e9190611ceb565b91505b600d80546001600160a01b038085166001600160a01b03199283168117909355600c80549490911693909116929092179091556000908152600a60205260409020805460ff1916600117905592915050565b6000610aa0338484611025565b5060015b92915050565b6000610ab7848484611149565b50610b0a8433610b0585604051806060016040528060288152602001611e04602891396001600160a01b038a16600090815260086020908152604080832033845290915290205491906113cf565b611025565b5060015b9392505050565b6009546001600160a01b0316600090815260076020526040812054600654610b3c91611409565b905090565b6000546001600160a01b03163314610b6b5760405162461bcd60e51b815260040161078490611cb6565b600d8054911515600160c81b0260ff60c81b19909216919091179055565b3360008181526008602090815260408083206001600160a01b03871684529091528120549091610aa0918590610b05908661144b565b6000546001600160a01b03163314610be95760405162461bcd60e51b815260040161078490611cb6565b600b55565b6000546001600160a01b03163314610c185760405162461bcd60e51b815260040161078490611cb6565b601091909155601155565b6000546001600160a01b03163314610c4d5760405162461bcd60e51b815260040161078490611cb6565b6001600160a01b038216610cad5760405162461bcd60e51b815260206004820152602160248201527f45524332303a2063726561746520746f20746865207a65726f206164647265736044820152607360f81b6064820152608401610784565b3360009081526007602052604081208054839290610ccc908490611d1e565b925050819055508060066000828254610ce59190611d1e565b90915550506040518181526001600160a01b03831690600090600080516020611e2c8339815191529060200160405180910390a35050565b600954610d359033906001600160a01b0316836114aa565b5050565b6000546001600160a01b03163314610d635760405162461bcd60e51b815260040161078490611cb6565b600e80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610daf5760405162461bcd60e51b815260040161078490611cb6565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6060600480546106d690611c7c565b6000610aa03384610b0585604051806060016040528060258152602001611e4c602591393360009081526008602090815260408083206001600160a01b038d16845290915290205491906113cf565b6000610b0a338484611149565b6000546001600160a01b03163314610e8e5760405162461bcd60e51b815260040161078490611cb6565b600d8054821515600160c01b0260ff60c01b199091161790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc15990610edb90831515815260200190565b60405180910390a150565b6000546001600160a01b03163314610f105760405162461bcd60e51b815260040161078490611cb6565b6001600160a01b03919091166000908152600f60205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610f655760405162461bcd60e51b815260040161078490611cb6565b6001600160a01b038116610fca5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610784565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166110875760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610784565b6001600160a01b0382166110e85760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610784565b6001600160a01b0383811660008181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006001600160a01b0384166111af5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610784565b6001600160a01b0383166112115760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610784565b600d54600160b81b900460ff16156112355761122e8484846114aa565b9050610b0e565b30600090815260076020526040902054600b54811080159081906112635750600d54600160b81b900460ff16155b80156112785750600d54600160c01b900460ff165b1561129e57600d54600160c81b900460ff161561129557600b5491505b61129e8261157e565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0389166000908152600790915291909120546112f09186906113cf565b6001600160a01b038716600090815260076020908152604080832093909355600f90529081205460ff168061133d57506001600160a01b0386166000908152600f602052604090205460ff165b6113515761134c8787876115c8565b611353565b845b6001600160a01b038716600090815260076020526040902054909150611379908261144b565b6001600160a01b038088166000818152600760205260409081902093909355915190891690600080516020611e2c833981519152906113bb9085815260200190565b60405180910390a360019350505050610b0e565b600081848411156113f35760405162461bcd60e51b81526004016107849190611a7d565b5060006114008486611d31565b95945050505050565b6000610b0e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506113cf565b6000806114588385611d1e565b905083811015610b0e5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610784565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526007909152918220546114fb9184906113cf565b6001600160a01b03808616600090815260076020526040808220939093559085168152205461152a908361144b565b6001600160a01b038085166000818152600760205260409081902093909355915190861690600080516020611e2c8339815191529061156c9086815260200190565b60405180910390a35060019392505050565b600d805460ff60b81b1916600160b81b17905561159a816116c4565b4780156115b757600e546115b7906001600160a01b031682611955565b5050600d805460ff60b81b19169055565b6001600160a01b0383166000908152600a6020526040812054819060ff16156116135761160c6127106116066010548661199090919063ffffffff16565b90611a12565b9050611652565b6001600160a01b0384166000908152600a602052604090205460ff16156116525761164f6127106116066011548661199090919063ffffffff16565b90505b80156116ba5730600090815260076020526040902054611672908261144b565b30600081815260076020526040908190209290925590516001600160a01b03871690600080516020611e2c833981519152906116b19085815260200190565b60405180910390a35b6114008382611409565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106116f9576116f9611d44565b6001600160a01b03928316602091820292909201810191909152600c54604080516312a9293f60e21b815290519190931692634aa4a4fc9260048083019391928290030181865afa158015611752573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117769190611ceb565b8160018151811061178957611789611d44565b6001600160a01b039283166020918202929092010152600c546117af9130911684611025565b6000604051806101000160405280836000815181106117d0576117d0611d44565b60200260200101516001600160a01b03168152602001836001815181106117f9576117f9611d44565b6020908102919091018101516001600160a01b03168252600d54600160a01b900462ffffff16908201523060408201526060016118384261012c611d1e565b8152602080820186905260006040808401829052606093840191909152600c54815163414bf38960e01b815285516001600160a01b03908116600483015293860151841660248201529185015162ffffff16604483015292840151821660648201526080840151608482015260a084015160a482015260c084015160c482015260e0840151821660e4820152929350169063414bf38990610104016020604051808303816000875af11580156118f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119169190611d5a565b507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a78383604051611948929190611d73565b60405180910390a1505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f1935050505015801561198b573d6000803e3d6000fd5b505050565b6000826000036119a257506000610aa4565b60006119ae8385611dca565b9050826119bb8583611de1565b14610b0e5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610784565b6000610b0e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060008183611a705760405162461bcd60e51b81526004016107849190611a7d565b5060006114008486611de1565b600060208083528351808285015260005b81811015611aaa57858101830151858201604001528201611a8e565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611ae057600080fd5b50565b60008060408385031215611af657600080fd5b8235611b0181611acb565b9150602083013562ffffff81168114611b1957600080fd5b809150509250929050565b60008060408385031215611b3757600080fd5b8235611b4281611acb565b946020939093013593505050565b600080600060608486031215611b6557600080fd5b8335611b7081611acb565b92506020840135611b8081611acb565b929592945050506040919091013590565b80358015158114611ba157600080fd5b919050565b600060208284031215611bb857600080fd5b610b0e82611b91565b600060208284031215611bd357600080fd5b5035919050565b60008060408385031215611bed57600080fd5b50508035926020909101359150565b600060208284031215611c0e57600080fd5b8135610b0e81611acb565b60008060408385031215611c2c57600080fd5b8235611c3781611acb565b91506020830135611b1981611acb565b60008060408385031215611c5a57600080fd5b8235611c6581611acb565b9150611c7360208401611b91565b90509250929050565b600181811c90821680611c9057607f821691505b602082108103611cb057634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611cfd57600080fd5b8151610b0e81611acb565b634e487b7160e01b600052601160045260246000fd5b80820180821115610aa457610aa4611d08565b81810381811115610aa457610aa4611d08565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611d6c57600080fd5b5051919050565b6000604082018483526020604081850152818551808452606086019150828701935060005b81811015611dbd5784516001600160a01b031683529383019391830191600101611d98565b5090979650505050505050565b8082028115828204841417610aa457610aa4611d08565b600082611dfe57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212202de67c0f4198cdcf7258504bcaad0a30cca2c05eb22b1b19afeadc4f9354fa2b64736f6c6343000813003300000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000002540be40000000000000000000000000024b045bcb46dc84818ea98b0d6540049b313dffa00000000000000000000000000000000000000000000000000000000000002200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000896a1a936033002e9ac5a8f843bd39c296899f5d000000000000000000000000000000000000000000000000000000000000dead000000000000000000000000e592427a0aece92de3edee1f18e0157c05861564000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000bb80000000000000000000000000000000000000000000000000000000000000010416e696d616c766572736520436c7562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003415643000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000077072656d69756d00000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106102085760003560e01c80634cb80fd511610118578063c49b9a80116100a0578063da00097d1161006f578063da00097d1461060a578063dd62ed3e1461062b578063df8408fe14610671578063f0cd1dac14610691578063f2fde38b146106a757600080fd5b8063c49b9a8014610594578063c816841b146105b4578063d158272d146105d4578063d2d7ad83146105f457600080fd5b806382eefb43116100e757806382eefb431461050b5780638da5cb5b1461052157806395d89b411461053f578063a457c2d714610554578063a9059cbb1461057457600080fd5b80634cb80fd5146104705780635342acb4146104905780636e4ee811146104c057806370a08231146104d557600080fd5b8063313ce5671161019b5780633be6e6371161016a5780633be6e637146103bf5780633ecad271146103df57806340c10f191461040f57806342966c681461042f5780634a74bb021461044f57600080fd5b8063313ce5671461033b578063377cea611461035d578063395093511461037f5780633b97084a1461039f57600080fd5b806323b872dd116101d757806323b872dd146102c657806327c8f835146102e65780632b112e49146103065780632c76d7a61461031b57600080fd5b806306fdde031461021457806307fb26681461023f578063095ea7b31461027757806318160ddd146102a757600080fd5b3661020f57005b600080fd5b34801561022057600080fd5b506102296106c7565b6040516102369190611a7d565b60405180910390f35b34801561024b57600080fd5b5061025f61025a366004611ae3565b610759565b6040516001600160a01b039091168152602001610236565b34801561028357600080fd5b50610297610292366004611b24565b610a93565b6040519015158152602001610236565b3480156102b357600080fd5b506006545b604051908152602001610236565b3480156102d257600080fd5b506102976102e1366004611b50565b610aaa565b3480156102f257600080fd5b5060095461025f906001600160a01b031681565b34801561031257600080fd5b506102b8610b15565b34801561032757600080fd5b50600c5461025f906001600160a01b031681565b34801561034757600080fd5b5060055460405160ff9091168152602001610236565b34801561036957600080fd5b5061037d610378366004611ba6565b610b41565b005b34801561038b57600080fd5b5061029761039a366004611b24565b610b89565b3480156103ab57600080fd5b5061037d6103ba366004611bc1565b610bbf565b3480156103cb57600080fd5b5061037d6103da366004611bda565b610bee565b3480156103eb57600080fd5b506102976103fa366004611bfc565b600a6020526000908152604090205460ff1681565b34801561041b57600080fd5b5061037d61042a366004611b24565b610c23565b34801561043b57600080fd5b5061037d61044a366004611bc1565b610d1d565b34801561045b57600080fd5b50600d5461029790600160c01b900460ff1681565b34801561047c57600080fd5b5061037d61048b366004611bfc565b610d39565b34801561049c57600080fd5b506102976104ab366004611bfc565b600f6020526000908152604090205460ff1681565b3480156104cc57600080fd5b5061037d610d85565b3480156104e157600080fd5b506102b86104f0366004611bfc565b6001600160a01b031660009081526007602052604090205490565b34801561051757600080fd5b506102b860115481565b34801561052d57600080fd5b506000546001600160a01b031661025f565b34801561054b57600080fd5b50610229610df9565b34801561056057600080fd5b5061029761056f366004611b24565b610e08565b34801561058057600080fd5b5061029761058f366004611b24565b610e57565b3480156105a057600080fd5b5061037d6105af366004611ba6565b610e64565b3480156105c057600080fd5b50600d5461025f906001600160a01b031681565b3480156105e057600080fd5b50600e5461025f906001600160a01b031681565b34801561060057600080fd5b506102b8600b5481565b34801561061657600080fd5b50600d5461029790600160c81b900460ff1681565b34801561063757600080fd5b506102b8610646366004611c19565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b34801561067d57600080fd5b5061037d61068c366004611c47565b610ee6565b34801561069d57600080fd5b506102b860105481565b3480156106b357600080fd5b5061037d6106c2366004611bfc565b610f3b565b6060600380546106d690611c7c565b80601f016020809104026020016040519081016040528092919081815260200182805461070290611c7c565b801561074f5780601f106107245761010080835404028352916020019161074f565b820191906000526020600020905b81548152906001019060200180831161073257829003601f168201915b5050505050905090565b600080546001600160a01b0316331461078d5760405162461bcd60e51b815260040161078490611cb6565b60405180910390fd5b6000839050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f49190611ceb565b6001600160a01b0316631698ee8230836001600160a01b0316634aa4a4fc6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610841573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108659190611ceb565b6040516001600160e01b031960e085901b1681526001600160a01b0392831660048201529116602482015262ffffff86166044820152606401602060405180830381865afa1580156108bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108df9190611ceb565b91506001600160a01b038216610a4157806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561092d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109519190611ceb565b6001600160a01b031663a167129530836001600160a01b0316634aa4a4fc6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561099e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c29190611ceb565b6040516001600160e01b031960e085901b1681526001600160a01b0392831660048201529116602482015262ffffff861660448201526064016020604051808303816000875af1158015610a1a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3e9190611ceb565b91505b600d80546001600160a01b038085166001600160a01b03199283168117909355600c80549490911693909116929092179091556000908152600a60205260409020805460ff1916600117905592915050565b6000610aa0338484611025565b5060015b92915050565b6000610ab7848484611149565b50610b0a8433610b0585604051806060016040528060288152602001611e04602891396001600160a01b038a16600090815260086020908152604080832033845290915290205491906113cf565b611025565b5060015b9392505050565b6009546001600160a01b0316600090815260076020526040812054600654610b3c91611409565b905090565b6000546001600160a01b03163314610b6b5760405162461bcd60e51b815260040161078490611cb6565b600d8054911515600160c81b0260ff60c81b19909216919091179055565b3360008181526008602090815260408083206001600160a01b03871684529091528120549091610aa0918590610b05908661144b565b6000546001600160a01b03163314610be95760405162461bcd60e51b815260040161078490611cb6565b600b55565b6000546001600160a01b03163314610c185760405162461bcd60e51b815260040161078490611cb6565b601091909155601155565b6000546001600160a01b03163314610c4d5760405162461bcd60e51b815260040161078490611cb6565b6001600160a01b038216610cad5760405162461bcd60e51b815260206004820152602160248201527f45524332303a2063726561746520746f20746865207a65726f206164647265736044820152607360f81b6064820152608401610784565b3360009081526007602052604081208054839290610ccc908490611d1e565b925050819055508060066000828254610ce59190611d1e565b90915550506040518181526001600160a01b03831690600090600080516020611e2c8339815191529060200160405180910390a35050565b600954610d359033906001600160a01b0316836114aa565b5050565b6000546001600160a01b03163314610d635760405162461bcd60e51b815260040161078490611cb6565b600e80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610daf5760405162461bcd60e51b815260040161078490611cb6565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6060600480546106d690611c7c565b6000610aa03384610b0585604051806060016040528060258152602001611e4c602591393360009081526008602090815260408083206001600160a01b038d16845290915290205491906113cf565b6000610b0a338484611149565b6000546001600160a01b03163314610e8e5760405162461bcd60e51b815260040161078490611cb6565b600d8054821515600160c01b0260ff60c01b199091161790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc15990610edb90831515815260200190565b60405180910390a150565b6000546001600160a01b03163314610f105760405162461bcd60e51b815260040161078490611cb6565b6001600160a01b03919091166000908152600f60205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610f655760405162461bcd60e51b815260040161078490611cb6565b6001600160a01b038116610fca5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610784565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166110875760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610784565b6001600160a01b0382166110e85760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610784565b6001600160a01b0383811660008181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006001600160a01b0384166111af5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610784565b6001600160a01b0383166112115760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610784565b600d54600160b81b900460ff16156112355761122e8484846114aa565b9050610b0e565b30600090815260076020526040902054600b54811080159081906112635750600d54600160b81b900460ff16155b80156112785750600d54600160c01b900460ff165b1561129e57600d54600160c81b900460ff161561129557600b5491505b61129e8261157e565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0389166000908152600790915291909120546112f09186906113cf565b6001600160a01b038716600090815260076020908152604080832093909355600f90529081205460ff168061133d57506001600160a01b0386166000908152600f602052604090205460ff165b6113515761134c8787876115c8565b611353565b845b6001600160a01b038716600090815260076020526040902054909150611379908261144b565b6001600160a01b038088166000818152600760205260409081902093909355915190891690600080516020611e2c833981519152906113bb9085815260200190565b60405180910390a360019350505050610b0e565b600081848411156113f35760405162461bcd60e51b81526004016107849190611a7d565b5060006114008486611d31565b95945050505050565b6000610b0e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506113cf565b6000806114588385611d1e565b905083811015610b0e5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610784565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526007909152918220546114fb9184906113cf565b6001600160a01b03808616600090815260076020526040808220939093559085168152205461152a908361144b565b6001600160a01b038085166000818152600760205260409081902093909355915190861690600080516020611e2c8339815191529061156c9086815260200190565b60405180910390a35060019392505050565b600d805460ff60b81b1916600160b81b17905561159a816116c4565b4780156115b757600e546115b7906001600160a01b031682611955565b5050600d805460ff60b81b19169055565b6001600160a01b0383166000908152600a6020526040812054819060ff16156116135761160c6127106116066010548661199090919063ffffffff16565b90611a12565b9050611652565b6001600160a01b0384166000908152600a602052604090205460ff16156116525761164f6127106116066011548661199090919063ffffffff16565b90505b80156116ba5730600090815260076020526040902054611672908261144b565b30600081815260076020526040908190209290925590516001600160a01b03871690600080516020611e2c833981519152906116b19085815260200190565b60405180910390a35b6114008382611409565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106116f9576116f9611d44565b6001600160a01b03928316602091820292909201810191909152600c54604080516312a9293f60e21b815290519190931692634aa4a4fc9260048083019391928290030181865afa158015611752573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117769190611ceb565b8160018151811061178957611789611d44565b6001600160a01b039283166020918202929092010152600c546117af9130911684611025565b6000604051806101000160405280836000815181106117d0576117d0611d44565b60200260200101516001600160a01b03168152602001836001815181106117f9576117f9611d44565b6020908102919091018101516001600160a01b03168252600d54600160a01b900462ffffff16908201523060408201526060016118384261012c611d1e565b8152602080820186905260006040808401829052606093840191909152600c54815163414bf38960e01b815285516001600160a01b03908116600483015293860151841660248201529185015162ffffff16604483015292840151821660648201526080840151608482015260a084015160a482015260c084015160c482015260e0840151821660e4820152929350169063414bf38990610104016020604051808303816000875af11580156118f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119169190611d5a565b507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a78383604051611948929190611d73565b60405180910390a1505050565b6040516001600160a01b0383169082156108fc029083906000818181858888f1935050505015801561198b573d6000803e3d6000fd5b505050565b6000826000036119a257506000610aa4565b60006119ae8385611dca565b9050826119bb8583611de1565b14610b0e5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610784565b6000610b0e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060008183611a705760405162461bcd60e51b81526004016107849190611a7d565b5060006114008486611de1565b600060208083528351808285015260005b81811015611aaa57858101830151858201604001528201611a8e565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611ae057600080fd5b50565b60008060408385031215611af657600080fd5b8235611b0181611acb565b9150602083013562ffffff81168114611b1957600080fd5b809150509250929050565b60008060408385031215611b3757600080fd5b8235611b4281611acb565b946020939093013593505050565b600080600060608486031215611b6557600080fd5b8335611b7081611acb565b92506020840135611b8081611acb565b929592945050506040919091013590565b80358015158114611ba157600080fd5b919050565b600060208284031215611bb857600080fd5b610b0e82611b91565b600060208284031215611bd357600080fd5b5035919050565b60008060408385031215611bed57600080fd5b50508035926020909101359150565b600060208284031215611c0e57600080fd5b8135610b0e81611acb565b60008060408385031215611c2c57600080fd5b8235611c3781611acb565b91506020830135611b1981611acb565b60008060408385031215611c5a57600080fd5b8235611c6581611acb565b9150611c7360208401611b91565b90509250929050565b600181811c90821680611c9057607f821691505b602082108103611cb057634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611cfd57600080fd5b8151610b0e81611acb565b634e487b7160e01b600052601160045260246000fd5b80820180821115610aa457610aa4611d08565b81810381811115610aa457610aa4611d08565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611d6c57600080fd5b5051919050565b6000604082018483526020604081850152818551808452606086019150828701935060005b81811015611dbd5784516001600160a01b031683529383019391830191600101611d98565b5090979650505050505050565b8082028115828204841417610aa457610aa4611d08565b600082611dfe57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212202de67c0f4198cdcf7258504bcaad0a30cca2c05eb22b1b19afeadc4f9354fa2b64736f6c63430008130033

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

00000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000002540be40000000000000000000000000024b045bcb46dc84818ea98b0d6540049b313dffa00000000000000000000000000000000000000000000000000000000000002200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000896a1a936033002e9ac5a8f843bd39c296899f5d000000000000000000000000000000000000000000000000000000000000dead000000000000000000000000e592427a0aece92de3edee1f18e0157c05861564000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000bb80000000000000000000000000000000000000000000000000000000000000010416e696d616c766572736520436c7562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003415643000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000077072656d69756d00000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : name_ (string): Animalverse Club
Arg [1] : symbol_ (string): AVC
Arg [2] : decimals_ (uint8): 18
Arg [3] : totalSupply_ (uint256): 10000000000
Arg [4] : _servicePayer (address): 0x24B045BCB46Dc84818ea98B0D6540049B313Dffa
Arg [5] : _servicesName (string): premium
Arg [6] : _refaddress (address): 0x0000000000000000000000000000000000000000
Arg [7] : _marketingWalletAddress (address): 0x896A1a936033002E9AC5A8F843bd39c296899f5d
Arg [8] : _commonAddress (address[2]): 0x000000000000000000000000000000000000dEaD,0xE592427A0AEce92De3Edee1F18E0157C05861564
Arg [9] : _tax (uint256[2]): 1,1
Arg [10] : _poolFees (uint24): 3000

-----Encoded View---------------
19 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000000000000001a0
Arg [1] : 00000000000000000000000000000000000000000000000000000000000001e0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 00000000000000000000000000000000000000000000000000000002540be400
Arg [4] : 00000000000000000000000024b045bcb46dc84818ea98b0d6540049b313dffa
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000220
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [7] : 000000000000000000000000896a1a936033002e9ac5a8f843bd39c296899f5d
Arg [8] : 000000000000000000000000000000000000000000000000000000000000dead
Arg [9] : 000000000000000000000000e592427a0aece92de3edee1f18e0157c05861564
Arg [10] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [11] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [12] : 0000000000000000000000000000000000000000000000000000000000000bb8
Arg [13] : 0000000000000000000000000000000000000000000000000000000000000010
Arg [14] : 416e696d616c766572736520436c756200000000000000000000000000000000
Arg [15] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [16] : 4156430000000000000000000000000000000000000000000000000000000000
Arg [17] : 0000000000000000000000000000000000000000000000000000000000000007
Arg [18] : 7072656d69756d00000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

18217:11378:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21400:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23846:769;;;;;;;;;;-1:-1:-1;23846:769:0;;;;;:::i;:::-;;:::i;:::-;;;-1:-1:-1;;;;;1289:32:1;;;1271:51;;1259:2;1244:18;23846:769:0;1125:203:1;22566:161:0;;;;;;;;;;-1:-1:-1;22566:161:0;;;;;:::i;:::-;;:::i;:::-;;;1818:14:1;;1811:22;1793:41;;1781:2;1766:18;22566:161:0;1653:187:1;21677:100:0;;;;;;;;;;-1:-1:-1;21757:12:0;;21677:100;;;1991:25:1;;;1979:2;1964:18;21677:100:0;1845:177:1;23389:313:0;;;;;;;;;;-1:-1:-1;23389:313:0;;;;;:::i;:::-;;:::i;18610:26::-;;;;;;;;;;-1:-1:-1;18610:26:0;;;;-1:-1:-1;;;;;18610:26:0;;;23710:128;;;;;;;;;;;;;:::i;18779:34::-;;;;;;;;;;-1:-1:-1;18779:34:0;;;;-1:-1:-1;;;;;18779:34:0;;;21586:83;;;;;;;;;;-1:-1:-1;21652:9:0;;21586:83;;21652:9;;;;2857:36:1;;2845:2;2830:18;21586:83:0;2715:184:1;24934:122:0;;;;;;;;;;-1:-1:-1;24934:122:0;;;;;:::i;:::-;;:::i;:::-;;22063:218;;;;;;;;;;-1:-1:-1;22063:218:0;;;;;:::i;:::-;;:::i;24623:124::-;;;;;;;;;;-1:-1:-1;24623:124:0;;;;;:::i;:::-;;:::i;26730:204::-;;;;;;;;;;-1:-1:-1;26730:204:0;;;;;:::i;:::-;;:::i;18643:45::-;;;;;;;;;;-1:-1:-1;18643:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;27877:280;;;;;;;;;;-1:-1:-1;27877:280:0;;;;;:::i;:::-;;:::i;28177:106::-;;;;;;;;;;-1:-1:-1;28177:106:0;;;;;:::i;:::-;;:::i;18911:33::-;;;;;;;;;;-1:-1:-1;18911:33:0;;;;-1:-1:-1;;;18911:33:0;;;;;;27717:139;;;;;;;;;;-1:-1:-1;27717:139:0;;;;;:::i;:::-;;:::i;19091:50::-;;;;;;;;;;-1:-1:-1;19091:50:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;9643:148;;;;;;;;;;;;;:::i;21785:119::-;;;;;;;;;;-1:-1:-1;21785:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;21878:18:0;21851:7;21878:18;;;:9;:18;;;;;;;21785:119;19205:33;;;;;;;;;;;;;;;;9418:79;;;;;;;;;;-1:-1:-1;9456:7:0;9483:6;-1:-1:-1;;;;;9483:6:0;9418:79;;21491:87;;;;;;;;;;;;;:::i;22289:269::-;;;;;;;;;;-1:-1:-1;22289:269:0;;;;;:::i;:::-;;:::i;23214:167::-;;;;;;;;;;-1:-1:-1;23214:167:0;;;;;:::i;:::-;;:::i;24755:171::-;;;;;;;;;;-1:-1:-1;24755:171:0;;;;;:::i;:::-;;:::i;18820:26::-;;;;;;;;;;-1:-1:-1;18820:26:0;;;;-1:-1:-1;;;;;18820:26:0;;;19014:45;;;;;;;;;;-1:-1:-1;19014:45:0;;;;-1:-1:-1;;;;;19014:45:0;;;18695:39;;;;;;;;;;;;;;;;18951:37;;;;;;;;;;-1:-1:-1;18951:37:0;;;;-1:-1:-1;;;18951:37:0;;;;;;21912:143;;;;;;;;;;-1:-1:-1;21912:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;22020:18:0;;;21993:7;22020:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;21912:143;26942:126;;;;;;;;;;-1:-1:-1;26942:126:0;;;;;:::i;:::-;;:::i;19166:32::-;;;;;;;;;;;;;;;;9799:244;;;;;;;;;;-1:-1:-1;9799:244:0;;;;;:::i;:::-;;:::i;21400:83::-;21437:13;21470:5;21463:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21400:83;:::o;23846:769::-;23945:22;9552:6;;-1:-1:-1;;;;;9552:6:0;428:10;9552:22;9544:67;;;;-1:-1:-1;;;9544:67:0;;;;;;;:::i;:::-;;;;;;;;;23980:28:::1;24023:16;23980:60;;24087:16;-1:-1:-1::0;;;;;24087:24:0::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;24069:53:0::1;;24131:4;24138:16;-1:-1:-1::0;;;;;24138:22:0::1;;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;24069:104;::::0;-1:-1:-1;;;;;;24069:104:0::1;::::0;;;;;;-1:-1:-1;;;;;6139:15:1;;;24069:104:0::1;::::0;::::1;6121:34:1::0;6191:15;;6171:18;;;6164:43;6255:8;6243:21;;6223:18;;;6216:49;6056:18;;24069:104:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;24052:121:::0;-1:-1:-1;;;;;;24189:28:0;::::1;24186:238;;24303:16;-1:-1:-1::0;;;;;24303:24:0::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;24285:74:0::1;;24368:4;24375:16;-1:-1:-1::0;;;;;24375:22:0::1;;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;24285:127;::::0;-1:-1:-1;;;;;;24285:127:0::1;::::0;;;;;;-1:-1:-1;;;;;6139:15:1;;;24285:127:0::1;::::0;::::1;6121:34:1::0;6191:15;;6171:18;;;6164:43;6255:8;6243:21;;6223:18;;;6216:49;6056:18;;24285:127:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;24268:144;;24186:238;24434:11;:28:::0;;-1:-1:-1;;;;;24434:28:0;;::::1;-1:-1:-1::0;;;;;;24434:28:0;;::::1;::::0;::::1;::::0;;;24496:15:::1;:34:::0;;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;;24434:11:::1;24566:34:::0;;;:12:::1;:34;::::0;;;;:41;;-1:-1:-1;;24566:41:0::1;24434:28:::0;24566:41:::1;::::0;;24448:14;23846:769;-1:-1:-1;;23846:769:0:o;22566:161::-;22641:4;22658:39;428:10;22681:7;22690:6;22658:8;:39::i;:::-;-1:-1:-1;22715:4:0;22566:161;;;;;:::o;23389:313::-;23487:4;23504:36;23514:6;23522:9;23533:6;23504:9;:36::i;:::-;-1:-1:-1;23551:121:0;23560:6;428:10;23582:89;23620:6;23582:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;23582:19:0;;;;;;:11;:19;;;;;;;;428:10;23582:33;;;;;;;;;;:37;:89::i;:::-;23551:8;:121::i;:::-;-1:-1:-1;23690:4:0;23389:313;;;;;;:::o;23710:128::-;23817:11;;-1:-1:-1;;;;;23817:11:0;23763:7;21878:18;;;:9;:18;;;;;;23790:12;;:40;;:16;:40::i;:::-;23783:47;;23710:128;:::o;24934:122::-;9552:6;;-1:-1:-1;;;;;9552:6:0;428:10;9552:22;9544:67;;;;-1:-1:-1;;;9544:67:0;;;;;;;:::i;:::-;25013:25:::1;:35:::0;;;::::1;;-1:-1:-1::0;;;25013:35:0::1;-1:-1:-1::0;;;;25013:35:0;;::::1;::::0;;;::::1;::::0;;24934:122::o;22063:218::-;428:10;22151:4;22200:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;22200:34:0;;;;;;;;;;22151:4;;22168:83;;22191:7;;22200:50;;22239:10;22200:38;:50::i;24623:124::-;9552:6;;-1:-1:-1;;;;;9552:6:0;428:10;9552:22;9544:67;;;;-1:-1:-1;;;9544:67:0;;;;;;;:::i;:::-;24705:23:::1;:34:::0;24623:124::o;26730:204::-;9552:6;;-1:-1:-1;;;;;9552:6:0;428:10;9552:22;9544:67;;;;-1:-1:-1;;;9544:67:0;;;;;;;:::i;:::-;26837:17:::1;:38:::0;;;;26886:18:::1;:40:::0;26730:204::o;27877:280::-;9552:6;;-1:-1:-1;;;;;9552:6:0;428:10;9552:22;9544:67;;;;-1:-1:-1;;;9544:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;27959:21:0;::::1;27951:67;;;::::0;-1:-1:-1;;;27951:67:0;;6478:2:1;27951:67:0::1;::::0;::::1;6460:21:1::0;6517:2;6497:18;;;6490:30;6556:34;6536:18;;;6529:62;-1:-1:-1;;;6607:18:1;;;6600:31;6648:19;;27951:67:0::1;6276:397:1::0;27951:67:0::1;428:10:::0;28029:23:::1;::::0;;;:9:::1;:23;::::0;;;;:33;;28056:6;;28029:23;:33:::1;::::0;28056:6;;28029:33:::1;:::i;:::-;;;;;;;;28089:6;28073:12;;:22;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;28111:38:0::1;::::0;1991:25:1;;;-1:-1:-1;;;;;28111:38:0;::::1;::::0;28128:1:::1;::::0;-1:-1:-1;;;;;;;;;;;28111:38:0;1979:2:1;1964:18;28111:38:0::1;;;;;;;27877:280:::0;;:::o;28177:106::-;28253:11;;28225:50;;28240:10;;-1:-1:-1;;;;;28253:11:0;28268:6;28225:14;:50::i;:::-;;28177:106;:::o;27717:139::-;9552:6;;-1:-1:-1;;;;;9552:6:0;428:10;9552:22;9544:67;;;;-1:-1:-1;;;9544:67:0;;;;;;;:::i;:::-;27804:22:::1;:44:::0;;-1:-1:-1;;;;;;27804:44:0::1;-1:-1:-1::0;;;;;27804:44:0;;;::::1;::::0;;;::::1;::::0;;27717:139::o;9643:148::-;9552:6;;-1:-1:-1;;;;;9552:6:0;428:10;9552:22;9544:67;;;;-1:-1:-1;;;9544:67:0;;;;;;;:::i;:::-;9750:1:::1;9734:6:::0;;9713:40:::1;::::0;-1:-1:-1;;;;;9734:6:0;;::::1;::::0;9713:40:::1;::::0;9750:1;;9713:40:::1;9781:1;9764:19:::0;;-1:-1:-1;;;;;;9764:19:0::1;::::0;;9643:148::o;21491:87::-;21530:13;21563:7;21556:14;;;;;:::i;22289:269::-;22382:4;22399:129;428:10;22422:7;22431:96;22470:15;22431:96;;;;;;;;;;;;;;;;;428:10;22431:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;22431:34:0;;;;;;;;;;;;:38;:96::i;23214:167::-;23292:4;23309:42;428:10;23333:9;23344:6;23309:9;:42::i;24755:171::-;9552:6;;-1:-1:-1;;;;;9552:6:0;428:10;9552:22;9544:67;;;;-1:-1:-1;;;9544:67:0;;;;;;;:::i;:::-;24832:21:::1;:32:::0;;;::::1;;-1:-1:-1::0;;;24832:32:0::1;-1:-1:-1::0;;;;24832:32:0;;::::1;;::::0;;24880:38:::1;::::0;::::1;::::0;::::1;::::0;24856:8;1818:14:1;1811:22;1793:41;;1781:2;1766:18;;1653:187;24880:38:0::1;;;;;;;;24755:171:::0;:::o;26942:126::-;9552:6;;-1:-1:-1;;;;;9552:6:0;428:10;9552:22;9544:67;;;;-1:-1:-1;;;9544:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;27024:26:0;;;::::1;;::::0;;;:17:::1;:26;::::0;;;;:36;;-1:-1:-1;;27024:36:0::1;::::0;::::1;;::::0;;;::::1;::::0;;26942:126::o;9799:244::-;9552:6;;-1:-1:-1;;;;;9552:6:0;428:10;9552:22;9544:67;;;;-1:-1:-1;;;9544:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9888:22:0;::::1;9880:73;;;::::0;-1:-1:-1;;;9880:73:0;;7142:2:1;9880:73:0::1;::::0;::::1;7124:21:1::0;7181:2;7161:18;;;7154:30;7220:34;7200:18;;;7193:62;-1:-1:-1;;;7271:18:1;;;7264:36;7317:19;;9880:73:0::1;6940:402:1::0;9880:73:0::1;9990:6;::::0;;9969:38:::1;::::0;-1:-1:-1;;;;;9969:38:0;;::::1;::::0;9990:6;::::1;::::0;9969:38:::1;::::0;::::1;10018:6;:17:::0;;-1:-1:-1;;;;;;10018:17:0::1;-1:-1:-1::0;;;;;10018:17:0;;;::::1;::::0;;;::::1;::::0;;9799:244::o;22735:337::-;-1:-1:-1;;;;;22828:19:0;;22820:68;;;;-1:-1:-1;;;22820:68:0;;7549:2:1;22820:68:0;;;7531:21:1;7588:2;7568:18;;;7561:30;7627:34;7607:18;;;7600:62;-1:-1:-1;;;7678:18:1;;;7671:34;7722:19;;22820:68:0;7347:400:1;22820:68:0;-1:-1:-1;;;;;22907:21:0;;22899:68;;;;-1:-1:-1;;;22899:68:0;;7954:2:1;22899:68:0;;;7936:21:1;7993:2;7973:18;;;7966:30;8032:34;8012:18;;;8005:62;-1:-1:-1;;;8083:18:1;;;8076:32;8125:19;;22899:68:0;7752:398:1;22899:68:0;-1:-1:-1;;;;;22980:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;23032:32;;1991:25:1;;;23032:32:0;;1964:18:1;23032:32:0;;;;;;;22735:337;;;:::o;28318:1274::-;28405:4;-1:-1:-1;;;;;28430:20:0;;28422:70;;;;-1:-1:-1;;;28422:70:0;;8357:2:1;28422:70:0;;;8339:21:1;8396:2;8376:18;;;8369:30;8435:34;8415:18;;;8408:62;-1:-1:-1;;;8486:18:1;;;8479:35;8531:19;;28422:70:0;8155:401:1;28422:70:0;-1:-1:-1;;;;;28511:23:0;;28503:71;;;;-1:-1:-1;;;28503:71:0;;8763:2:1;28503:71:0;;;8745:21:1;8802:2;8782:18;;;8775:30;8841:34;8821:18;;;8814:62;-1:-1:-1;;;8892:18:1;;;8885:33;8935:19;;28503:71:0;8561:399:1;28503:71:0;28590:16;;-1:-1:-1;;;28590:16:0;;;;28587:998;;;28630:41;28645:6;28653:9;28664:6;28630:14;:41::i;:::-;28623:48;;;;28587:998;28773:4;28724:28;21878:18;;;:9;:18;;;;;;28849:23;;28825:47;;;;;;;28905:44;;-1:-1:-1;28933:16:0;;-1:-1:-1;;;28933:16:0;;;;28932:17;28905:44;:69;;;;-1:-1:-1;28953:21:0;;-1:-1:-1;;;28953:21:0;;;;28905:69;28901:280;;;29012:25;;-1:-1:-1;;;29012:25:0;;;;29009:97;;;29083:23;;29060:46;;29009:97;29125:36;29140:20;29125:14;:36::i;:::-;29217:53;;;;;;;;;;;-1:-1:-1;;;29217:53:0;;;;;;;;-1:-1:-1;;;;;29217:17:0;;-1:-1:-1;29217:17:0;;;:9;:17;;;;;;;;:53;;29239:6;;29217:21;:53::i;:::-;-1:-1:-1;;;;;29197:17:0;;;;;;:9;:17;;;;;;;;:73;;;;29308:17;:25;;;;;;;;;:57;;-1:-1:-1;;;;;;29337:28:0;;;;;;:17;:28;;;;;;;;29308:57;29307:105;;29378:34;29386:6;29394:9;29405:6;29378:7;:34::i;:::-;29307:105;;;29369:6;29307:105;-1:-1:-1;;;;;29450:20:0;;;;;;:9;:20;;;;;;29285:127;;-1:-1:-1;29450:37:0;;29285:127;29450:24;:37::i;:::-;-1:-1:-1;;;;;29427:20:0;;;;;;;:9;:20;;;;;;;:60;;;;29507:40;;;;;;-1:-1:-1;;;;;;;;;;;29507:40:0;;;29535:11;1991:25:1;;1979:2;1964:18;;1845:177;29507:40:0;;;;;;;;29569:4;29562:11;;;;;;;1614:192;1700:7;1736:12;1728:6;;;;1720:29;;;;-1:-1:-1;;;1720:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1760:9:0;1772:5;1776:1;1772;:5;:::i;:::-;1760:17;1614:192;-1:-1:-1;;;;;1614:192:0:o;1470:136::-;1528:7;1555:43;1559:1;1562;1555:43;;;;;;;;;;;;;;;;;:3;:43::i;1281:181::-;1339:7;;1371:5;1375:1;1371;:5;:::i;:::-;1359:17;;1400:1;1395;:6;;1387:46;;;;-1:-1:-1;;;1387:46:0;;9300:2:1;1387:46:0;;;9282:21:1;9339:2;9319:18;;;9312:30;9378:29;9358:18;;;9351:57;9425:18;;1387:46:0;9098:351:1;25064:330:0;25194:53;;;;;;;;;;;-1:-1:-1;;;25194:53:0;;;;;;;;-1:-1:-1;;;;;25194:17:0;;25157:4;25194:17;;;:9;:17;;;;;;;:53;;25216:6;;25194:21;:53::i;:::-;-1:-1:-1;;;;;25174:17:0;;;;;;;:9;:17;;;;;;:73;;;;25281:20;;;;;;;:32;;25306:6;25281:24;:32::i;:::-;-1:-1:-1;;;;;25258:20:0;;;;;;;:9;:20;;;;;;;:55;;;;25329:35;;;;;;-1:-1:-1;;;;;;;;;;;25329:35:0;;;25357:6;1991:25:1;;1979:2;1964:18;;1845:177;25329:35:0;;;;;;;;-1:-1:-1;25382:4:0;25064:330;;;;;:::o;25402:273::-;19561:16;:23;;-1:-1:-1;;;;19561:23:0;-1:-1:-1;;;19561:23:0;;;25474:25:::1;25491:7:::0;25474:16:::1;:25::i;:::-;25535:21;25572:18:::0;;25569:96:::1;;25626:22;::::0;25605:60:::1;::::0;-1:-1:-1;;;;;25626:22:0::1;25650:14:::0;25605:20:::1;:60::i;:::-;-1:-1:-1::0;;19607:16:0;:24;;-1:-1:-1;;;;19607:24:0;;;25402:273::o;27076:616::-;-1:-1:-1;;;;;27227:20:0;;27162:7;27227:20;;;:12;:20;;;;;;27162:7;;27227:20;;27224:227;;;27276:40;27310:5;27276:29;27287:17;;27276:6;:10;;:29;;;;:::i;:::-;:33;;:40::i;:::-;27264:52;;27224:227;;;-1:-1:-1;;;;;27346:23:0;;;;;;:12;:23;;;;;;;;27343:108;;;27398:41;27433:5;27398:30;27409:18;;27398:6;:10;;:30;;;;:::i;:41::-;27386:53;;27343:108;27474:13;;27471:173;;27549:4;27531:24;;;;:9;:24;;;;;;:39;;27560:9;27531:28;:39::i;:::-;27522:4;27504:24;;;;:9;:24;;;;;;;:66;;;;27590:42;;-1:-1:-1;;;;;27590:42:0;;;-1:-1:-1;;;;;;;;;;;27590:42:0;;;27622:9;1991:25:1;;1979:2;1964:18;;1845:177;27590:42:0;;;;;;;;27471:173;27663:21;:6;27674:9;27663:10;:21::i;25687:1024::-;25837:16;;;25851:1;25837:16;;;;;;;;25813:21;;25837:16;;;;;;;;;;-1:-1:-1;25837:16:0;25813:40;;25882:4;25864;25869:1;25864:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;25864:23:0;;;:7;;;;;;;;;;:23;;;;25908:15;;:23;;;-1:-1:-1;;;25908:23:0;;;;:15;;;;;:21;;:23;;;;;25864:7;;25908:23;;;;;:15;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25898:4;25903:1;25898:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;25898:33:0;;;:7;;;;;;;;;:33;25976:15;;25944:62;;25961:4;;25976:15;25994:11;25944:8;:62::i;:::-;26019:48;26070:460;;;;;;;;26129:4;26134:1;26129:7;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;26070:460:0;;;;;26161:4;26166:1;26161:7;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;26070:460:0;;;26188:8;;-1:-1:-1;;;26188:8:0;;;;26070:460;;;;26292:4;26070:460;;;;;;26322:21;:15;26340:3;26322:21;:::i;:::-;26070:460;;;;;;;;;-1:-1:-1;26070:460:0;;;;;;;;;;;;;;;26610:15;;:40;;-1:-1:-1;;;26610:40:0;;10003:13:1;;-1:-1:-1;;;;;9999:22:1;;;26610:40:0;;;9981:41:1;10070:17;;;10064:24;10060:33;;10038:20;;;10031:63;10142:17;;;10136:24;10162:8;10132:39;10110:20;;;10103:69;10220:17;;;10214:24;10210:33;;10188:20;;;10181:63;10300:4;10288:17;;10282:24;10260:20;;;10253:54;9961:3;10351:17;;10345:24;10323:20;;;10316:54;10426:4;10414:17;;10408:24;10386:20;;;10379:54;10493:4;10481:17;;10475:24;10471:33;;10449:20;;;10442:63;26019:511:0;;-1:-1:-1;26610:15:0;;:32;;9915:19:1;;26610:40:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;26668:35;26685:11;26698:4;26668:35;;;;;;;:::i;:::-;;;;;;;;25742:969;;25687:1024;:::o;23080:126::-;23172:26;;-1:-1:-1;;;;;23172:18:0;;;:26;;;;;23191:6;;23172:26;;;;23191:6;23172:18;:26;;;;;;;;;;;;;;;;;;;;;23080:126;;:::o;1814:250::-;1872:7;1896:1;1901;1896:6;1892:47;;-1:-1:-1;1926:1:0;1919:8;;1892:47;1951:9;1963:5;1967:1;1963;:5;:::i;:::-;1951:17;-1:-1:-1;1996:1:0;1987:5;1991:1;1951:17;1987:5;:::i;:::-;:10;1979:56;;;;-1:-1:-1;;;1979:56:0;;12036:2:1;1979:56:0;;;12018:21:1;12075:2;12055:18;;;12048:30;12114:34;12094:18;;;12087:62;-1:-1:-1;;;12165:18:1;;;12158:31;12206:19;;1979:56:0;11834:397:1;2072:132:0;2130:7;2157:39;2161:1;2164;2157:39;;;;;;;;;;;;;;;;;2298:7;2333:12;2326:5;2318:28;;;;-1:-1:-1;;;2318:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2357:9:0;2369:5;2373:1;2369;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:417::-;770:6;778;831:2;819:9;810:7;806:23;802:32;799:52;;;847:1;844;837:12;799:52;886:9;873:23;905:31;930:5;905:31;:::i;:::-;955:5;-1:-1:-1;1012:2:1;997:18;;984:32;1060:8;1047:22;;1035:35;;1025:63;;1084:1;1081;1074:12;1025:63;1107:7;1097:17;;;703:417;;;;;:::o;1333:315::-;1401:6;1409;1462:2;1450:9;1441:7;1437:23;1433:32;1430:52;;;1478:1;1475;1468:12;1430:52;1517:9;1504:23;1536:31;1561:5;1536:31;:::i;:::-;1586:5;1638:2;1623:18;;;;1610:32;;-1:-1:-1;;;1333:315:1:o;2027:456::-;2104:6;2112;2120;2173:2;2161:9;2152:7;2148:23;2144:32;2141:52;;;2189:1;2186;2179:12;2141:52;2228:9;2215:23;2247:31;2272:5;2247:31;:::i;:::-;2297:5;-1:-1:-1;2354:2:1;2339:18;;2326:32;2367:33;2326:32;2367:33;:::i;:::-;2027:456;;2419:7;;-1:-1:-1;;;2473:2:1;2458:18;;;;2445:32;;2027:456::o;2904:160::-;2969:20;;3025:13;;3018:21;3008:32;;2998:60;;3054:1;3051;3044:12;2998:60;2904:160;;;:::o;3069:180::-;3125:6;3178:2;3166:9;3157:7;3153:23;3149:32;3146:52;;;3194:1;3191;3184:12;3146:52;3217:26;3233:9;3217:26;:::i;3254:180::-;3313:6;3366:2;3354:9;3345:7;3341:23;3337:32;3334:52;;;3382:1;3379;3372:12;3334:52;-1:-1:-1;3405:23:1;;3254:180;-1:-1:-1;3254:180:1:o;3439:248::-;3507:6;3515;3568:2;3556:9;3547:7;3543:23;3539:32;3536:52;;;3584:1;3581;3574:12;3536:52;-1:-1:-1;;3607:23:1;;;3677:2;3662:18;;;3649:32;;-1:-1:-1;3439:248:1:o;3692:247::-;3751:6;3804:2;3792:9;3783:7;3779:23;3775:32;3772:52;;;3820:1;3817;3810:12;3772:52;3859:9;3846:23;3878:31;3903:5;3878:31;:::i;4168:388::-;4236:6;4244;4297:2;4285:9;4276:7;4272:23;4268:32;4265:52;;;4313:1;4310;4303:12;4265:52;4352:9;4339:23;4371:31;4396:5;4371:31;:::i;:::-;4421:5;-1:-1:-1;4478:2:1;4463:18;;4450:32;4491:33;4450:32;4491:33;:::i;4561:315::-;4626:6;4634;4687:2;4675:9;4666:7;4662:23;4658:32;4655:52;;;4703:1;4700;4693:12;4655:52;4742:9;4729:23;4761:31;4786:5;4761:31;:::i;:::-;4811:5;-1:-1:-1;4835:35:1;4866:2;4851:18;;4835:35;:::i;:::-;4825:45;;4561:315;;;;;:::o;4881:380::-;4960:1;4956:12;;;;5003;;;5024:61;;5078:4;5070:6;5066:17;5056:27;;5024:61;5131:2;5123:6;5120:14;5100:18;5097:38;5094:161;;5177:10;5172:3;5168:20;5165:1;5158:31;5212:4;5209:1;5202:15;5240:4;5237:1;5230:15;5094:161;;4881:380;;;:::o;5266:356::-;5468:2;5450:21;;;5487:18;;;5480:30;5546:34;5541:2;5526:18;;5519:62;5613:2;5598:18;;5266:356::o;5627:251::-;5697:6;5750:2;5738:9;5729:7;5725:23;5721:32;5718:52;;;5766:1;5763;5756:12;5718:52;5798:9;5792:16;5817:31;5842:5;5817:31;:::i;6678:127::-;6739:10;6734:3;6730:20;6727:1;6720:31;6770:4;6767:1;6760:15;6794:4;6791:1;6784:15;6810:125;6875:9;;;6896:10;;;6893:36;;;6909:18;;:::i;8965:128::-;9032:9;;;9053:11;;;9050:37;;;9067:18;;:::i;9586:127::-;9647:10;9642:3;9638:20;9635:1;9628:31;9678:4;9675:1;9668:15;9702:4;9699:1;9692:15;10516:184;10586:6;10639:2;10627:9;10618:7;10614:23;10610:32;10607:52;;;10655:1;10652;10645:12;10607:52;-1:-1:-1;10678:16:1;;10516:184;-1:-1:-1;10516:184:1:o;10705:729::-;10875:4;10923:2;10912:9;10908:18;10953:6;10942:9;10935:25;10979:2;11017;11012;11001:9;10997:18;10990:30;11040:6;11075;11069:13;11106:6;11098;11091:22;11144:2;11133:9;11129:18;11122:25;;11182:2;11174:6;11170:15;11156:29;;11203:1;11213:195;11227:6;11224:1;11221:13;11213:195;;;11292:13;;-1:-1:-1;;;;;11288:39:1;11276:52;;11383:15;;;;11348:12;;;;11324:1;11242:9;11213:195;;;-1:-1:-1;11425:3:1;;10705:729;-1:-1:-1;;;;;;;10705:729:1:o;11439:168::-;11512:9;;;11543;;11560:15;;;11554:22;;11540:37;11530:71;;11581:18;;:::i;11612:217::-;11652:1;11678;11668:132;;11722:10;11717:3;11713:20;11710:1;11703:31;11757:4;11754:1;11747:15;11785:4;11782:1;11775:15;11668:132;-1:-1:-1;11814:9:1;;11612:217::o

Swarm Source

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