ETH Price: $3,004.83 (+4.30%)
Gas: 2 Gwei

Token

Ichigo (ICHIGO)
 

Overview

Max Total Supply

1,000,000,000 ICHIGO

Holders

42

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
9,848,614.664850347482860028 ICHIGO

Value
$0.00
0x4ad571c0355f78f48a513bcd4625cdf97c4452cd
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:
Ichigo

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 1 : Ichigo.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.19;

interface IERC20 {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender) external view returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

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

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

interface IUniswapV2Pair {
    function getReserves()
        external
        view
        returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast);
}

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

    function WETH() external pure returns (address);

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

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;
}

interface IERC20Metadata is IERC20 {
    /**
     * @dev Returns the name of the token.
     */
    function name() external view returns (string memory);

    /**
     * @dev Returns the decimals places of the token.
     */
    function decimals() external view returns (uint8);

    /**
     * @dev Returns the symbol of the token.
     */
    function symbol() external view returns (string memory);
}

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

abstract contract Ownable is Context {
    address private _owner;

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

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

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        _checkOwner();
        _;
    }

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

    /**
     * @dev Throws if the sender is not the owner.
     */
    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(
            newOwner != address(0),
            "Ownable: new owner is the zero address"
        );
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Internal function without access restriction.
     */
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    /**
     * @dev Returns the symbol of the token, usually a shorter version of the
     * name.
     */
    function symbol() external view virtual override returns (string memory) {
        return _symbol;
    }

    /**
     * @dev Returns the name of the token.
     */
    function name() external view virtual override returns (string memory) {
        return _name;
    }

    /**
     * @dev See {IERC20-balanceOf}.
     */
    function balanceOf(
        address account
    ) public view virtual override returns (uint256) {
        return _balances[account];
    }

    /**
     * @dev Returns the number of decimals used to get its user representation.
     * For example, if `decimals` equals `2`, a balance of `505` tokens should
     * be displayed to a user as `5.05` (`505 / 10 ** 2`).
     *
     * Tokens usually opt for a value of 18, imitating the relationship between
     * Ether and Wei. This is the value {ERC20} uses, unless this function is
     * overridden;
     *
     * NOTE: This information is only used for _display_ purposes: it in
     * no way affects any of the arithmetic of the contract, including
     * {IERC20-balanceOf} and {IERC20-transfer}.
     */
    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

    /**
     * @dev See {IERC20-totalSupply}.
     */
    function totalSupply() external view virtual override returns (uint256) {
        return _totalSupply;
    }

    /**
     * @dev See {IERC20-allowance}.
     */
    function allowance(
        address owner,
        address spender
    ) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

    /**
     * @dev See {IERC20-transfer}.
     *
     * Requirements:
     *
     * - `to` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function transfer(
        address to,
        uint256 amount
    ) external virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

    /**
     * @dev See {IERC20-approve}.
     *
     * NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on
     * `transferFrom`. This is semantically equivalent to an infinite approval.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function approve(
        address spender,
        uint256 amount
    ) external virtual override returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, amount);
        return true;
    }

    /**
     * @dev See {IERC20-transferFrom}.
     *
     * Emits an {Approval} event indicating the updated allowance. This is not
     * required by the EIP. See the note at the beginning of {ERC20}.
     *
     * NOTE: Does not update the allowance if the current allowance
     * is the maximum `uint256`.
     *
     * Requirements:
     *
     * - `from` and `to` cannot be the zero address.
     * - `from` must have a balance of at least `amount`.
     * - the caller must have allowance for ``from``'s tokens of at least
     * `amount`.
     */
    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) external virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    /**
     * @dev Atomically decreases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {IERC20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     * - `spender` must have allowance for the caller of at least
     * `subtractedValue`.
     */
    function decreaseAllowance(
        address spender,
        uint256 subtractedValue
    ) external virtual returns (bool) {
        address owner = _msgSender();
        uint256 currentAllowance = allowance(owner, spender);
        require(
            currentAllowance >= subtractedValue,
            "ERC20: decreased allowance below zero"
        );
        unchecked {
            _approve(owner, spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    /**
     * @dev Atomically increases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {IERC20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function increaseAllowance(
        address spender,
        uint256 addedValue
    ) external virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

    /** @dev Creates `amount` tokens and assigns them to `account`, increasing
     * the total supply.
     *
     * Emits a {Transfer} event with `from` set to the zero address.
     *
     * Requirements:
     *
     * - `account` cannot be the zero address.
     */
    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _totalSupply += amount;
        unchecked {
            // Overflow not possible: balance + amount is at most totalSupply + amount, which is checked above.
            _balances[account] += amount;
        }
        emit Transfer(address(0), account, amount);
    }

    /**
     * @dev Destroys `amount` tokens from `account`, reducing the
     * total supply.
     *
     * Emits a {Transfer} event with `to` set to the zero address.
     *
     * Requirements:
     *
     * - `account` cannot be the zero address.
     * - `account` must have at least `amount` tokens.
     */
    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
            // Overflow not possible: amount <= accountBalance <= totalSupply.
            _totalSupply -= amount;
        }

        emit Transfer(account, address(0), amount);
    }

    /**
     * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.
     *
     * This internal function is equivalent to `approve`, and can be used to
     * e.g. set automatic allowances for certain subsystems, etc.
     *
     * Emits an {Approval} event.
     *
     * Requirements:
     *
     * - `owner` cannot be the zero address.
     * - `spender` cannot be the zero address.
     */
    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        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);
    }

    /**
     * @dev Updates `owner` s allowance for `spender` based on spent `amount`.
     *
     * Does not update the allowance amount in case of infinite allowance.
     * Revert if not enough allowance is available.
     *
     * Might emit an {Approval} event.
     */
    function _spendAllowance(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(
                currentAllowance >= amount,
                "ERC20: insufficient allowance"
            );
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        uint256 fromBalance = _balances[from];
        require(
            fromBalance >= amount,
            "ERC20: transfer amount exceeds balance"
        );
        unchecked {
            _balances[from] = fromBalance - amount;
            // Overflow not possible: the sum of all balances is capped by totalSupply, and the sum is preserved by
            // decrementing then incrementing.
            _balances[to] += amount;
        }

        emit Transfer(from, to, amount);
    }
}

