ETH Price: $3,439.58 (+1.41%)
Gas: 4 Gwei

Token

vitalik smart gas ($VSG)
 

Overview

Max Total Supply

10,000,000,000 $VSG

Holders

1,523

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
1,010,482.112473674316074308 $VSG

Value
$0.00
0x8e3745eedae50728df35350b6a2ea0323a967d01
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:
vitaliksmartgas

Compiler Version
v0.8.23+commit.f704f362

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

//       _ __        ___ __                                __                     
// _   __(_) /_____ _/ (_) /__   _________ ___  ____ ______/ /_   ____ _____ ______
//| | / / / __/ __ `/ / / //_/  / ___/ __ `__ \/ __ `/ ___/ __/  / __ `/ __ `/ ___/
//| |/ / / /_/ /_/ / / / ,<    (__  ) / / / / / /_/ / /  / /_   / /_/ / /_/ (__  ) 
//|___/_/\__/\__,_/_/_/_/|_|  /____/_/ /_/ /_/\__,_/_/   \__/   \__, /\__,_/____/  
//                                                             /____/             






// SPDX-License-Identifier: UNLICENSED

// OpenZeppelin Contracts (last updated v4.6.0) (token/ERC20/IERC20.sol)

pragma solidity ^0.8.0;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @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);

    /**
     * @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 `to`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address to, 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 `from` to `to` 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 from,
        address to,
        uint256 amount
    ) external returns (bool);
}

// File: @openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol


// OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/IERC20Metadata.sol)

pragma solidity ^0.8.0;


/**
 * @dev Interface for the optional metadata functions from the ERC20 standard.
 *
 * _Available since v4.1._
 */
interface IERC20Metadata is IERC20 {
    /**
     * @dev Returns the name of the token.
     */
    function name() external view returns (string memory);

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

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

// File: @openzeppelin/contracts/utils/Context.sol


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

pragma solidity ^0.8.0;

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

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

// File: @openzeppelin/contracts/token/ERC20/ERC20.sol


// OpenZeppelin Contracts (last updated v4.7.0) (token/ERC20/ERC20.sol)

pragma solidity ^0.8.0;




/**
 * @dev Implementation of the {IERC20} interface.
 *
 * This implementation is agnostic to the way tokens are created. This means
 * that a supply mechanism has to be added in a derived contract using {_mint}.
 * For a generic mechanism see {ERC20PresetMinterPauser}.
 *
 * TIP: For a detailed writeup see our guide
 * https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How
 * to implement supply mechanisms].
 *
 * We have followed general OpenZeppelin Contracts guidelines: functions revert
 * instead returning `false` on failure. This behavior is nonetheless
 * conventional and does not conflict with the expectations of ERC20
 * applications.
 *
 * Additionally, an {Approval} event is emitted on calls to {transferFrom}.
 * This allows applications to reconstruct the allowance for all accounts just
 * by listening to said events. Other implementations of the EIP may not emit
 * these events, as it isn't required by the specification.
 *
 * Finally, the non-standard {decreaseAllowance} and {increaseAllowance}
 * functions have been added to mitigate the well-known issues around setting
 * allowances. See {IERC20-approve}.
 */
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;

    /**
     * @dev Sets the values for {name} and {symbol}.
     *
     * The default value of {decimals} is 18. To select a different value for
     * {decimals} you should overload it.
     *
     * All two of these values are immutable: they can only be set once during
     * construction.
     */
    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

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

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

    /**
     * @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() public view virtual override returns (uint256) {
        return _totalSupply;
    }

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

    /**
     * @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) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

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

    /**
     * @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) public 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
    ) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        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) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        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) public 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 Moves `amount` of tokens from `from` to `to`.
     *
     * This internal function is equivalent to {transfer}, and can be used to
     * e.g. implement automatic token fees, slashing mechanisms, etc.
     *
     * Emits a {Transfer} event.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `from` must have a balance of at least `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");

        _beforeTokenTransfer(from, to, amount);

        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[from] = fromBalance - amount;
        }
        _balances[to] += amount;

        emit Transfer(from, to, amount);

        _afterTokenTransfer(from, to, amount);
    }

    /** @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");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(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");

        _beforeTokenTransfer(account, address(0), amount);

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
        }
        _totalSupply -= amount;

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

        _afterTokenTransfer(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);
            }
        }
    }

    /**
     * @dev Hook that is called before any transfer of tokens. This includes
     * minting and burning.
     *
     * Calling conditions:
     *
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
     * will be transferred to `to`.
     * - when `from` is zero, `amount` tokens will be minted for `to`.
     * - when `to` is zero, `amount` of ``from``'s tokens will be burned.
     * - `from` and `to` are never both zero.
     *
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
     */
    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}

    /**
     * @dev Hook that is called after any transfer of tokens. This includes
     * minting and burning.
     *
     * Calling conditions:
     *
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
     * has been transferred to `to`.
     * - when `from` is zero, `amount` tokens have been minted for `to`.
     * - when `to` is zero, `amount` of ``from``'s tokens have been burned.
     * - `from` and `to` are never both zero.
     *
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
     */
    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}

// File: @openzeppelin/contracts/access/Ownable.sol


// OpenZeppelin Contracts (last updated v4.7.0) (access/Ownable.sol)