contract Ichigo is ERC20, Ownable {
    address public marketingWallet = 0x880c0aa9ea3091B0C63E0d0c5B2342926e12Ab27;
    address public devWallet = 0x880c0aa9ea3091B0C63E0d0c5B2342926e12Ab27;

    uint256 public taxTotalBuy = 0;

    uint256 public feeLiquidity;
    uint256 public feeMarketing = 0;
    uint256 public feeDev = 0;
    uint256 public taxTotal = feeLiquidity + feeMarketing + feeDev;

    uint256 public maxWalletSize;
    bool inSwapAndLiquify;
    IUniswapV2Router02 public immutable uniswapV2Router;
    address public immutable uniswapV2Pair;

    uint256 public _swapbackThreshold = 150;
   
    mapping(address => bool) private _isExcludedFromFee;
    
    bool public open;

    modifier lockTheSwap() {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }

    constructor() ERC20("Ichigo", "ICHIGO") {
        uint256 startSupply = 1e9 * 10 ** decimals();
        maxWalletSize = startSupply;
        _mint(msg.sender, (startSupply));
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        uniswapV2Router = _uniswapV2Router;

        _isExcludedFromFee[address(uniswapV2Router)] = true;
        _isExcludedFromFee[msg.sender] = true;
        
        _approve(msg.sender, address(uniswapV2Router), type(uint256).max);
        _approve(address(this), address(uniswapV2Router), type(uint256).max);
    }

    function airdrop(address[] calldata recipients, uint256[] calldata amounts)
        external
        onlyOwner
    {
        require(
            recipients.length == amounts.length
        );
        for (uint256 i = 0; i < recipients.length; i++) {
            _transfer(msg.sender, recipients[i], amounts[i]);
        }
    }

    function openTrade() external onlyOwner {
        open = true;
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal override {
        if (
            _isExcludedFromFee[from] ||
            _isExcludedFromFee[to] ||
            inSwapAndLiquify
        ) {
            super._transfer(from, to, amount);
        } else {
            require(open, "Not open yet");
            uint taxAmount;
            if (to == uniswapV2Pair) {
                // Sell
                uint256 bal = balanceOf(address(this));
                uint256 limit = balanceOf(uniswapV2Pair) * _swapbackThreshold / 10000;
                if (
                    bal >= limit
                ) {
                    if (bal >= 3 * limit) bal = 3 * limit;
                    _swapAndLiquify(bal);
                }
                taxAmount = amount * taxTotal / 10000;
            } else if (from == uniswapV2Pair) {
                taxAmount = amount * taxTotalBuy / 10000;
                require(
                    balanceOf(to) + amount - taxAmount <= maxWalletSize,
                    "ERC20: transfer amount exceeds max wallet amount"
                );
            } else {
                require(
                    balanceOf(to) + amount <= maxWalletSize,
                    "ERC20: transfer amount exceeds max wallet amount"
                );
            }
            super._transfer(from, to, amount - taxAmount);
            if (taxAmount > 0) {
                super._transfer(from, address(this), taxAmount);
            }
        }
    }

    function _swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap {
        uint256 _taxTotal = taxTotal;
        if (_taxTotal == 0) return;
        uint256 taxWithoutHalfLP = _taxTotal - feeLiquidity / 2;
        uint256 toSell = contractTokenBalance * taxWithoutHalfLP / _taxTotal;

        _swapTokensForEth(toSell);
        uint256 newBalance = address(this).balance;

        uint256 toDev = newBalance * feeDev / taxWithoutHalfLP;
        uint256 toMarketing = newBalance * feeMarketing / taxWithoutHalfLP;
        if (feeLiquidity > 0) {
            _addLiquidity(
                contractTokenBalance - toSell,
                newBalance - toDev - toMarketing
            );
        }
        if (toMarketing > 0) {
            payable(marketingWallet).transfer(toMarketing);
        }

        if (address(this).balance > 0) {
            payable(devWallet).transfer(address(this).balance);
        }
    }

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

    function _addLiquidity(
        uint256 tokenAmount,
        uint256 ethAmount
    ) private lockTheSwap {
        uniswapV2Router.addLiquidityETH{value: ethAmount}(
            address(this),
            tokenAmount,
            0,
            0,
            owner(),
            block.timestamp
        );
    }

    function updateSwapbackThreshold(uint256 newValue) public onlyOwner {
        _swapbackThreshold = newValue;
    }

    function updateMarketingWallet(address newWallet) public onlyOwner {
        marketingWallet = newWallet;
    }

    function updateDevWallet(address newWallet) public onlyOwner {
        devWallet = newWallet;
    }

    function setBuyTax(uint256 newValue) public onlyOwner {
        taxTotalBuy = newValue;
    }

    function excludeFromFees(address[] calldata addresses)
        public
        onlyOwner
    {
        for (uint256 i = 0; i < addresses.length; i++) {
            _isExcludedFromFee[addresses[i]] = true;
        }
    }

    function includeInFees(address[] calldata addresses)
        public
        onlyOwner
    {
        for (uint256 i = 0; i < addresses.length; i++) {
            _isExcludedFromFee[addresses[i]] = false;
        }
    }

    function setSellTax(
        uint256 _feeDev,
        uint256 _feeLiquidity,
        uint256 _feeMarketing
    ) public onlyOwner {
        feeDev = _feeDev;
        feeLiquidity = _feeLiquidity;
        feeMarketing = _feeMarketing;
        taxTotal = _feeDev + _feeLiquidity + _feeMarketing;
    }

    function setMaxWalletSize(uint256 _maxWalletSize) public onlyOwner {
        maxWalletSize = _maxWalletSize;
    }

    function saveETH() external onlyOwner {
        payable(owner()).transfer(address(this).balance);
    }

    function saveTokens(
        IERC20 tokenAddress,
        address walletAddress,
        uint256 amt
    ) external onlyOwner {
        uint256 bal = tokenAddress.balanceOf(address(this));
        IERC20(tokenAddress).transfer(
            walletAddress,
            amt > bal ? bal : amt
        );
    }

    receive() external payable {}
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":"_swapbackThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"recipients","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"airdrop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"devWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"feeDev","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeLiquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeMarketing","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"}],"name":"includeInFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"open","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"saveETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"tokenAddress","type":"address"},{"internalType":"address","name":"walletAddress","type":"address"},{"internalType":"uint256","name":"amt","type":"uint256"}],"name":"saveTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newValue","type":"uint256"}],"name":"setBuyTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxWalletSize","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_feeDev","type":"uint256"},{"internalType":"uint256","name":"_feeLiquidity","type":"uint256"},{"internalType":"uint256","name":"_feeMarketing","type":"uint256"}],"name":"setSellTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxTotal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxTotalBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newWallet","type":"address"}],"name":"updateDevWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newWallet","type":"address"}],"name":"updateMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newValue","type":"uint256"}],"name":"updateSwapbackThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c06040526006805473880c0aa9ea3091b0c63e0d0c5b2342926e12ab276001600160a01b0319918216811790925560078054909116909117905560006008819055600a819055600b8190556009546200005b9082906200055d565b6200006791906200055d565b600c556096600f553480156200007c57600080fd5b506040518060400160405280600681526020016549636869676f60d01b8152506040518060400160405280600681526020016549434849474f60d01b8152508160039081620000cc91906200061e565b506004620000db82826200061e565b505050620000f8620000f26200030260201b60201c565b62000306565b6000620001086012600a620007e7565b6200011890633b9aca00620007ff565b600d81905590506200012b338262000358565b6000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000183573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001a9919062000819565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021d919062000819565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200026b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000291919062000819565b6001600160a01b0390811660a052811660808190526000818152601060205260408082208054600160ff1991821681179092553380855292909320805490931617909155620002e3916000196200041f565b620002fa306080516000196200041f60201b60201c565b505062000844565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216620003b45760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064015b60405180910390fd5b8060026000828254620003c891906200055d565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6001600160a01b038316620004835760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401620003ab565b6001600160a01b038216620004e65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401620003ab565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111562000573576200057362000547565b92915050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620005a457607f821691505b602082108103620005c557634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200061957600081815260208120601f850160051c81016020861015620005f45750805b601f850160051c820191505b81811015620006155782815560010162000600565b5050505b505050565b81516001600160401b038111156200063a576200063a62000579565b62000652816200064b84546200058f565b84620005cb565b602080601f8311600181146200068a5760008415620006715750858301515b600019600386901b1c1916600185901b17855562000615565b600085815260208120601f198616915b82811015620006bb578886015182559484019460019091019084016200069a565b5085821015620006da5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600181815b808511156200072b5781600019048211156200070f576200070f62000547565b808516156200071d57918102915b93841c9390800290620006ef565b509250929050565b600082620007445750600162000573565b81620007535750600062000573565b81600181146200076c5760028114620007775762000797565b600191505062000573565b60ff8411156200078b576200078b62000547565b50506001821b62000573565b5060208310610133831016604e8410600b8410161715620007bc575081810a62000573565b620007c88383620006ea565b8060001904821115620007df57620007df62000547565b029392505050565b6000620007f860ff84168362000733565b9392505050565b808202811582820484141762000573576200057362000547565b6000602082840312156200082c57600080fd5b81516001600160a01b0381168114620007f857600080fd5b60805160a051611c0762000894600039600081816103ab01528181610f4d01528181610fa2015261103a0152600081816102a201528181611516015281816115ce01526116650152611c076000f3fe6080604052600436106102295760003560e01c80638f3fa86011610123578063b2bcf6b3116100ab578063ea2a48701161006f578063ea2a48701461066e578063f2fde38b14610684578063f45ac6af146106a4578063fb201b1d146106ba578063fcfff16f146106cf57600080fd5b8063b2bcf6b3146105d8578063ba802b3d146105ee578063dc1052e21461060e578063dd62ed3e1461062e578063ea1644d51461064e57600080fd5b806395d89b41116100f257806395d89b411461054d578063a457c2d714610562578063a9059cbb14610582578063aa962b02146105a2578063aacebbe3146105b857600080fd5b80638f3fa860146104e1578063923ffc14146104f757806392f42870146105175780639452e81a1461053757600080fd5b806349bd5a5e116101b15780637f2cbc2e116101755780637f2cbc2e14610458578063896f1a951461046e5780638da5cb5b146104835780638ea5220f146104a15780638f2076fd146104c157600080fd5b806349bd5a5e1461039957806367243482146103cd57806370a08231146103ed578063715018a61461042357806375f0a8741461043857600080fd5b80631816467f116101f85780631816467f146102fb5780631e02e0541461031d57806323b872dd1461033d578063313ce5671461035d578063395093511461037957600080fd5b806306fdde0314610235578063095ea7b3146102605780631694505e1461029057806318160ddd146102dc57600080fd5b3661023057005b600080fd5b34801561024157600080fd5b5061024a6106e9565b6040516102579190611740565b60405180910390f35b34801561026c57600080fd5b5061028061027b3660046117a3565b61077b565b6040519015158152602001610257565b34801561029c57600080fd5b506102c47f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610257565b3480156102e857600080fd5b506002545b604051908152602001610257565b34801561030757600080fd5b5061031b6103163660046117cf565b610795565b005b34801561032957600080fd5b5061031b6103383660046117f3565b6107bf565b34801561034957600080fd5b5061028061035836600461180c565b6107cc565b34801561036957600080fd5b5060405160128152602001610257565b34801561038557600080fd5b506102806103943660046117a3565b6107f0565b3480156103a557600080fd5b506102c47f000000000000000000000000000000000000000000000000000000000000000081565b3480156103d957600080fd5b5061031b6103e8366004611899565b610812565b3480156103f957600080fd5b506102ed6104083660046117cf565b6001600160a01b031660009081526020819052604090205490565b34801561042f57600080fd5b5061031b610893565b34801561044457600080fd5b506006546102c4906001600160a01b031681565b34801561046457600080fd5b506102ed60085481565b34801561047a57600080fd5b5061031b6108a7565b34801561048f57600080fd5b506005546001600160a01b03166102c4565b3480156104ad57600080fd5b506007546102c4906001600160a01b031681565b3480156104cd57600080fd5b5061031b6104dc366004611905565b6108eb565b3480156104ed57600080fd5b506102ed600d5481565b34801561050357600080fd5b5061031b610512366004611931565b61091f565b34801561052357600080fd5b5061031b610532366004611931565b61099e565b34801561054357600080fd5b506102ed600a5481565b34801561055957600080fd5b5061024a610a18565b34801561056e57600080fd5b5061028061057d3660046117a3565b610a27565b34801561058e57600080fd5b5061028061059d3660046117a3565b610aa7565b3480156105ae57600080fd5b506102ed600f5481565b3480156105c457600080fd5b5061031b6105d33660046117cf565b610ab5565b3480156105e457600080fd5b506102ed60095481565b3480156105fa57600080fd5b5061031b61060936600461180c565b610adf565b34801561061a57600080fd5b5061031b6106293660046117f3565b610be2565b34801561063a57600080fd5b506102ed610649366004611973565b610bef565b34801561065a57600080fd5b5061031b6106693660046117f3565b610c1a565b34801561067a57600080fd5b506102ed600c5481565b34801561069057600080fd5b5061031b61069f3660046117cf565b610c27565b3480156106b057600080fd5b506102ed600b5481565b3480156106c657600080fd5b5061031b610c9d565b3480156106db57600080fd5b506011546102809060ff1681565b6060600380546106f8906119ac565b80601f0160208091040260200160405190810160405280929190818152602001828054610724906119ac565b80156107715780601f1061074657610100808354040283529160200191610771565b820191906000526020600020905b81548152906001019060200180831161075457829003601f168201915b5050505050905090565b600033610789818585610cb4565b60019150505b92915050565b61079d610dd8565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b6107c7610dd8565b600f55565b6000336107da858285610e32565b6107e5858585610eac565b506001949350505050565b6000336107898185856108038383610bef565b61080d91906119fc565b610cb4565b61081a610dd8565b82811461082657600080fd5b60005b8381101561088c5761087a3386868481811061084757610847611a0f565b905060200201602081019061085c91906117cf565b85858581811061086e5761086e611a0f565b90506020020135610eac565b8061088481611a25565b915050610829565b5050505050565b61089b610dd8565b6108a56000611159565b565b6108af610dd8565b6005546040516001600160a01b03909116904780156108fc02916000818181858888f193505050501580156108e8573d6000803e3d6000fd5b50565b6108f3610dd8565b600b8390556009829055600a8190558061090d83856119fc565b61091791906119fc565b600c55505050565b610927610dd8565b60005b818110156109995760006010600085858581811061094a5761094a611a0f565b905060200201602081019061095f91906117cf565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790558061099181611a25565b91505061092a565b505050565b6109a6610dd8565b60005b81811015610999576001601060008585858181106109c9576109c9611a0f565b90506020020160208101906109de91906117cf565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610a1081611a25565b9150506109a9565b6060600480546106f8906119ac565b60003381610a358286610bef565b905083811015610a9a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6107e58286868403610cb4565b600033610789818585610eac565b610abd610dd8565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b610ae7610dd8565b6040516370a0823160e01b81523060048201526000906001600160a01b038516906370a0823190602401602060405180830381865afa158015610b2e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b529190611a3e565b9050836001600160a01b031663a9059cbb84838511610b715784610b73565b835b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610bbe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088c9190611a57565b610bea610dd8565b600855565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b610c22610dd8565b600d55565b610c2f610dd8565b6001600160a01b038116610c945760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a91565b6108e881611159565b610ca5610dd8565b6011805460ff19166001179055565b6001600160a01b038316610d165760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a91565b6001600160a01b038216610d775760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a91565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6005546001600160a01b031633146108a55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a91565b6000610e3e8484610bef565b90506000198114610ea65781811015610e995760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610a91565b610ea68484848403610cb4565b50505050565b6001600160a01b03831660009081526010602052604090205460ff1680610eeb57506001600160a01b03821660009081526010602052604090205460ff165b80610ef85750600e5460ff165b15610f08576109998383836111ab565b60115460ff16610f495760405162461bcd60e51b815260206004820152600c60248201526b139bdd081bdc195b881e595d60a21b6044820152606401610a91565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031603611038573060009081526020819052604080822054600f546001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001684529183205490929161271091610fd99190611a79565b610fe39190611a90565b905080821061101457610ff7816003611a79565b821061100b57611008816003611a79565b91505b61101482611350565b612710600c54856110259190611a79565b61102f9190611a90565b92505050611134565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b0316036110e957612710600854836110829190611a79565b61108c9190611a90565b9050600d5481836110b2866001600160a01b031660009081526020819052604090205490565b6110bc91906119fc565b6110c69190611ab2565b11156110e45760405162461bcd60e51b8152600401610a9190611ac5565b611134565b600d548261110c856001600160a01b031660009081526020819052604090205490565b61111691906119fc565b11156111345760405162461bcd60e51b8152600401610a9190611ac5565b61114884846111438486611ab2565b6111ab565b8015610ea657610ea68430836111ab565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03831661120f5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a91565b6001600160a01b0382166112715760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a91565b6001600160a01b038316600090815260208190526040902054818110156112e95760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610a91565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050565b600e805460ff19166001179055600c54600081900361136f57506114a5565b600060026009546113809190611a90565b61138a9083611ab2565b90506000826113998386611a79565b6113a39190611a90565b90506113ae816114b2565b600b54479060009084906113c29084611a79565b6113cc9190611a90565b9050600084600a54846113df9190611a79565b6113e99190611a90565b6009549091501561141b5761141b6114018589611ab2565b8261140c8587611ab2565b6114169190611ab2565b61164e565b801561145d576006546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561145b573d6000803e3d6000fd5b505b471561149e576007546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561149c573d6000803e3d6000fd5b505b5050505050505b50600e805460ff19169055565b600e805460ff1916600117905560408051600280825260608201835260009260208301908036833701905050905030816000815181106114f4576114f4611a0f565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611572573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115969190611b15565b816001815181106115a9576115a9611a0f565b6001600160a01b03928316602091820292909201015260405163791ac94760e01b81527f00000000000000000000000000000000000000000000000000000000000000009091169063791ac9479061160e908590600090869030904290600401611b32565b600060405180830381600087803b15801561162857600080fd5b505af115801561163c573d6000803e3d6000fd5b5050600e805460ff1916905550505050565b600e805460ff191660011790556001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663f305d7198230856000806116a26005546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561170a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061172f9190611ba3565b5050600e805460ff19169055505050565b600060208083528351808285015260005b8181101561176d57858101830151858201604001528201611751565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146108e857600080fd5b600080604083850312156117b657600080fd5b82356117c18161178e565b946020939093013593505050565b6000602082840312156117e157600080fd5b81356117ec8161178e565b9392505050565b60006020828403121561180557600080fd5b5035919050565b60008060006060848603121561182157600080fd5b833561182c8161178e565b9250602084013561183c8161178e565b929592945050506040919091013590565b60008083601f84011261185f57600080fd5b50813567ffffffffffffffff81111561187757600080fd5b6020830191508360208260051b850101111561189257600080fd5b9250929050565b600080600080604085870312156118af57600080fd5b843567ffffffffffffffff808211156118c757600080fd5b6118d38883890161184d565b909650945060208701359150808211156118ec57600080fd5b506118f98782880161184d565b95989497509550505050565b60008060006060848603121561191a57600080fd5b505081359360208301359350604090920135919050565b6000806020838503121561194457600080fd5b823567ffffffffffffffff81111561195b57600080fd5b6119678582860161184d565b90969095509350505050565b6000806040838503121561198657600080fd5b82356119918161178e565b915060208301356119a18161178e565b809150509250929050565b600181811c908216806119c057607f821691505b6020821081036119e057634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561078f5761078f6119e6565b634e487b7160e01b600052603260045260246000fd5b600060018201611a3757611a376119e6565b5060010190565b600060208284031215611a5057600080fd5b5051919050565b600060208284031215611a6957600080fd5b815180151581146117ec57600080fd5b808202811582820484141761078f5761078f6119e6565b600082611aad57634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561078f5761078f6119e6565b60208082526030908201527f45524332303a207472616e7366657220616d6f756e742065786365656473206d60408201526f185e081dd85b1b195d08185b5bdd5b9d60821b606082015260800190565b600060208284031215611b2757600080fd5b81516117ec8161178e565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611b825784516001600160a01b031683529383019391830191600101611b5d565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215611bb857600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212205aaf07471ea0d74bf42c2e23c1cf37ffb6df7043c6a48e1eb350a2503dbd130864736f6c63430008130033

Deployed Bytecode

0x6080604052600436106102295760003560e01c80638f3fa86011610123578063b2bcf6b3116100ab578063ea2a48701161006f578063ea2a48701461066e578063f2fde38b14610684578063f45ac6af146106a4578063fb201b1d146106ba578063fcfff16f146106cf57600080fd5b8063b2bcf6b3146105d8578063ba802b3d146105ee578063dc1052e21461060e578063dd62ed3e1461062e578063ea1644d51461064e57600080fd5b806395d89b41116100f257806395d89b411461054d578063a457c2d714610562578063a9059cbb14610582578063aa962b02146105a2578063aacebbe3146105b857600080fd5b80638f3fa860146104e1578063923ffc14146104f757806392f42870146105175780639452e81a1461053757600080fd5b806349bd5a5e116101b15780637f2cbc2e116101755780637f2cbc2e14610458578063896f1a951461046e5780638da5cb5b146104835780638ea5220f146104a15780638f2076fd146104c157600080fd5b806349bd5a5e1461039957806367243482146103cd57806370a08231146103ed578063715018a61461042357806375f0a8741461043857600080fd5b80631816467f116101f85780631816467f146102fb5780631e02e0541461031d57806323b872dd1461033d578063313ce5671461035d578063395093511461037957600080fd5b806306fdde0314610235578063095ea7b3146102605780631694505e1461029057806318160ddd146102dc57600080fd5b3661023057005b600080fd5b34801561024157600080fd5b5061024a6106e9565b6040516102579190611740565b60405180910390f35b34801561026c57600080fd5b5061028061027b3660046117a3565b61077b565b6040519015158152602001610257565b34801561029c57600080fd5b506102c47f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b039091168152602001610257565b3480156102e857600080fd5b506002545b604051908152602001610257565b34801561030757600080fd5b5061031b6103163660046117cf565b610795565b005b34801561032957600080fd5b5061031b6103383660046117f3565b6107bf565b34801561034957600080fd5b5061028061035836600461180c565b6107cc565b34801561036957600080fd5b5060405160128152602001610257565b34801561038557600080fd5b506102806103943660046117a3565b6107f0565b3480156103a557600080fd5b506102c47f0000000000000000000000003961abcadcd50b551e2cd294af6731d5abaa8db381565b3480156103d957600080fd5b5061031b6103e8366004611899565b610812565b3480156103f957600080fd5b506102ed6104083660046117cf565b6001600160a01b031660009081526020819052604090205490565b34801561042f57600080fd5b5061031b610893565b34801561044457600080fd5b506006546102c4906001600160a01b031681565b34801561046457600080fd5b506102ed60085481565b34801561047a57600080fd5b5061031b6108a7565b34801561048f57600080fd5b506005546001600160a01b03166102c4565b3480156104ad57600080fd5b506007546102c4906001600160a01b031681565b3480156104cd57600080fd5b5061031b6104dc366004611905565b6108eb565b3480156104ed57600080fd5b506102ed600d5481565b34801561050357600080fd5b5061031b610512366004611931565b61091f565b34801561052357600080fd5b5061031b610532366004611931565b61099e565b34801561054357600080fd5b506102ed600a5481565b34801561055957600080fd5b5061024a610a18565b34801561056e57600080fd5b5061028061057d3660046117a3565b610a27565b34801561058e57600080fd5b5061028061059d3660046117a3565b610aa7565b3480156105ae57600080fd5b506102ed600f5481565b3480156105c457600080fd5b5061031b6105d33660046117cf565b610ab5565b3480156105e457600080fd5b506102ed60095481565b3480156105fa57600080fd5b5061031b61060936600461180c565b610adf565b34801561061a57600080fd5b5061031b6106293660046117f3565b610be2565b34801561063a57600080fd5b506102ed610649366004611973565b610bef565b34801561065a57600080fd5b5061031b6106693660046117f3565b610c1a565b34801561067a57600080fd5b506102ed600c5481565b34801561069057600080fd5b5061031b61069f3660046117cf565b610c27565b3480156106b057600080fd5b506102ed600b5481565b3480156106c657600080fd5b5061031b610c9d565b3480156106db57600080fd5b506011546102809060ff1681565b6060600380546106f8906119ac565b80601f0160208091040260200160405190810160405280929190818152602001828054610724906119ac565b80156107715780601f1061074657610100808354040283529160200191610771565b820191906000526020600020905b81548152906001019060200180831161075457829003601f168201915b5050505050905090565b600033610789818585610cb4565b60019150505b92915050565b61079d610dd8565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b6107c7610dd8565b600f55565b6000336107da858285610e32565b6107e5858585610eac565b506001949350505050565b6000336107898185856108038383610bef565b61080d91906119fc565b610cb4565b61081a610dd8565b82811461082657600080fd5b60005b8381101561088c5761087a3386868481811061084757610847611a0f565b905060200201602081019061085c91906117cf565b85858581811061086e5761086e611a0f565b90506020020135610eac565b8061088481611a25565b915050610829565b5050505050565b61089b610dd8565b6108a56000611159565b565b6108af610dd8565b6005546040516001600160a01b03909116904780156108fc02916000818181858888f193505050501580156108e8573d6000803e3d6000fd5b50565b6108f3610dd8565b600b8390556009829055600a8190558061090d83856119fc565b61091791906119fc565b600c55505050565b610927610dd8565b60005b818110156109995760006010600085858581811061094a5761094a611a0f565b905060200201602081019061095f91906117cf565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790558061099181611a25565b91505061092a565b505050565b6109a6610dd8565b60005b81811015610999576001601060008585858181106109c9576109c9611a0f565b90506020020160208101906109de91906117cf565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610a1081611a25565b9150506109a9565b6060600480546106f8906119ac565b60003381610a358286610bef565b905083811015610a9a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6107e58286868403610cb4565b600033610789818585610eac565b610abd610dd8565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b610ae7610dd8565b6040516370a0823160e01b81523060048201526000906001600160a01b038516906370a0823190602401602060405180830381865afa158015610b2e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b529190611a3e565b9050836001600160a01b031663a9059cbb84838511610b715784610b73565b835b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610bbe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088c9190611a57565b610bea610dd8565b600855565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b610c22610dd8565b600d55565b610c2f610dd8565b6001600160a01b038116610c945760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a91565b6108e881611159565b610ca5610dd8565b6011805460ff19166001179055565b6001600160a01b038316610d165760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a91565b6001600160a01b038216610d775760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a91565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6005546001600160a01b031633146108a55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a91565b6000610e3e8484610bef565b90506000198114610ea65781811015610e995760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610a91565b610ea68484848403610cb4565b50505050565b6001600160a01b03831660009081526010602052604090205460ff1680610eeb57506001600160a01b03821660009081526010602052604090205460ff165b80610ef85750600e5460ff165b15610f08576109998383836111ab565b60115460ff16610f495760405162461bcd60e51b815260206004820152600c60248201526b139bdd081bdc195b881e595d60a21b6044820152606401610a91565b60007f0000000000000000000000003961abcadcd50b551e2cd294af6731d5abaa8db36001600160a01b0316836001600160a01b031603611038573060009081526020819052604080822054600f546001600160a01b037f0000000000000000000000003961abcadcd50b551e2cd294af6731d5abaa8db31684529183205490929161271091610fd99190611a79565b610fe39190611a90565b905080821061101457610ff7816003611a79565b821061100b57611008816003611a79565b91505b61101482611350565b612710600c54856110259190611a79565b61102f9190611a90565b92505050611134565b7f0000000000000000000000003961abcadcd50b551e2cd294af6731d5abaa8db36001600160a01b0316846001600160a01b0316036110e957612710600854836110829190611a79565b61108c9190611a90565b9050600d5481836110b2866001600160a01b031660009081526020819052604090205490565b6110bc91906119fc565b6110c69190611ab2565b11156110e45760405162461bcd60e51b8152600401610a9190611ac5565b611134565b600d548261110c856001600160a01b031660009081526020819052604090205490565b61111691906119fc565b11156111345760405162461bcd60e51b8152600401610a9190611ac5565b61114884846111438486611ab2565b6111ab565b8015610ea657610ea68430836111ab565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03831661120f5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a91565b6001600160a01b0382166112715760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a91565b6001600160a01b038316600090815260208190526040902054818110156112e95760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610a91565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050565b600e805460ff19166001179055600c54600081900361136f57506114a5565b600060026009546113809190611a90565b61138a9083611ab2565b90506000826113998386611a79565b6113a39190611a90565b90506113ae816114b2565b600b54479060009084906113c29084611a79565b6113cc9190611a90565b9050600084600a54846113df9190611a79565b6113e99190611a90565b6009549091501561141b5761141b6114018589611ab2565b8261140c8587611ab2565b6114169190611ab2565b61164e565b801561145d576006546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561145b573d6000803e3d6000fd5b505b471561149e576007546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561149c573d6000803e3d6000fd5b505b5050505050505b50600e805460ff19169055565b600e805460ff1916600117905560408051600280825260608201835260009260208301908036833701905050905030816000815181106114f4576114f4611a0f565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611572573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115969190611b15565b816001815181106115a9576115a9611a0f565b6001600160a01b03928316602091820292909201015260405163791ac94760e01b81527f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d9091169063791ac9479061160e908590600090869030904290600401611b32565b600060405180830381600087803b15801561162857600080fd5b505af115801561163c573d6000803e3d6000fd5b5050600e805460ff1916905550505050565b600e805460ff191660011790556001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d1663f305d7198230856000806116a26005546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561170a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061172f9190611ba3565b5050600e805460ff19169055505050565b600060208083528351808285015260005b8181101561176d57858101830151858201604001528201611751565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146108e857600080fd5b600080604083850312156117b657600080fd5b82356117c18161178e565b946020939093013593505050565b6000602082840312156117e157600080fd5b81356117ec8161178e565b9392505050565b60006020828403121561180557600080fd5b5035919050565b60008060006060848603121561182157600080fd5b833561182c8161178e565b9250602084013561183c8161178e565b929592945050506040919091013590565b60008083601f84011261185f57600080fd5b50813567ffffffffffffffff81111561187757600080fd5b6020830191508360208260051b850101111561189257600080fd5b9250929050565b600080600080604085870312156118af57600080fd5b843567ffffffffffffffff808211156118c757600080fd5b6118d38883890161184d565b909650945060208701359150808211156118ec57600080fd5b506118f98782880161184d565b95989497509550505050565b60008060006060848603121561191a57600080fd5b505081359360208301359350604090920135919050565b6000806020838503121561194457600080fd5b823567ffffffffffffffff81111561195b57600080fd5b6119678582860161184d565b90969095509350505050565b6000806040838503121561198657600080fd5b82356119918161178e565b915060208301356119a18161178e565b809150509250929050565b600181811c908216806119c057607f821691505b6020821081036119e057634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561078f5761078f6119e6565b634e487b7160e01b600052603260045260246000fd5b600060018201611a3757611a376119e6565b5060010190565b600060208284031215611a5057600080fd5b5051919050565b600060208284031215611a6957600080fd5b815180151581146117ec57600080fd5b808202811582820484141761078f5761078f6119e6565b600082611aad57634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561078f5761078f6119e6565b60208082526030908201527f45524332303a207472616e7366657220616d6f756e742065786365656473206d60408201526f185e081dd85b1b195d08185b5bdd5b9d60821b606082015260800190565b600060208284031215611b2757600080fd5b81516117ec8161178e565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611b825784516001600160a01b031683529383019391830191600101611b5d565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215611bb857600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212205aaf07471ea0d74bf42c2e23c1cf37ffb6df7043c6a48e1eb350a2503dbd130864736f6c63430008130033

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.