pragma solidity ^0.8.0;


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

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

    /**
     * @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);
    }
}


pragma solidity ^0.8.0;

interface IRouter {
    function WETH() external pure returns (address);
    function factory() external pure returns (address);    

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

interface IFactory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
    function getPair(address tokenA, address tokenB) external view returns (address pair);
}

contract vitaliksmartgas  is Ownable, ERC20('vitalik smart gas ', '$VSG ') {
       
    IRouter public Router;
    
    uint256 public buyTax;
    uint256 public sellTax;
    uint256 public devSplit;
    uint256 public marketingSplit;
    uint256 public lpSplit;
    uint256 public swapAtAmount;

    address payable public  marketingWallet;
    address payable public teamWallet;
    address public swapPair;
    address dead = 0x000000000000000000000000000000000000dEaD;

    mapping (address => bool) public automatedMarketMakerPairs;
    mapping (address => bool) private _isExcludedFromFees;
    
    
    constructor(
        uint256 _buyTax,
        uint256 _sellTax,
        uint256 _devSplit,
        uint256 _marketingSplit,
        uint256 _lpSplit,
        address _router,
        address _MarketingWallet, 
        address _teamWallet,
        uint256 initialSupply, 
        address realOwner
        ) {

        marketingWallet = payable(_MarketingWallet);
        teamWallet = payable(_teamWallet);

        setBuyTax(_buyTax);
        setSellTax(_sellTax);
        setTaxSplit(_devSplit, _marketingSplit, _lpSplit);

       excludeFromFees(realOwner, true);
       excludeFromFees(address(this), true);
       _mint(realOwner, initialSupply * (10**18));
       swapAtAmount = totalSupply() * 10 / 1000000;  // .01% 
       updateSwapRouter(_router);
       transferOwnership(realOwner);
    }
   
     event ExcludeFromFees(address indexed account, bool isExcluded);
     event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value);

    function setBuyTax(uint256 _newBuyTax) public onlyOwner {
      buyTax = _newBuyTax;
      require(_newBuyTax <= 2000, "Cannot exceed 2000");
    }
    
    function setSellTax(uint256 _newSellTax) public onlyOwner {
      sellTax = _newSellTax;
      require(_newSellTax <= 2000, "TotalFee cannot exceed 2000");
    }
    function setTaxSplit(uint256 _devSplit, uint256 _marketingSplit, uint256 _lpSplit) public onlyOwner {
        devSplit = _devSplit;
        marketingSplit = _marketingSplit;
        lpSplit = _lpSplit;
        require(_devSplit + _marketingSplit + _lpSplit == 100, "Split combination must equal 100");
    }

    function setMarketingWallet(address payable newMarketingWallet) public onlyOwner {
         if (_isExcludedFromFees[marketingWallet] = true)
            excludeFromFees(marketingWallet, false);

        marketingWallet = newMarketingWallet;

         if (_isExcludedFromFees[marketingWallet] = false)
            excludeFromFees(marketingWallet, true);
    }
    function setTeamWallet(address payable newTeamWallet) public onlyOwner {
         if (_isExcludedFromFees[teamWallet] = true)
            excludeFromFees(teamWallet, false);

        teamWallet = newTeamWallet;

         if (_isExcludedFromFees[teamWallet] = false)
            excludeFromFees(teamWallet, true);
    }

    function excludeFromFees(address account, bool excluded) public onlyOwner {
        require(_isExcludedFromFees[account] != excluded, "Account is already the value of 'excluded'");
        _isExcludedFromFees[account] = excluded;

        emit ExcludeFromFees(account, excluded);
    }
    
    function _setAutomatedMarketMakerPair(address pair, bool value) public onlyOwner {
        require(automatedMarketMakerPairs[pair] != value, "Automated market maker pair is already set to that value");
        automatedMarketMakerPairs[pair] = value;
        emit SetAutomatedMarketMakerPair(pair, value);
    }
   
    function updateSwapRouter(address newAddress) public onlyOwner {
        require(newAddress != address(Router), "The router already has that address");
        Router = IRouter(newAddress);
        address bnbPair = IFactory(Router.factory())
            .getPair(address(this), Router.WETH());

        if(bnbPair == address(0))
            bnbPair = IFactory(Router.factory()).createPair(address(this), Router.WETH());

        if (automatedMarketMakerPairs[bnbPair] != true && bnbPair != address(0) ){
            _setAutomatedMarketMakerPair(bnbPair, true);
        }
          _approve(address(this), address(Router), ~uint256(0));
            
        swapPair = bnbPair;
    }
    
    function isExcludedFromFees(address account) public view returns(bool) {
        return _isExcludedFromFees[account];
    }

    function setSwapAtAmount(uint256 _newSwapAtAmount) external onlyOwner {
        swapAtAmount = _newSwapAtAmount;
    }

    bool private inSwapAndLiquify;
    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }
    
    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal override {
          
        // if any account belongs to _isExcludedFromFee account then remove the fee
        if(!_isExcludedFromFees[from] && !_isExcludedFromFees[to]) {
            if(automatedMarketMakerPairs[to] || automatedMarketMakerPairs[from]) {
                if (balanceOf(address(this)) > swapAtAmount && !inSwapAndLiquify && automatedMarketMakerPairs[to]) SwapFees();
                uint256 currentFee = automatedMarketMakerPairs[to] ? sellTax : buyTax;
                uint256 extraFee =(amount * currentFee)/10000;
                if (extraFee > 0) {
                    super._transfer(from, address(this), extraFee);
                    amount = amount - extraFee;
                }   
            }     
        }
      super._transfer(from, to, amount);     
   }

    function SwapFees() private lockTheSwap {

        uint256 tokensToAddLiquidityWith = 0;
        uint256 contractTokenBalance = balanceOf(address(this));
        if(lpSplit > 0) tokensToAddLiquidityWith = contractTokenBalance * lpSplit / 200;
        uint256 toSwap = contractTokenBalance-tokensToAddLiquidityWith;
      
        uint256 initialBalance = address(this).balance;

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = Router.WETH();

        try Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            toSwap,
            0,
            path,
            address(this),
            block.timestamp
        ) {} catch { revert("Failed to swap to eth");}

        if(lpSplit > 0) {
            uint256 deltaBalance = address(this).balance-initialBalance;
            uint256 bnbToAddLiquidityWith = (deltaBalance * lpSplit) / (200 - lpSplit);
            addLiquidity(tokensToAddLiquidityWith, bnbToAddLiquidityWith);
        }

        if(marketingSplit > 0) {
            uint256 marketingAmount = (address(this).balance * marketingSplit) / (marketingSplit + devSplit);
            payable(marketingWallet).transfer(marketingAmount);
        }
        if(devSplit > 0) payable(teamWallet).transfer(address(this).balance);
                    
    }

    function manualSwapAndBurn() external onlyOwner {
       SwapFees();
    }

    function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private {
        // add the liquidity
        try Router.addLiquidityETH{value: ethAmount}(
            address(this),
            tokenAmount,
            0, // slippage is unavoidable
            0, // slippage is unavoidable
            dead,
            block.timestamp
        ) {} catch {revert("Failed to add liquidity");}
        
    }

        function withdawlBNB() external onlyOwner {
            payable(msg.sender).transfer(address(this).balance);
        }

        function withdrawlToken(address _tokenAddress) external onlyOwner {
            ERC20(_tokenAddress).transfer(msg.sender, ERC20(_tokenAddress).balanceOf(address(this)));
        }   
 

    // to receive Eth From Router when Swapping
    receive() external payable {}
    
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"uint256","name":"_buyTax","type":"uint256"},{"internalType":"uint256","name":"_sellTax","type":"uint256"},{"internalType":"uint256","name":"_devSplit","type":"uint256"},{"internalType":"uint256","name":"_marketingSplit","type":"uint256"},{"internalType":"uint256","name":"_lpSplit","type":"uint256"},{"internalType":"address","name":"_router","type":"address"},{"internalType":"address","name":"_MarketingWallet","type":"address"},{"internalType":"address","name":"_teamWallet","type":"address"},{"internalType":"uint256","name":"initialSupply","type":"uint256"},{"internalType":"address","name":"realOwner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","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":"pair","type":"address"},{"indexed":true,"internalType":"bool","name":"value","type":"bool"}],"name":"SetAutomatedMarketMakerPair","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":"Router","outputs":[{"internalType":"contract IRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"_setAutomatedMarketMakerPair","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":"","type":"address"}],"name":"automatedMarketMakerPairs","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTax","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":"devSplit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","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":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lpSplit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwapAndBurn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingSplit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newBuyTax","type":"uint256"}],"name":"setBuyTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"newMarketingWallet","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newSellTax","type":"uint256"}],"name":"setSellTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newSwapAtAmount","type":"uint256"}],"name":"setSwapAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_devSplit","type":"uint256"},{"internalType":"uint256","name":"_marketingSplit","type":"uint256"},{"internalType":"uint256","name":"_lpSplit","type":"uint256"}],"name":"setTaxSplit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"newTeamWallet","type":"address"}],"name":"setTeamWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"teamWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"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":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"updateSwapRouter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdawlBNB","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"}],"name":"withdrawlToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052601080546001600160a01b03191661dead17905534801562000024575f80fd5b5060405162002d4538038062002d45833981016040819052620000479162000c16565b6040518060400160405280601281526020017103b34ba30b634b59039b6b0b93a1033b0b9960751b815250604051806040016040528060058152602001640122b29a3960dd1b815250620000aa620000a4620001a660201b60201c565b620001aa565b6004620000b8838262000d46565b506005620000c7828262000d46565b5050600d80546001600160a01b038088166001600160a01b031992831617909255600e80549287169290911691909117905550620001058a620001f9565b620001108962000258565b6200011d888888620002bb565b6200012a81600162000343565b6200013730600162000343565b62000156816200015084670de0b6b3a764000062000e26565b6200042f565b620f42406200016460035490565b6200017190600a62000e26565b6200017d919062000e46565b600c556200018b8562000511565b620001968162000906565b5050505050505050505062000e9f565b3390565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6200020362000982565b60078190556107d0811115620002555760405162461bcd60e51b8152602060048201526012602482015271043616e6e6f742065786365656420323030360741b60448201526064015b60405180910390fd5b50565b6200026262000982565b60088190556107d0811115620002555760405162461bcd60e51b815260206004820152601b60248201527f546f74616c4665652063616e6e6f74206578636565642032303030000000000060448201526064016200024c565b620002c562000982565b6009839055600a829055600b81905580620002e1838562000e66565b620002ed919062000e66565b6064146200033e5760405162461bcd60e51b815260206004820181905260248201527f53706c697420636f6d62696e6174696f6e206d75737420657175616c2031303060448201526064016200024c565b505050565b6200034d62000982565b6001600160a01b0382165f9081526012602052604090205481151560ff909116151503620003d15760405162461bcd60e51b815260206004820152602a60248201527f4163636f756e7420697320616c7265616479207468652076616c7565206f6620604482015269276578636c756465642760b01b60648201526084016200024c565b6001600160a01b0382165f81815260126020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6001600160a01b038216620004875760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016200024c565b8060035f8282546200049a919062000e66565b90915550506001600160a01b0382165f9081526001602052604081208054839290620004c890849062000e66565b90915550506040518181526001600160a01b038316905f907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6200051b62000982565b6006546001600160a01b0390811690821603620005875760405162461bcd60e51b815260206004820152602360248201527f54686520726f7574657220616c7265616479206861732074686174206164647260448201526265737360e81b60648201526084016200024c565b600680546001600160a01b0319166001600160a01b0383169081179091556040805163c45a015560e01b815290515f929163c45a01559160048083019260209291908290030181865afa158015620005e1573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000607919062000e7c565b6001600160a01b031663e6a439053060065f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000667573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200068d919062000e7c565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015620006d7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620006fd919062000e7c565b90506001600160a01b0381166200087f5760065f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200075f573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000785919062000e7c565b6001600160a01b031663c9c653963060065f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620007e5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200080b919062000e7c565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801562000856573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200087c919062000e7c565b90505b6001600160a01b0381165f9081526011602052604090205460ff161515600114801590620008b557506001600160a01b03811615155b15620008c857620008c8816001620009df565b600654620008e39030906001600160a01b03165f1962000ad3565b600f80546001600160a01b0319166001600160a01b039290921691909117905550565b6200091062000982565b6001600160a01b038116620009775760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200024c565b6200025581620001aa565b5f546001600160a01b03163314620009dd5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200024c565b565b620009e962000982565b6001600160a01b0382165f9081526011602052604090205481151560ff90911615150362000a805760405162461bcd60e51b815260206004820152603860248201527f4175746f6d61746564206d61726b6574206d616b65722070616972206973206160448201527f6c72656164792073657420746f20746861742076616c7565000000000000000060648201526084016200024c565b6001600160a01b0382165f81815260116020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b03831662000b375760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016200024c565b6001600160a01b03821662000b9a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016200024c565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b80516001600160a01b038116811462000c11575f80fd5b919050565b5f805f805f805f805f806101408b8d03121562000c31575f80fd5b8a51995060208b0151985060408b0151975060608b0151965060808b0151955062000c5f60a08c0162000bfa565b945062000c6f60c08c0162000bfa565b935062000c7f60e08c0162000bfa565b92506101008b0151915062000c986101208c0162000bfa565b90509295989b9194979a5092959850565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168062000cd257607f821691505b60208210810362000cf157634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200033e57805f5260205f20601f840160051c8101602085101562000d1e5750805b601f840160051c820191505b8181101562000d3f575f815560010162000d2a565b5050505050565b81516001600160401b0381111562000d625762000d6262000ca9565b62000d7a8162000d73845462000cbd565b8462000cf7565b602080601f83116001811462000db0575f841562000d985750858301515b5f19600386901b1c1916600185901b17855562000e0a565b5f85815260208120601f198616915b8281101562000de05788860151825594840194600190910190840162000dbf565b508582101562000dfe57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141762000e405762000e4062000e12565b92915050565b5f8262000e6157634e487b7160e01b5f52601260045260245ffd5b500490565b8082018082111562000e405762000e4062000e12565b5f6020828403121562000e8d575f80fd5b62000e988262000bfa565b9392505050565b611e988062000ead5f395ff3fe608060405260043610610220575f3560e01c806375f0a8741161011e578063b62496f5116100a8578063dc1052e21161006d578063dc1052e214610636578063dd62ed3e14610655578063e799ffb114610674578063f2fde38b14610688578063f6d7eade146106a7575f80fd5b8063b62496f5146105a1578063b9413b51146105cf578063b98b677f146105e3578063c024666814610602578063cc1776d314610621575f80fd5b806395d89b41116100ee57806395d89b4114610511578063a457c2d714610525578063a7f7b36f14610544578063a9059cbb14610563578063ac5cad5614610582575f80fd5b806375f0a874146104a257806386917524146104c15780638cd09d50146104d65780638da5cb5b146104f5575f80fd5b80633f7fc93b116101aa5780635d098b381161016f5780635d098b38146104075780636402511e146104265780636e0a0c8a1461044557806370a082311461045a578063715018a61461048e575f80fd5b80633f7fc93b146103685780634647283d146103875780634f7041a51461039c5780634fbee193146103b157806359927044146103e8575f80fd5b806323b872dd116101f057806323b872dd146102c357806326991cc8146102e2578063313ce5671461031957806339509351146103345780633d90784014610353575f80fd5b806306fdde031461022b578063095ea7b3146102555780631525ff7d1461028457806318160ddd146102a5575f80fd5b3661022757005b5f80fd5b348015610236575f80fd5b5061023f6106c6565b60405161024c9190611b23565b60405180910390f35b348015610260575f80fd5b5061027461026f366004611b83565b610756565b604051901515815260200161024c565b34801561028f575f80fd5b506102a361029e366004611bad565b61076f565b005b3480156102b0575f80fd5b506003545b60405190815260200161024c565b3480156102ce575f80fd5b506102746102dd366004611bcf565b6107e8565b3480156102ed575f80fd5b50600f54610301906001600160a01b031681565b6040516001600160a01b03909116815260200161024c565b348015610324575f80fd5b506040516012815260200161024c565b34801561033f575f80fd5b5061027461034e366004611b83565b61080b565b34801561035e575f80fd5b506102b560095481565b348015610373575f80fd5b506102a3610382366004611c0d565b61082c565b348015610392575f80fd5b506102b5600a5481565b3480156103a7575f80fd5b506102b560075481565b3480156103bc575f80fd5b506102746103cb366004611bad565b6001600160a01b03165f9081526012602052604090205460ff1690565b3480156103f3575f80fd5b50600e54610301906001600160a01b031681565b348015610412575f80fd5b506102a3610421366004611bad565b6108b1565b348015610431575f80fd5b506102a3610440366004611c36565b610929565b348015610450575f80fd5b506102b5600b5481565b348015610465575f80fd5b506102b5610474366004611bad565b6001600160a01b03165f9081526001602052604090205490565b348015610499575f80fd5b506102a3610936565b3480156104ad575f80fd5b50600d54610301906001600160a01b031681565b3480156104cc575f80fd5b506102b5600c5481565b3480156104e1575f80fd5b506102a36104f0366004611c36565b610949565b348015610500575f80fd5b505f546001600160a01b0316610301565b34801561051c575f80fd5b5061023f6109a8565b348015610530575f80fd5b5061027461053f366004611b83565b6109b7565b34801561054f575f80fd5b506102a361055e366004611c5a565b610a31565b34801561056e575f80fd5b5061027461057d366004611b83565b610b21565b34801561058d575f80fd5b506102a361059c366004611bad565b610b2e565b3480156105ac575f80fd5b506102746105bb366004611bad565b60116020525f908152604090205460ff1681565b3480156105da575f80fd5b506102a3610c16565b3480156105ee575f80fd5b506102a36105fd366004611bad565b610c26565b34801561060d575f80fd5b506102a361061c366004611c5a565b610ffe565b34801561062c575f80fd5b506102b560085481565b348015610641575f80fd5b506102a3610650366004611c36565b6110e6565b348015610660575f80fd5b506102b561066f366004611c91565b61113a565b34801561067f575f80fd5b506102a3611164565b348015610693575f80fd5b506102a36106a2366004611bad565b611195565b3480156106b2575f80fd5b50600654610301906001600160a01b031681565b6060600480546106d590611cbd565b80601f016020809104026020016040519081016040528092919081815260200182805461070190611cbd565b801561074c5780601f106107235761010080835404028352916020019161074c565b820191905f5260205f20905b81548152906001019060200180831161072f57829003601f168201915b5050505050905090565b5f3361076381858561120b565b60019150505b92915050565b61077761132e565b600e546001600160a01b03165f908152601260205260409020805460ff19166001179055600e546107b1906001600160a01b03165f610ffe565b600e80546001600160a01b0319166001600160a01b0383169081179091555f908152601260205260409020805460ff191690555b50565b5f336107f5858285611387565b6108008585856113ff565b506001949350505050565b5f3361076381858561081d838361113a565b6108279190611d09565b61120b565b61083461132e565b6009839055600a829055600b8190558061084e8385611d09565b6108589190611d09565b6064146108ac5760405162461bcd60e51b815260206004820181905260248201527f53706c697420636f6d62696e6174696f6e206d75737420657175616c2031303060448201526064015b60405180910390fd5b505050565b6108b961132e565b600d546001600160a01b03165f908152601260205260409020805460ff19166001179055600d546108f3906001600160a01b03165f610ffe565b600d80546001600160a01b0319166001600160a01b0383169081179091555f908152601260205260409020805460ff1916905550565b61093161132e565b600c55565b61093e61132e565b6109475f61154b565b565b61095161132e565b60088190556107d08111156107e55760405162461bcd60e51b815260206004820152601b60248201527f546f74616c4665652063616e6e6f74206578636565642032303030000000000060448201526064016108a3565b6060600580546106d590611cbd565b5f33816109c4828661113a565b905083811015610a245760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016108a3565b610800828686840361120b565b610a3961132e565b6001600160a01b0382165f9081526011602052604090205481151560ff909116151503610ace5760405162461bcd60e51b815260206004820152603860248201527f4175746f6d61746564206d61726b6574206d616b65722070616972206973206160448201527f6c72656164792073657420746f20746861742076616c7565000000000000000060648201526084016108a3565b6001600160a01b0382165f81815260116020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b5f336107638185856113ff565b610b3661132e565b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610b82573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ba69190611d1c565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303815f875af1158015610bee573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c129190611d33565b5050565b610c1e61132e565b61094761159a565b610c2e61132e565b6006546001600160a01b0390811690821603610c985760405162461bcd60e51b815260206004820152602360248201527f54686520726f7574657220616c7265616479206861732074686174206164647260448201526265737360e81b60648201526084016108a3565b600680546001600160a01b0319166001600160a01b0383169081179091556040805163c45a015560e01b815290515f929163c45a01559160048083019260209291908290030181865afa158015610cf1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d159190611d4e565b6001600160a01b031663e6a439053060065f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d74573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d989190611d4e565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015610de1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e059190611d4e565b90506001600160a01b038116610f7d5760065f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e65573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e899190611d4e565b6001600160a01b031663c9c653963060065f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ee8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f0c9190611d4e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610f56573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7a9190611d4e565b90505b6001600160a01b0381165f9081526011602052604090205460ff161515600114801590610fb257506001600160a01b03811615155b15610fc257610fc2816001610a31565b600654610fdb9030906001600160a01b03165f1961120b565b600f80546001600160a01b0319166001600160a01b039290921691909117905550565b61100661132e565b6001600160a01b0382165f9081526012602052604090205481151560ff9091161515036110885760405162461bcd60e51b815260206004820152602a60248201527f4163636f756e7420697320616c7265616479207468652076616c7565206f6620604482015269276578636c756465642760b01b60648201526084016108a3565b6001600160a01b0382165f81815260126020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6110ee61132e565b60078190556107d08111156107e55760405162461bcd60e51b8152602060048201526012602482015271043616e6e6f742065786365656420323030360741b60448201526064016108a3565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b61116c61132e565b60405133904780156108fc02915f818181858888f193505050501580156107e5573d5f803e3d5ffd5b61119d61132e565b6001600160a01b0381166112025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108a3565b6107e58161154b565b6001600160a01b03831661126d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108a3565b6001600160a01b0382166112ce5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108a3565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f546001600160a01b031633146109475760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016108a3565b5f611392848461113a565b90505f1981146113f957818110156113ec5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016108a3565b6113f9848484840361120b565b50505050565b6001600160a01b0383165f9081526012602052604090205460ff1615801561143f57506001600160a01b0382165f9081526012602052604090205460ff16155b15611540576001600160a01b0382165f9081526011602052604090205460ff168061148157506001600160a01b0383165f9081526011602052604090205460ff165b1561154057600c54305f908152600160205260409020541180156114a8575060135460ff16155b80156114cb57506001600160a01b0382165f9081526011602052604090205460ff165b156114d8576114d861159a565b6001600160a01b0382165f9081526011602052604081205460ff166114ff57600754611503565b6008545b90505f6127106115138385611d69565b61151d9190611d80565b9050801561153d57611530853083611878565b61153a8184611d9f565b92505b50505b6108ac838383611878565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6013805460ff191660011790555f806115c7306001600160a01b03165f9081526001602052604090205490565b600b54909150156115ef5760c8600b54826115e29190611d69565b6115ec9190611d80565b91505b5f6115fa8383611d9f565b60408051600280825260608201835292935047925f9260208301908036833701905050905030815f8151811061163257611632611db2565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611689573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116ad9190611d4e565b816001815181106116c0576116c0611db2565b6001600160a01b03928316602091820292909201015260065460405163791ac94760e01b815291169063791ac947906117059086905f90869030904290600401611dc6565b5f604051808303815f87803b15801561171c575f80fd5b505af192505050801561172d575060015b6117715760405162461bcd60e51b815260206004820152601560248201527408cc2d2d8cac840e8de40e6eec2e040e8de40cae8d605b1b60448201526064016108a3565b600b54156117bc575f6117848347611d9f565b90505f600b5460c86117969190611d9f565b600b546117a39084611d69565b6117ad9190611d80565b90506117b98782611a44565b50505b600a5415611827575f600954600a546117d59190611d09565b600a546117e29047611d69565b6117ec9190611d80565b600d546040519192506001600160a01b03169082156108fc029083905f818181858888f19350505050158015611824573d5f803e3d5ffd5b50505b6009541561186757600e546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015611865573d5f803e3d5ffd5b505b50506013805460ff19169055505050565b6001600160a01b0383166118dc5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108a3565b6001600160a01b03821661193e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108a3565b6001600160a01b0383165f90815260016020526040902054818110156119b55760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016108a3565b6001600160a01b038085165f908152600160205260408082208585039055918516815290812080548492906119eb908490611d09565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611a3791815260200190565b60405180910390a36113f9565b60065460105460405163f305d71960e01b8152306004820152602481018590525f6044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af193505050508015611ad0575060408051601f3d908101601f19168201909252611acd91810190611e37565b60015b611b1c5760405162461bcd60e51b815260206004820152601760248201527f4661696c656420746f20616464206c697175696469747900000000000000000060448201526064016108a3565b5050505050565b5f602080835283518060208501525f5b81811015611b4f57858101830151858201604001528201611b33565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107e5575f80fd5b5f8060408385031215611b94575f80fd5b8235611b9f81611b6f565b946020939093013593505050565b5f60208284031215611bbd575f80fd5b8135611bc881611b6f565b9392505050565b5f805f60608486031215611be1575f80fd5b8335611bec81611b6f565b92506020840135611bfc81611b6f565b929592945050506040919091013590565b5f805f60608486031215611c1f575f80fd5b505081359360208301359350604090920135919050565b5f60208284031215611c46575f80fd5b5035919050565b80151581146107e5575f80fd5b5f8060408385031215611c6b575f80fd5b8235611c7681611b6f565b91506020830135611c8681611c4d565b809150509250929050565b5f8060408385031215611ca2575f80fd5b8235611cad81611b6f565b91506020830135611c8681611b6f565b600181811c90821680611cd157607f821691505b602082108103611cef57634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561076957610769611cf5565b5f60208284031215611d2c575f80fd5b5051919050565b5f60208284031215611d43575f80fd5b8151611bc881611c4d565b5f60208284031215611d5e575f80fd5b8151611bc881611b6f565b808202811582820484141761076957610769611cf5565b5f82611d9a57634e487b7160e01b5f52601260045260245ffd5b500490565b8181038181111561076957610769611cf5565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611e165784516001600160a01b031683529383019391830191600101611df1565b50506001600160a01b03969096166060850152505050608001529392505050565b5f805f60608486031215611e49575f80fd5b835192506020840151915060408401519050925092509256fea2646970667358221220013c20745271466994a2d9e03c2d3457a12c1e51644cbc1100dac9c5cecb7c4064736f6c6343000817003300000000000000000000000000000000000000000000000000000000000000c8000000000000000000000000000000000000000000000000000000000000012c000000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000004600000000000000000000000000000000000000000000000000000000000000000000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000fc3badf104aae26ba8e39e00bba9eedaae60c296000000000000000000000000990468564b36f29e862dcce8f7f8c8b46113e68d00000000000000000000000000000000000000000000000000000002540be4000000000000000000000000006bc23f03ffde6fcc44ceddfe381b9018f072d31b

Deployed Bytecode

0x608060405260043610610220575f3560e01c806375f0a8741161011e578063b62496f5116100a8578063dc1052e21161006d578063dc1052e214610636578063dd62ed3e14610655578063e799ffb114610674578063f2fde38b14610688578063f6d7eade146106a7575f80fd5b8063b62496f5146105a1578063b9413b51146105cf578063b98b677f146105e3578063c024666814610602578063cc1776d314610621575f80fd5b806395d89b41116100ee57806395d89b4114610511578063a457c2d714610525578063a7f7b36f14610544578063a9059cbb14610563578063ac5cad5614610582575f80fd5b806375f0a874146104a257806386917524146104c15780638cd09d50146104d65780638da5cb5b146104f5575f80fd5b80633f7fc93b116101aa5780635d098b381161016f5780635d098b38146104075780636402511e146104265780636e0a0c8a1461044557806370a082311461045a578063715018a61461048e575f80fd5b80633f7fc93b146103685780634647283d146103875780634f7041a51461039c5780634fbee193146103b157806359927044146103e8575f80fd5b806323b872dd116101f057806323b872dd146102c357806326991cc8146102e2578063313ce5671461031957806339509351146103345780633d90784014610353575f80fd5b806306fdde031461022b578063095ea7b3146102555780631525ff7d1461028457806318160ddd146102a5575f80fd5b3661022757005b5f80fd5b348015610236575f80fd5b5061023f6106c6565b60405161024c9190611b23565b60405180910390f35b348015610260575f80fd5b5061027461026f366004611b83565b610756565b604051901515815260200161024c565b34801561028f575f80fd5b506102a361029e366004611bad565b61076f565b005b3480156102b0575f80fd5b506003545b60405190815260200161024c565b3480156102ce575f80fd5b506102746102dd366004611bcf565b6107e8565b3480156102ed575f80fd5b50600f54610301906001600160a01b031681565b6040516001600160a01b03909116815260200161024c565b348015610324575f80fd5b506040516012815260200161024c565b34801561033f575f80fd5b5061027461034e366004611b83565b61080b565b34801561035e575f80fd5b506102b560095481565b348015610373575f80fd5b506102a3610382366004611c0d565b61082c565b348015610392575f80fd5b506102b5600a5481565b3480156103a7575f80fd5b506102b560075481565b3480156103bc575f80fd5b506102746103cb366004611bad565b6001600160a01b03165f9081526012602052604090205460ff1690565b3480156103f3575f80fd5b50600e54610301906001600160a01b031681565b348015610412575f80fd5b506102a3610421366004611bad565b6108b1565b348015610431575f80fd5b506102a3610440366004611c36565b610929565b348015610450575f80fd5b506102b5600b5481565b348015610465575f80fd5b506102b5610474366004611bad565b6001600160a01b03165f9081526001602052604090205490565b348015610499575f80fd5b506102a3610936565b3480156104ad575f80fd5b50600d54610301906001600160a01b031681565b3480156104cc575f80fd5b506102b5600c5481565b3480156104e1575f80fd5b506102a36104f0366004611c36565b610949565b348015610500575f80fd5b505f546001600160a01b0316610301565b34801561051c575f80fd5b5061023f6109a8565b348015610530575f80fd5b5061027461053f366004611b83565b6109b7565b34801561054f575f80fd5b506102a361055e366004611c5a565b610a31565b34801561056e575f80fd5b5061027461057d366004611b83565b610b21565b34801561058d575f80fd5b506102a361059c366004611bad565b610b2e565b3480156105ac575f80fd5b506102746105bb366004611bad565b60116020525f908152604090205460ff1681565b3480156105da575f80fd5b506102a3610c16565b3480156105ee575f80fd5b506102a36105fd366004611bad565b610c26565b34801561060d575f80fd5b506102a361061c366004611c5a565b610ffe565b34801561062c575f80fd5b506102b560085481565b348015610641575f80fd5b506102a3610650366004611c36565b6110e6565b348015610660575f80fd5b506102b561066f366004611c91565b61113a565b34801561067f575f80fd5b506102a3611164565b348015610693575f80fd5b506102a36106a2366004611bad565b611195565b3480156106b2575f80fd5b50600654610301906001600160a01b031681565b6060600480546106d590611cbd565b80601f016020809104026020016040519081016040528092919081815260200182805461070190611cbd565b801561074c5780601f106107235761010080835404028352916020019161074c565b820191905f5260205f20905b81548152906001019060200180831161072f57829003601f168201915b5050505050905090565b5f3361076381858561120b565b60019150505b92915050565b61077761132e565b600e546001600160a01b03165f908152601260205260409020805460ff19166001179055600e546107b1906001600160a01b03165f610ffe565b600e80546001600160a01b0319166001600160a01b0383169081179091555f908152601260205260409020805460ff191690555b50565b5f336107f5858285611387565b6108008585856113ff565b506001949350505050565b5f3361076381858561081d838361113a565b6108279190611d09565b61120b565b61083461132e565b6009839055600a829055600b8190558061084e8385611d09565b6108589190611d09565b6064146108ac5760405162461bcd60e51b815260206004820181905260248201527f53706c697420636f6d62696e6174696f6e206d75737420657175616c2031303060448201526064015b60405180910390fd5b505050565b6108b961132e565b600d546001600160a01b03165f908152601260205260409020805460ff19166001179055600d546108f3906001600160a01b03165f610ffe565b600d80546001600160a01b0319166001600160a01b0383169081179091555f908152601260205260409020805460ff1916905550565b61093161132e565b600c55565b61093e61132e565b6109475f61154b565b565b61095161132e565b60088190556107d08111156107e55760405162461bcd60e51b815260206004820152601b60248201527f546f74616c4665652063616e6e6f74206578636565642032303030000000000060448201526064016108a3565b6060600580546106d590611cbd565b5f33816109c4828661113a565b905083811015610a245760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016108a3565b610800828686840361120b565b610a3961132e565b6001600160a01b0382165f9081526011602052604090205481151560ff909116151503610ace5760405162461bcd60e51b815260206004820152603860248201527f4175746f6d61746564206d61726b6574206d616b65722070616972206973206160448201527f6c72656164792073657420746f20746861742076616c7565000000000000000060648201526084016108a3565b6001600160a01b0382165f81815260116020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b5f336107638185856113ff565b610b3661132e565b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a0823190602401602060405180830381865afa158015610b82573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ba69190611d1c565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303815f875af1158015610bee573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c129190611d33565b5050565b610c1e61132e565b61094761159a565b610c2e61132e565b6006546001600160a01b0390811690821603610c985760405162461bcd60e51b815260206004820152602360248201527f54686520726f7574657220616c7265616479206861732074686174206164647260448201526265737360e81b60648201526084016108a3565b600680546001600160a01b0319166001600160a01b0383169081179091556040805163c45a015560e01b815290515f929163c45a01559160048083019260209291908290030181865afa158015610cf1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d159190611d4e565b6001600160a01b031663e6a439053060065f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d74573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d989190611d4e565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015610de1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e059190611d4e565b90506001600160a01b038116610f7d5760065f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e65573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e899190611d4e565b6001600160a01b031663c9c653963060065f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ee8573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f0c9190611d4e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610f56573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7a9190611d4e565b90505b6001600160a01b0381165f9081526011602052604090205460ff161515600114801590610fb257506001600160a01b03811615155b15610fc257610fc2816001610a31565b600654610fdb9030906001600160a01b03165f1961120b565b600f80546001600160a01b0319166001600160a01b039290921691909117905550565b61100661132e565b6001600160a01b0382165f9081526012602052604090205481151560ff9091161515036110885760405162461bcd60e51b815260206004820152602a60248201527f4163636f756e7420697320616c7265616479207468652076616c7565206f6620604482015269276578636c756465642760b01b60648201526084016108a3565b6001600160a01b0382165f81815260126020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6110ee61132e565b60078190556107d08111156107e55760405162461bcd60e51b8152602060048201526012602482015271043616e6e6f742065786365656420323030360741b60448201526064016108a3565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b61116c61132e565b60405133904780156108fc02915f818181858888f193505050501580156107e5573d5f803e3d5ffd5b61119d61132e565b6001600160a01b0381166112025760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016108a3565b6107e58161154b565b6001600160a01b03831661126d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016108a3565b6001600160a01b0382166112ce5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016108a3565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f546001600160a01b031633146109475760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016108a3565b5f611392848461113a565b90505f1981146113f957818110156113ec5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016108a3565b6113f9848484840361120b565b50505050565b6001600160a01b0383165f9081526012602052604090205460ff1615801561143f57506001600160a01b0382165f9081526012602052604090205460ff16155b15611540576001600160a01b0382165f9081526011602052604090205460ff168061148157506001600160a01b0383165f9081526011602052604090205460ff165b1561154057600c54305f908152600160205260409020541180156114a8575060135460ff16155b80156114cb57506001600160a01b0382165f9081526011602052604090205460ff165b156114d8576114d861159a565b6001600160a01b0382165f9081526011602052604081205460ff166114ff57600754611503565b6008545b90505f6127106115138385611d69565b61151d9190611d80565b9050801561153d57611530853083611878565b61153a8184611d9f565b92505b50505b6108ac838383611878565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6013805460ff191660011790555f806115c7306001600160a01b03165f9081526001602052604090205490565b600b54909150156115ef5760c8600b54826115e29190611d69565b6115ec9190611d80565b91505b5f6115fa8383611d9f565b60408051600280825260608201835292935047925f9260208301908036833701905050905030815f8151811061163257611632611db2565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611689573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116ad9190611d4e565b816001815181106116c0576116c0611db2565b6001600160a01b03928316602091820292909201015260065460405163791ac94760e01b815291169063791ac947906117059086905f90869030904290600401611dc6565b5f604051808303815f87803b15801561171c575f80fd5b505af192505050801561172d575060015b6117715760405162461bcd60e51b815260206004820152601560248201527408cc2d2d8cac840e8de40e6eec2e040e8de40cae8d605b1b60448201526064016108a3565b600b54156117bc575f6117848347611d9f565b90505f600b5460c86117969190611d9f565b600b546117a39084611d69565b6117ad9190611d80565b90506117b98782611a44565b50505b600a5415611827575f600954600a546117d59190611d09565b600a546117e29047611d69565b6117ec9190611d80565b600d546040519192506001600160a01b03169082156108fc029083905f818181858888f19350505050158015611824573d5f803e3d5ffd5b50505b6009541561186757600e546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015611865573d5f803e3d5ffd5b505b50506013805460ff19169055505050565b6001600160a01b0383166118dc5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016108a3565b6001600160a01b03821661193e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016108a3565b6001600160a01b0383165f90815260016020526040902054818110156119b55760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016108a3565b6001600160a01b038085165f908152600160205260408082208585039055918516815290812080548492906119eb908490611d09565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611a3791815260200190565b60405180910390a36113f9565b60065460105460405163f305d71960e01b8152306004820152602481018590525f6044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af193505050508015611ad0575060408051601f3d908101601f19168201909252611acd91810190611e37565b60015b611b1c5760405162461bcd60e51b815260206004820152601760248201527f4661696c656420746f20616464206c697175696469747900000000000000000060448201526064016108a3565b5050505050565b5f602080835283518060208501525f5b81811015611b4f57858101830151858201604001528201611b33565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107e5575f80fd5b5f8060408385031215611b94575f80fd5b8235611b9f81611b6f565b946020939093013593505050565b5f60208284031215611bbd575f80fd5b8135611bc881611b6f565b9392505050565b5f805f60608486031215611be1575f80fd5b8335611bec81611b6f565b92506020840135611bfc81611b6f565b929592945050506040919091013590565b5f805f60608486031215611c1f575f80fd5b505081359360208301359350604090920135919050565b5f60208284031215611c46575f80fd5b5035919050565b80151581146107e5575f80fd5b5f8060408385031215611c6b575f80fd5b8235611c7681611b6f565b91506020830135611c8681611c4d565b809150509250929050565b5f8060408385031215611ca2575f80fd5b8235611cad81611b6f565b91506020830135611c8681611b6f565b600181811c90821680611cd157607f821691505b602082108103611cef57634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561076957610769611cf5565b5f60208284031215611d2c575f80fd5b5051919050565b5f60208284031215611d43575f80fd5b8151611bc881611c4d565b5f60208284031215611d5e575f80fd5b8151611bc881611b6f565b808202811582820484141761076957610769611cf5565b5f82611d9a57634e487b7160e01b5f52601260045260245ffd5b500490565b8181038181111561076957610769611cf5565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611e165784516001600160a01b031683529383019391830191600101611df1565b50506001600160a01b03969096166060850152505050608001529392505050565b5f805f60608486031215611e49575f80fd5b835192506020840151915060408401519050925092509256fea2646970667358221220013c20745271466994a2d9e03c2d3457a12c1e51644cbc1100dac9c5cecb7c4064736f6c63430008170033

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

00000000000000000000000000000000000000000000000000000000000000c8000000000000000000000000000000000000000000000000000000000000012c000000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000004600000000000000000000000000000000000000000000000000000000000000000000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000fc3badf104aae26ba8e39e00bba9eedaae60c296000000000000000000000000990468564b36f29e862dcce8f7f8c8b46113e68d00000000000000000000000000000000000000000000000000000002540be4000000000000000000000000006bc23f03ffde6fcc44ceddfe381b9018f072d31b

-----Decoded View---------------
Arg [0] : _buyTax (uint256): 200
Arg [1] : _sellTax (uint256): 300
Arg [2] : _devSplit (uint256): 30
Arg [3] : _marketingSplit (uint256): 70
Arg [4] : _lpSplit (uint256): 0
Arg [5] : _router (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
Arg [6] : _MarketingWallet (address): 0xFc3badf104AAe26BA8e39e00BBA9EEdAaE60C296
Arg [7] : _teamWallet (address): 0x990468564b36F29e862DcCe8F7F8c8b46113E68d
Arg [8] : initialSupply (uint256): 10000000000
Arg [9] : realOwner (address): 0x6bC23F03FfdE6FcC44CEdDFe381B9018F072d31b

-----Encoded View---------------
10 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000000000000000c8
Arg [1] : 000000000000000000000000000000000000000000000000000000000000012c
Arg [2] : 000000000000000000000000000000000000000000000000000000000000001e
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000046
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [5] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Arg [6] : 000000000000000000000000fc3badf104aae26ba8e39e00bba9eedaae60c296
Arg [7] : 000000000000000000000000990468564b36f29e862dcce8f7f8c8b46113e68d
Arg [8] : 00000000000000000000000000000000000000000000000000000002540be400
Arg [9] : 0000000000000000000000006bc23f03ffde6fcc44ceddfe381b9018f072d31b


Deployed Bytecode Sourcemap

21517:7948:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7154:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9505:201;;;;;;;;;;-1:-1:-1;9505:201:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;9505:201:0;1023:187:1;24166:326:0;;;;;;;;;;-1:-1:-1;24166:326:0;;;;;:::i;:::-;;:::i;:::-;;8274:108;;;;;;;;;;-1:-1:-1;8362:12:0;;8274:108;;;1621:25:1;;;1609:2;1594:18;8274:108:0;1475:177:1;10286:295:0;;;;;;;;;;-1:-1:-1;10286:295:0;;;;;:::i;:::-;;:::i;21916:23::-;;;;;;;;;;-1:-1:-1;21916:23:0;;;;-1:-1:-1;;;;;21916:23:0;;;;;;-1:-1:-1;;;;;2282:32:1;;;2264:51;;2252:2;2237:18;21916:23:0;2118:203:1;8116:93:0;;;;;;;;;;-1:-1:-1;8116:93:0;;8199:2;2468:36:1;;2456:2;2441:18;8116:93:0;2326:184:1;10990:238:0;;;;;;;;;;-1:-1:-1;10990:238:0;;;;;:::i;:::-;;:::i;21699:23::-;;;;;;;;;;;;;;;;23474:312;;;;;;;;;;-1:-1:-1;23474:312:0;;;;;:::i;:::-;;:::i;21729:29::-;;;;;;;;;;;;;;;;21642:21;;;;;;;;;;;;;;;;25838:125;;;;;;;;;;-1:-1:-1;25838:125:0;;;;;:::i;:::-;-1:-1:-1;;;;;25927:28:0;25903:4;25927:28;;;:19;:28;;;;;;;;;25838:125;21876:33;;;;;;;;;;-1:-1:-1;21876:33:0;;;;-1:-1:-1;;;;;21876:33:0;;;23794:366;;;;;;;;;;-1:-1:-1;23794:366:0;;;;;:::i;:::-;;:::i;25971:120::-;;;;;;;;;;-1:-1:-1;25971:120:0;;;;;:::i;:::-;;:::i;21765:22::-;;;;;;;;;;;;;;;;8445:127;;;;;;;;;;-1:-1:-1;8445:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;8546:18:0;8519:7;8546:18;;;:9;:18;;;;;;;8445:127;19823:103;;;;;;;;;;;;;:::i;21830:39::-;;;;;;;;;;-1:-1:-1;21830:39:0;;;;-1:-1:-1;;;;;21830:39:0;;;21794:27;;;;;;;;;;;;;;;;23304:164;;;;;;;;;;-1:-1:-1;23304:164:0;;;;;:::i;:::-;;:::i;19175:87::-;;;;;;;;;;-1:-1:-1;19221:7:0;19248:6;-1:-1:-1;;;;;19248:6:0;19175:87;;7373:104;;;;;;;;;;;;;:::i;11731:436::-;;;;;;;;;;-1:-1:-1;11731:436:0;;;;;:::i;:::-;;:::i;24802:315::-;;;;;;;;;;-1:-1:-1;24802:315:0;;;;;:::i;:::-;;:::i;8778:193::-;;;;;;;;;;-1:-1:-1;8778:193:0;;;;;:::i;:::-;;:::i;29183:181::-;;;;;;;;;;-1:-1:-1;29183:181:0;;;;;:::i;:::-;;:::i;22012:58::-;;;;;;;;;;-1:-1:-1;22012:58:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;28537:76;;;;;;;;;;;;;:::i;25128:698::-;;;;;;;;;;-1:-1:-1;25128:698:0;;;;;:::i;:::-;;:::i;24500:290::-;;;;;;;;;;-1:-1:-1;24500:290:0;;;;;:::i;:::-;;:::i;21670:22::-;;;;;;;;;;;;;;;;23142:150;;;;;;;;;;-1:-1:-1;23142:150:0;;;;;:::i;:::-;;:::i;9034:151::-;;;;;;;;;;-1:-1:-1;9034:151:0;;;;;:::i;:::-;;:::i;29051:120::-;;;;;;;;;;;;;:::i;20081:201::-;;;;;;;;;;-1:-1:-1;20081:201:0;;;;;:::i;:::-;;:::i;21608:21::-;;;;;;;;;;-1:-1:-1;21608:21:0;;;;-1:-1:-1;;;;;21608:21:0;;;7154:100;7208:13;7241:5;7234:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7154:100;:::o;9505:201::-;9588:4;4874:10;9644:32;4874:10;9660:7;9669:6;9644:8;:32::i;:::-;9694:4;9687:11;;;9505:201;;;;;:::o;24166:326::-;19061:13;:11;:13::i;:::-;24273:10:::1;::::0;-1:-1:-1;;;;;24273:10:0::1;24253:31;::::0;;;:19:::1;:31;::::0;;;;:38;;-1:-1:-1;;24253:38:0::1;24287:4;24253:38;::::0;;24322:10:::1;::::0;24306:34:::1;::::0;-1:-1:-1;;;;;24322:10:0::1;;24306:15;:34::i;:::-;24353:10;:26:::0;;-1:-1:-1;;;;;;24353:26:0::1;-1:-1:-1::0;;;;;24353:26:0;::::1;::::0;;::::1;::::0;;;-1:-1:-1;24397:31:0;;;:19:::1;:31;::::0;;;;:39;;-1:-1:-1;;24397:39:0::1;::::0;;24451:33:::1;24166:326:::0;:::o;10286:295::-;10417:4;4874:10;10475:38;10491:4;4874:10;10506:6;10475:15;:38::i;:::-;10524:27;10534:4;10540:2;10544:6;10524:9;:27::i;:::-;-1:-1:-1;10569:4:0;;10286:295;-1:-1:-1;;;;10286:295:0:o;10990:238::-;11078:4;4874:10;11134:64;4874:10;11150:7;11187:10;11159:25;4874:10;11150:7;11159:9;:25::i;:::-;:38;;;;:::i;:::-;11134:8;:64::i;23474:312::-;19061:13;:11;:13::i;:::-;23585:8:::1;:20:::0;;;23616:14:::1;:32:::0;;;23659:7:::1;:18:::0;;;23669:8;23696:27:::1;23633:15:::0;23596:9;23696:27:::1;:::i;:::-;:38;;;;:::i;:::-;23738:3;23696:45;23688:90;;;::::0;-1:-1:-1;;;23688:90:0;;5472:2:1;23688:90:0::1;::::0;::::1;5454:21:1::0;;;5491:18;;;5484:30;5550:34;5530:18;;;5523:62;5602:18;;23688:90:0::1;;;;;;;;;23474:312:::0;;;:::o;23794:366::-;19061:13;:11;:13::i;:::-;23911:15:::1;::::0;-1:-1:-1;;;;;23911:15:0::1;23891:36;::::0;;;:19:::1;:36;::::0;;;;:43;;-1:-1:-1;;23891:43:0::1;23930:4;23891:43;::::0;;23965:15:::1;::::0;23949:39:::1;::::0;-1:-1:-1;;;;;23965:15:0::1;;23949;:39::i;:::-;24001:15;:36:::0;;-1:-1:-1;;;;;;24001:36:0::1;-1:-1:-1::0;;;;;24001:36:0;::::1;::::0;;::::1;::::0;;;-1:-1:-1;24055:36:0;;;:19:::1;:36;::::0;;;;:44;;-1:-1:-1;;24055:44:0::1;::::0;;24166:326;:::o;25971:120::-;19061:13;:11;:13::i;:::-;26052:12:::1;:31:::0;25971:120::o;19823:103::-;19061:13;:11;:13::i;:::-;19888:30:::1;19915:1;19888:18;:30::i;:::-;19823:103::o:0;23304:164::-;19061:13;:11;:13::i;:::-;23371:7:::1;:21:::0;;;23424:4:::1;23409:19:::0;::::1;;23401:59;;;::::0;-1:-1:-1;;;23401:59:0;;5833:2:1;23401:59:0::1;::::0;::::1;5815:21:1::0;5872:2;5852:18;;;5845:30;5911:29;5891:18;;;5884:57;5958:18;;23401:59:0::1;5631:351:1::0;7373:104:0;7429:13;7462:7;7455:14;;;;;:::i;11731:436::-;11824:4;4874:10;11824:4;11907:25;4874:10;11924:7;11907:9;:25::i;:::-;11880:52;;11971:15;11951:16;:35;;11943:85;;;;-1:-1:-1;;;11943:85:0;;6189:2:1;11943:85:0;;;6171:21:1;6228:2;6208:18;;;6201:30;6267:34;6247:18;;;6240:62;-1:-1:-1;;;6318:18:1;;;6311:35;6363:19;;11943:85:0;5987:401:1;11943:85:0;12064:60;12073:5;12080:7;12108:15;12089:16;:34;12064:8;:60::i;24802:315::-;19061:13;:11;:13::i;:::-;-1:-1:-1;;;;;24902:31:0;::::1;;::::0;;;:25:::1;:31;::::0;;;;;:40;::::1;;:31;::::0;;::::1;:40;;::::0;24894:109:::1;;;::::0;-1:-1:-1;;;24894:109:0;;6595:2:1;24894:109:0::1;::::0;::::1;6577:21:1::0;6634:2;6614:18;;;6607:30;6673:34;6653:18;;;6646:62;6744:26;6724:18;;;6717:54;6788:19;;24894:109:0::1;6393:420:1::0;24894:109:0::1;-1:-1:-1::0;;;;;25014:31:0;::::1;;::::0;;;:25:::1;:31;::::0;;;;;:39;;-1:-1:-1;;25014:39:0::1;::::0;::::1;;::::0;;::::1;::::0;;;25069:40;;25014:39;;:31;25069:40:::1;::::0;::::1;24802:315:::0;;:::o;8778:193::-;8857:4;4874:10;8913:28;4874:10;8930:2;8934:6;8913:9;:28::i;29183:181::-;19061:13;:11;:13::i;:::-;29306:45:::1;::::0;-1:-1:-1;;;29306:45:0;;29345:4:::1;29306:45;::::0;::::1;2264:51:1::0;-1:-1:-1;;;;;29264:29:0;::::1;::::0;::::1;::::0;29294:10:::1;::::0;29264:29;;29306:30:::1;::::0;2237:18:1;;29306:45:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;29264:88;::::0;-1:-1:-1;;;;;;29264:88:0::1;::::0;;;;;;-1:-1:-1;;;;;7199:32:1;;;29264:88:0::1;::::0;::::1;7181:51:1::0;7248:18;;;7241:34;7154:18;;29264:88:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;29183:181:::0;:::o;28537:76::-;19061:13;:11;:13::i;:::-;28595:10:::1;:8;:10::i;25128:698::-:0;19061:13;:11;:13::i;:::-;25232:6:::1;::::0;-1:-1:-1;;;;;25232:6:0;;::::1;25210:29:::0;;::::1;::::0;25202:77:::1;;;::::0;-1:-1:-1;;;25202:77:0;;7738:2:1;25202:77:0::1;::::0;::::1;7720:21:1::0;7777:2;7757:18;;;7750:30;7816:34;7796:18;;;7789:62;-1:-1:-1;;;7867:18:1;;;7860:33;7910:19;;25202:77:0::1;7536:399:1::0;25202:77:0::1;25290:6;:28:::0;;-1:-1:-1;;;;;;25290:28:0::1;-1:-1:-1::0;;;;;25290:28:0;::::1;::::0;;::::1;::::0;;;25356:16:::1;::::0;;-1:-1:-1;;;25356:16:0;;;;-1:-1:-1;;25290:28:0;25356:14:::1;::::0;:16:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;25290:28;25356:16:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;25347:48:0::1;;25404:4;25411:6;;;;;;;;;-1:-1:-1::0;;;;;25411:6:0::1;-1:-1:-1::0;;;;;25411:11:0::1;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25347:78;::::0;-1:-1:-1;;;;;;25347:78:0::1;::::0;;;;;;-1:-1:-1;;;;;8426:15:1;;;25347:78:0::1;::::0;::::1;8408:34:1::0;8478:15;;8458:18;;;8451:43;8343:18;;25347:78:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25329:96:::0;-1:-1:-1;;;;;;25441:21:0;::::1;25438:116;;25496:6;;;;;;;;;-1:-1:-1::0;;;;;25496:6:0::1;-1:-1:-1::0;;;;;25496:14:0::1;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;25487:37:0::1;;25533:4;25540:6;;;;;;;;;-1:-1:-1::0;;;;;25540:6:0::1;-1:-1:-1::0;;;;;25540:11:0::1;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25487:67;::::0;-1:-1:-1;;;;;;25487:67:0::1;::::0;;;;;;-1:-1:-1;;;;;8426:15:1;;;25487:67:0::1;::::0;::::1;8408:34:1::0;8478:15;;8458:18;;;8451:43;8343:18;;25487:67:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25477:77;;25438:116;-1:-1:-1::0;;;;;25571:34:0;::::1;;::::0;;;:25:::1;:34;::::0;;;;;::::1;;:42;;:34:::0;:42:::1;::::0;::::1;::::0;:67:::1;;-1:-1:-1::0;;;;;;25617:21:0;::::1;::::0;::::1;25571:67;25567:143;;;25655:43;25684:7;25693:4;25655:28;:43::i;:::-;25754:6;::::0;25722:53:::1;::::0;25739:4:::1;::::0;-1:-1:-1;;;;;25754:6:0::1;-1:-1:-1::0;;25722:8:0::1;:53::i;:::-;25800:8;:18:::0;;-1:-1:-1;;;;;;25800:18:0::1;-1:-1:-1::0;;;;;25800:18:0;;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;25128:698:0:o;24500:290::-;19061:13;:11;:13::i;:::-;-1:-1:-1;;;;;24593:28:0;::::1;;::::0;;;:19:::1;:28;::::0;;;;;:40;::::1;;:28;::::0;;::::1;:40;;::::0;24585:95:::1;;;::::0;-1:-1:-1;;;24585:95:0;;8707:2:1;24585:95:0::1;::::0;::::1;8689:21:1::0;8746:2;8726:18;;;8719:30;8785:34;8765:18;;;8758:62;-1:-1:-1;;;8836:18:1;;;8829:40;8886:19;;24585:95:0::1;8505:406:1::0;24585:95:0::1;-1:-1:-1::0;;;;;24691:28:0;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;;;:39;;-1:-1:-1;;24691:39:0::1;::::0;::::1;;::::0;;::::1;::::0;;;24748:34;;1163:41:1;;;24748:34:0::1;::::0;1136:18:1;24748:34:0::1;;;;;;;24500:290:::0;;:::o;23142:150::-;19061:13;:11;:13::i;:::-;23207:6:::1;:19:::0;;;23257:4:::1;23243:18:::0;::::1;;23235:49;;;::::0;-1:-1:-1;;;23235:49:0;;9118:2:1;23235:49:0::1;::::0;::::1;9100:21:1::0;9157:2;9137:18;;;9130:30;-1:-1:-1;;;9176:18:1;;;9169:48;9234:18;;23235:49:0::1;8916:342:1::0;9034:151:0;-1:-1:-1;;;;;9150:18:0;;;9123:7;9150:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;9034:151::o;29051:120::-;19061:13;:11;:13::i;:::-;29108:51:::1;::::0;29116:10:::1;::::0;29137:21:::1;29108:51:::0;::::1;;;::::0;::::1;::::0;;;29137:21;29116:10;29108:51;::::1;;;;;;;;;;;;;::::0;::::1;;;;20081:201:::0;19061:13;:11;:13::i;:::-;-1:-1:-1;;;;;20170:22:0;::::1;20162:73;;;::::0;-1:-1:-1;;;20162:73:0;;9465:2:1;20162:73:0::1;::::0;::::1;9447:21:1::0;9504:2;9484:18;;;9477:30;9543:34;9523:18;;;9516:62;-1:-1:-1;;;9594:18:1;;;9587:36;9640:19;;20162:73:0::1;9263:402:1::0;20162:73:0::1;20246:28;20265:8;20246:18;:28::i;15356:380::-:0;-1:-1:-1;;;;;15492:19:0;;15484:68;;;;-1:-1:-1;;;15484:68:0;;9872:2:1;15484:68:0;;;9854:21:1;9911:2;9891:18;;;9884:30;9950:34;9930:18;;;9923:62;-1:-1:-1;;;10001:18:1;;;9994:34;10045:19;;15484:68:0;9670:400:1;15484:68:0;-1:-1:-1;;;;;15571:21:0;;15563:68;;;;-1:-1:-1;;;15563:68:0;;10277:2:1;15563:68:0;;;10259:21:1;10316:2;10296:18;;;10289:30;10355:34;10335:18;;;10328:62;-1:-1:-1;;;10406:18:1;;;10399:32;10448:19;;15563:68:0;10075:398:1;15563:68:0;-1:-1:-1;;;;;15644:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;15696:32;;1621:25:1;;;15696:32:0;;1594:18:1;15696:32:0;;;;;;;15356:380;;;:::o;19340:132::-;19221:7;19248:6;-1:-1:-1;;;;;19248:6:0;4874:10;19404:23;19396:68;;;;-1:-1:-1;;;19396:68:0;;10680:2:1;19396:68:0;;;10662:21:1;;;10699:18;;;10692:30;10758:34;10738:18;;;10731:62;10810:18;;19396:68:0;10478:356:1;16027:453:0;16162:24;16189:25;16199:5;16206:7;16189:9;:25::i;:::-;16162:52;;-1:-1:-1;;16229:16:0;:37;16225:248;;16311:6;16291:16;:26;;16283:68;;;;-1:-1:-1;;;16283:68:0;;11041:2:1;16283:68:0;;;11023:21:1;11080:2;11060:18;;;11053:30;11119:31;11099:18;;;11092:59;11168:18;;16283:68:0;10839:353:1;16283:68:0;16395:51;16404:5;16411:7;16439:6;16420:16;:25;16395:8;:51::i;:::-;16151:329;16027:453;;;:::o;26257:906::-;-1:-1:-1;;;;;26482:25:0;;;;;;:19;:25;;;;;;;;26481:26;:54;;;;-1:-1:-1;;;;;;26512:23:0;;;;;;:19;:23;;;;;;;;26511:24;26481:54;26478:632;;;-1:-1:-1;;;;;26555:29:0;;;;;;:25;:29;;;;;;;;;:64;;-1:-1:-1;;;;;;26588:31:0;;;;;;:25;:31;;;;;;;;26555:64;26552:542;;;26671:12;;26662:4;8519:7;8546:18;;;:9;:18;;;;;;26644:39;:60;;;;-1:-1:-1;26688:16:0;;;;26687:17;26644:60;:93;;;;-1:-1:-1;;;;;;26708:29:0;;;;;;:25;:29;;;;;;;;26644:93;26640:109;;;26739:10;:8;:10::i;:::-;-1:-1:-1;;;;;26789:29:0;;26768:18;26789:29;;;:25;:29;;;;;;;;:48;;26831:6;;26789:48;;;26821:7;;26789:48;26768:69;-1:-1:-1;26856:16:0;26896:5;26875:19;26768:69;26875:6;:19;:::i;:::-;26874:27;;;;:::i;:::-;26856:45;-1:-1:-1;26924:12:0;;26920:156;;26961:46;26977:4;26991;26998:8;26961:15;:46::i;:::-;27039:17;27048:8;27039:6;:17;:::i;:::-;27030:26;;26920:156;26621:473;;26552:542;27118:33;27134:4;27140:2;27144:6;27118:15;:33::i;20442:191::-;20516:16;20535:6;;-1:-1:-1;;;;;20552:17:0;;;-1:-1:-1;;;;;;20552:17:0;;;;;;20585:40;;20535:6;;;;;;;20585:40;;20516:16;20585:40;20505:128;20442:191;:::o;27171:1358::-;26167:16;:23;;-1:-1:-1;;26167:23:0;26186:4;26167:23;;;:16;;27302:24:::1;27320:4;-1:-1:-1::0;;;;;8546:18:0;8519:7;8546:18;;;:9;:18;;;;;;;8445:127;27302:24:::1;27340:7;::::0;27271:55;;-1:-1:-1;27340:11:0;27337:79:::1;;27413:3;27403:7;;27380:20;:30;;;;:::i;:::-;:36;;;;:::i;:::-;27353:63;;27337:79;27427:14;27444:45;27465:24:::0;27444:20;:45:::1;:::i;:::-;27591:16;::::0;;27605:1:::1;27591:16:::0;;;;;::::1;::::0;;27427:62;;-1:-1:-1;27533:21:0::1;::::0;27508:22:::1;::::0;27591:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;27591:16:0::1;27567:40;;27636:4;27618;27623:1;27618:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;27618:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;27662:6:::1;::::0;:13:::1;::::0;;-1:-1:-1;;;27662:13:0;;;;:6;;;::::1;::::0;:11:::1;::::0;:13:::1;::::0;;::::1;::::0;27618:7;;27662:13;;;;;:6;:13:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;27652:4;27657:1;27652:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;27652:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;27692:6:::1;::::0;:182:::1;::::0;-1:-1:-1;;;27692:182:0;;:6;::::1;::::0;:57:::1;::::0;:182:::1;::::0;27764:6;;27692::::1;::::0;27801:4;;27828::::1;::::0;27848:15:::1;::::0;27692:182:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;27688:231;;27886:31;::::0;-1:-1:-1;;;27886:31:0;;13176:2:1;27886:31:0::1;::::0;::::1;13158:21:1::0;13215:2;13195:18;;;13188:30;-1:-1:-1;;;13234:18:1;;;13227:51;13295:18;;27886:31:0::1;12974:345:1::0;27688:231:0::1;27934:7;::::0;:11;27931:267:::1;;27962:20;27985:36;28007:14:::0;27985:21:::1;:36;:::i;:::-;27962:59;;28036:29;28102:7;;28096:3;:13;;;;:::i;:::-;28084:7;::::0;28069:22:::1;::::0;:12;:22:::1;:::i;:::-;28068:42;;;;:::i;:::-;28036:74;;28125:61;28138:24;28164:21;28125:12;:61::i;:::-;27947:251;;27931:267;28213:14;::::0;:18;28210:211:::1;;28248:23;28335:8;;28318:14;;:25;;;;:::i;:::-;28299:14;::::0;28275:38:::1;::::0;:21:::1;:38;:::i;:::-;28274:70;;;;:::i;:::-;28367:15;::::0;28359:50:::1;::::0;28248:96;;-1:-1:-1;;;;;;28367:15:0::1;::::0;28359:50;::::1;;;::::0;28248:96;;28367:15:::1;28359:50:::0;28367:15;28359:50;28248:96;28367:15;28359:50;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;28233:188;28210:211;28434:8;::::0;:12;28431:68:::1;;28456:10;::::0;28448:51:::1;::::0;-1:-1:-1;;;;;28456:10:0;;::::1;::::0;28477:21:::1;28448:51:::0;::::1;;;::::0;28456:10:::1;28448:51:::0;28456:10;28448:51;28477:21;28456:10;28448:51;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;28431:68;-1:-1:-1::0;;26213:16:0;:24;;-1:-1:-1;;26213:24:0;;;-1:-1:-1;;;27171:1358:0:o;12637:671::-;-1:-1:-1;;;;;12768:18:0;;12760:68;;;;-1:-1:-1;;;12760:68:0;;13526:2:1;12760:68:0;;;13508:21:1;13565:2;13545:18;;;13538:30;13604:34;13584:18;;;13577:62;-1:-1:-1;;;13655:18:1;;;13648:35;13700:19;;12760:68:0;13324:401:1;12760:68:0;-1:-1:-1;;;;;12847:16:0;;12839:64;;;;-1:-1:-1;;;12839:64:0;;13932:2:1;12839:64:0;;;13914:21:1;13971:2;13951:18;;;13944:30;14010:34;13990:18;;;13983:62;-1:-1:-1;;;14061:18:1;;;14054:33;14104:19;;12839:64:0;13730:399:1;12839:64:0;-1:-1:-1;;;;;12989:15:0;;12967:19;12989:15;;;:9;:15;;;;;;13023:21;;;;13015:72;;;;-1:-1:-1;;;13015:72:0;;14336:2:1;13015:72:0;;;14318:21:1;14375:2;14355:18;;;14348:30;14414:34;14394:18;;;14387:62;-1:-1:-1;;;14465:18:1;;;14458:36;14511:19;;13015:72:0;14134:402:1;13015:72:0;-1:-1:-1;;;;;13123:15:0;;;;;;;:9;:15;;;;;;13141:20;;;13123:38;;13183:13;;;;;;;;:23;;13155:6;;13123:15;13183:23;;13155:6;;13183:23;:::i;:::-;;;;;;;;13239:2;-1:-1:-1;;;;;13224:26:0;13233:4;-1:-1:-1;;;;;13224:26:0;;13243:6;13224:26;;;;1621:25:1;;1609:2;1594:18;;1475:177;13224:26:0;;;;;;;;13263:37;23474:312;28621:418;28736:6;;28931:4;;28736:240;;-1:-1:-1;;;28736:240:0;;28799:4;28736:240;;;14882:34:1;14932:18;;;14925:34;;;28736:6:0;14975:18:1;;;14968:34;;;15018:18;;;15011:34;-1:-1:-1;;;;;28931:4:0;;;15061:19:1;;;15054:44;28950:15:0;15114:19:1;;;15107:35;28736:6:0;;;:22;;28766:9;;14816:19:1;;28736:240:0;;;;;;;;;;;;;;;;;;;;-1:-1:-1;28736:240:0;;;;;;;;-1:-1:-1;;28736:240:0;;;;;;;;;;;;:::i;:::-;;;28732:290;;28987:33;;-1:-1:-1;;;28987:33:0;;15666:2:1;28987:33:0;;;15648:21:1;15705:2;15685:18;;;15678:30;15744:25;15724:18;;;15717:53;15787:18;;28987:33:0;15464:347:1;28732:290:0;;;;28621:418;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1215:255::-;1282:6;1335:2;1323:9;1314:7;1310:23;1306:32;1303:52;;;1351:1;1348;1341:12;1303:52;1390:9;1377:23;1409:31;1434:5;1409:31;:::i;:::-;1459:5;1215:255;-1:-1:-1;;;1215:255:1:o;1657:456::-;1734:6;1742;1750;1803:2;1791:9;1782:7;1778:23;1774:32;1771:52;;;1819:1;1816;1809:12;1771:52;1858:9;1845:23;1877:31;1902:5;1877:31;:::i;:::-;1927:5;-1:-1:-1;1984:2:1;1969:18;;1956:32;1997:33;1956:32;1997:33;:::i;:::-;1657:456;;2049:7;;-1:-1:-1;;;2103:2:1;2088:18;;;;2075:32;;1657:456::o;2515:316::-;2592:6;2600;2608;2661:2;2649:9;2640:7;2636:23;2632:32;2629:52;;;2677:1;2674;2667:12;2629:52;-1:-1:-1;;2700:23:1;;;2770:2;2755:18;;2742:32;;-1:-1:-1;2821:2:1;2806:18;;;2793:32;;2515:316;-1:-1:-1;2515:316:1:o;3312:180::-;3371:6;3424:2;3412:9;3403:7;3399:23;3395:32;3392:52;;;3440:1;3437;3430:12;3392:52;-1:-1:-1;3463:23:1;;3312:180;-1:-1:-1;3312:180:1:o;3497:118::-;3583:5;3576:13;3569:21;3562:5;3559:32;3549:60;;3605:1;3602;3595:12;3620:382;3685:6;3693;3746:2;3734:9;3725:7;3721:23;3717:32;3714:52;;;3762:1;3759;3752:12;3714:52;3801:9;3788:23;3820:31;3845:5;3820:31;:::i;:::-;3870:5;-1:-1:-1;3927:2:1;3912:18;;3899:32;3940:30;3899:32;3940:30;:::i;:::-;3989:7;3979:17;;;3620:382;;;;;:::o;4007:388::-;4075:6;4083;4136:2;4124:9;4115:7;4111:23;4107:32;4104:52;;;4152:1;4149;4142:12;4104:52;4191:9;4178:23;4210:31;4235:5;4210:31;:::i;:::-;4260:5;-1:-1:-1;4317:2:1;4302:18;;4289:32;4330:33;4289:32;4330:33;:::i;4623:380::-;4702:1;4698:12;;;;4745;;;4766:61;;4820:4;4812:6;4808:17;4798:27;;4766:61;4873:2;4865:6;4862:14;4842:18;4839:38;4836:161;;4919:10;4914:3;4910:20;4907:1;4900:31;4954:4;4951:1;4944:15;4982:4;4979:1;4972:15;4836:161;;4623:380;;;:::o;5008:127::-;5069:10;5064:3;5060:20;5057:1;5050:31;5100:4;5097:1;5090:15;5124:4;5121:1;5114:15;5140:125;5205:9;;;5226:10;;;5223:36;;;5239:18;;:::i;6818:184::-;6888:6;6941:2;6929:9;6920:7;6916:23;6912:32;6909:52;;;6957:1;6954;6947:12;6909:52;-1:-1:-1;6980:16:1;;6818:184;-1:-1:-1;6818:184:1:o;7286:245::-;7353:6;7406:2;7394:9;7385:7;7381:23;7377:32;7374:52;;;7422:1;7419;7412:12;7374:52;7454:9;7448:16;7473:28;7495:5;7473:28;:::i;7940:251::-;8010:6;8063:2;8051:9;8042:7;8038:23;8034:32;8031:52;;;8079:1;8076;8069:12;8031:52;8111:9;8105:16;8130:31;8155:5;8130:31;:::i;11197:168::-;11270:9;;;11301;;11318:15;;;11312:22;;11298:37;11288:71;;11339:18;;:::i;11370:217::-;11410:1;11436;11426:132;;11480:10;11475:3;11471:20;11468:1;11461:31;11515:4;11512:1;11505:15;11543:4;11540:1;11533:15;11426:132;-1:-1:-1;11572:9:1;;11370:217::o;11592:128::-;11659:9;;;11680:11;;;11677:37;;;11694:18;;:::i;11857:127::-;11918:10;11913:3;11909:20;11906:1;11899:31;11949:4;11946:1;11939:15;11973:4;11970:1;11963:15;11989:980;12251:4;12299:3;12288:9;12284:19;12330:6;12319:9;12312:25;12356:2;12394:6;12389:2;12378:9;12374:18;12367:34;12437:3;12432:2;12421:9;12417:18;12410:31;12461:6;12496;12490:13;12527:6;12519;12512:22;12565:3;12554:9;12550:19;12543:26;;12604:2;12596:6;12592:15;12578:29;;12625:1;12635:195;12649:6;12646:1;12643:13;12635:195;;;12714:13;;-1:-1:-1;;;;;12710:39:1;12698:52;;12805:15;;;;12770:12;;;;12746:1;12664:9;12635:195;;;-1:-1:-1;;;;;;;12886:32:1;;;;12881:2;12866:18;;12859:60;-1:-1:-1;;;12950:3:1;12935:19;12928:35;12847:3;11989:980;-1:-1:-1;;;11989:980:1:o;15153:306::-;15241:6;15249;15257;15310:2;15298:9;15289:7;15285:23;15281:32;15278:52;;;15326:1;15323;15316:12;15278:52;15355:9;15349:16;15339:26;;15405:2;15394:9;15390:18;15384:25;15374:35;;15449:2;15438:9;15434:18;15428:25;15418:35;;15153:306;;;;;:::o

Swarm Source

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