ETH Price: $2,305.00 (+0.99%)

Token

Peter Pan (PAN2.0)
 

Overview

Max Total Supply

469,000,000 PAN2.0

Holders

34

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
938,000 PAN2.0

Value
$0.00
0x6952e0a5aada4b8a4373f48e4dbdc2a7dd645613
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:
peterpan

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-09-19
*/

pragma solidity 0.8.20;

// SPDX-License-Identifier: MIT

/* 

TELEGRAM:https://t.me/peterpancoineth
WEBSITE:https://peterpan.finance
TWITTER:https://x.com/peterpan_v2

*/

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

    function _msgData() internal view virtual returns (bytes calldata) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

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

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

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

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

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

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

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

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

interface 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);
}

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}.
     *
     * 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 default value returned by this function, unless
     * it's 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;
            // Overflow not possible: the sum of all balances is capped by totalSupply, and the sum is preserved by
            // decrementing then incrementing.
            _balances[to] += amount;
        }

        emit Transfer(from, to, amount);

        _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;
        unchecked {
            // Overflow not possible: balance + amount is at most totalSupply + amount, which is checked above.
            _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;
            // Overflow not possible: amount <= accountBalance <= totalSupply.
            _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 {}
}

contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    
    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() external virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

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

interface IDexRouter {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external;
}

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

contract peterpan is ERC20, Ownable {

    mapping (address => bool) public exemptFromFees;
    mapping (address => bool) public exemptFromLimits;

    bool public tradingActive;

    mapping (address => bool) public isAMMPair;

    uint256 public maxTransaction;
    uint256 public maxWallet;

    address public operationsAddress;

    uint256 public buyTax;
    uint256 public sellTax;

    mapping(address => uint256) private _holderLastTransferBlock; // to hold last Transfers temporarily during launch
    bool public transferDelayEnabled = true;
    bool public limitsInEffect = true;

    bool private swapping;
    uint256 public swapTokensAtAmt;

    address public lpPair;
    IDexRouter public dexRouter;

    uint256 public constant FEE_DIVISOR = 10000;

    // events

    event UpdatedMaxTransaction(uint256 newMax);
    event UpdatedMaxWallet(uint256 newMax);
    event SetExemptFromFees(address _address, bool _isExempt);
    event SetExemptFromLimits(address _address, bool _isExempt);
    event RemovedLimits();
    event UpdatedBuyTax(uint256 newAmt);
    event UpdatedSellTax(uint256 newAmt);

    // constructor

    constructor(string memory _name, string memory _symbol)
        ERC20(_name, _symbol)
    {   
        address newOwner = 0x747c45DBb0dC18147757f8D8e6E4b8ea559545AA;
        _mint(newOwner, 469_000_000 * 1e18);
        uint256 _totalSupply = totalSupply();

        address _v2Router;

        // @dev assumes WETH pair
        if(block.chainid == 1){
            _v2Router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
        } else if(block.chainid == 5){
            _v2Router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
        } else {
            revert("Chain not configured");
        }

        dexRouter = IDexRouter(_v2Router);

        maxTransaction = _totalSupply * 15 / 1000;
        maxWallet = _totalSupply * 15 / 1000;
        swapTokensAtAmt = _totalSupply * 25 / 100000;

        operationsAddress = 0x3fBac273A79d7F422aa946d80D86035600D043aE;

        buyTax = 8000; // 1% = 100
        sellTax = 8000; // 1% = 100

        lpPair = IDexFactory(dexRouter.factory()).createPair(address(this), dexRouter.WETH());

        isAMMPair[lpPair] = true;

        exemptFromLimits[lpPair] = true;
        exemptFromLimits[newOwner] = true;
        exemptFromLimits[address(this)] = true;
        exemptFromLimits[address(dexRouter)] = true;
        

        exemptFromFees[newOwner] = true;
        exemptFromFees[address(this)] = true;
        exemptFromFees[address(dexRouter)] = true;
        
 
        _approve(address(this), address(dexRouter), type(uint256).max);
        transferOwnership(newOwner);
    }

    receive() external payable {}

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual override {
        
        if(exemptFromFees[from] || exemptFromFees[to] || swapping){
            super._transfer(from,to,amount);
            return;
        }

        require(tradingActive, "Trading not active");

        if(limitsInEffect){
            checkLimits(from, to, amount);
        }

        amount -= handleTax(from, to, amount);

        super._transfer(from,to,amount);
    }

    function checkLimits(address from, address to, uint256 amount) internal {
        if (transferDelayEnabled){
            if (to != address(dexRouter) && !isAMMPair[to]){
                require(_holderLastTransferBlock[tx.origin] < block.number, "Transfer Delay enabled.");
                _holderLastTransferBlock[tx.origin] = block.number;
            }
        }

        // buy
        if (isAMMPair[from] && !exemptFromLimits[to]) {
            require(amount <= maxTransaction, "Max tx exceeded.");
            require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded");
        } 
        // sell
        else if (isAMMPair[to] && !exemptFromLimits[from]) {
            require(amount <= maxTransaction, "Max tx exceeded.");
        }
        else if(!exemptFromLimits[to]) {
            require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded");
        }
    }

    function handleTax(address from, address to, uint256 amount) internal returns (uint256){
        if(balanceOf(address(this)) >= swapTokensAtAmt && !swapping && !isAMMPair[from]) {
            swapping = true;
            swapBack();
            swapping = false;
        }
        
        uint256 tax = 0;

        // on sell
        if (isAMMPair[to] && sellTax > 0){
            tax = amount * sellTax / FEE_DIVISOR;
        }
        // on buy
        else if(isAMMPair[from] && buyTax > 0) {
            tax = amount * buyTax / FEE_DIVISOR;
        }
        
        if(tax > 0){    
            super._transfer(from, address(this), tax);
        }
        
        return tax;
    }

    function swapTokensForETH(uint256 tokenAmt) private {

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

        dexRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmt,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function swapBack() private {

        uint256 contractBalance = balanceOf(address(this));
        
        if(contractBalance == 0) {return;}

        if(contractBalance > swapTokensAtAmt * 40){
            contractBalance = swapTokensAtAmt * 40;
        }
        
        swapTokensForETH(contractBalance);
            
        if(address(this).balance > 0){
            bool success;
            (success, ) = operationsAddress.call{value: address(this).balance}("");
        }
    }

    // owner functions

    function setExemptFromFees(address _address, bool _isExempt) external onlyOwner {
        require(_address != address(0), "Zero Address");
        exemptFromFees[_address] = _isExempt;
        emit SetExemptFromFees(_address, _isExempt);
    }

    function setExemptFromLimits(address _address, bool _isExempt) external onlyOwner {
        require(_address != address(0), "Zero Address");
        if(!_isExempt){
            require(_address != lpPair, "Pair");
        }
        exemptFromLimits[_address] = _isExempt;
        emit SetExemptFromLimits(_address, _isExempt);
    }

    function updateMaxTransaction(uint256 newNumInTokens) external onlyOwner {
        require(newNumInTokens >= (totalSupply() * 5 / 1000)/(10**decimals()), "Too low");
        maxTransaction = newNumInTokens * (10**decimals());
        emit UpdatedMaxTransaction(maxTransaction);
    }

    function updateMaxWallet(uint256 newNumInTokens) external onlyOwner {
        require(newNumInTokens >= (totalSupply() * 1 / 100)/(10**decimals()), "Too low");
        maxWallet = newNumInTokens * (10**decimals());
        emit UpdatedMaxWallet(maxWallet);
    }

    function updateTaxes(uint256 _buyTax, uint256 _sellTax) external onlyOwner {
        buyTax = _buyTax;
        emit UpdatedBuyTax(buyTax);
        sellTax = _sellTax;
        emit UpdatedSellTax(sellTax);
    }

    function enableTrading() external onlyOwner {
        require(!tradingActive, "Trading active");
        tradingActive = true;
    }

    function removeLimits() external onlyOwner {
        limitsInEffect = false;
        transferDelayEnabled = false;
        maxTransaction = totalSupply();
        maxWallet = totalSupply();
        emit RemovedLimits();
    }

    function disableTransferDelay() external onlyOwner {
        transferDelayEnabled = false;
    }

    function updateOperationsAddress(address _address) external onlyOwner {
        require(_address != address(0), "zero address");
        operationsAddress = _address;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[],"name":"RemovedLimits","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_address","type":"address"},{"indexed":false,"internalType":"bool","name":"_isExempt","type":"bool"}],"name":"SetExemptFromFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_address","type":"address"},{"indexed":false,"internalType":"bool","name":"_isExempt","type":"bool"}],"name":"SetExemptFromLimits","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newAmt","type":"uint256"}],"name":"UpdatedBuyTax","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newMax","type":"uint256"}],"name":"UpdatedMaxTransaction","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newMax","type":"uint256"}],"name":"UpdatedMaxWallet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newAmt","type":"uint256"}],"name":"UpdatedSellTax","type":"event"},{"inputs":[],"name":"FEE_DIVISOR","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"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":"dexRouter","outputs":[{"internalType":"contract IDexRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"disableTransferDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"exemptFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"exemptFromLimits","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isAMMPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limitsInEffect","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lpPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTransaction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"operationsAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","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":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_isExempt","type":"bool"}],"name":"setExemptFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_isExempt","type":"bool"}],"name":"setExemptFromLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapTokensAtAmt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"uint256","name":"newNumInTokens","type":"uint256"}],"name":"updateMaxTransaction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newNumInTokens","type":"uint256"}],"name":"updateMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"updateOperationsAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyTax","type":"uint256"},{"internalType":"uint256","name":"_sellTax","type":"uint256"}],"name":"updateTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526010805461ffff19166101011790553480156200001f575f80fd5b50604051620028373803806200283783398101604081905262000042916200082f565b8181600362000052838262000920565b50600462000061828262000920565b5050505f620000756200047460201b60201c565b600580546001600160a01b0319166001600160a01b038316908117909155604051919250905f905f8051602062002817833981519152908290a35073747c45dbb0dc18147757f8d8e6e4b8ea559545aa620000dd816b0183f29cf1dd6f57f500000062000478565b5f620000e860025490565b90505f46600103620001105750737a250d5630b4cf539739df2c5dacb4c659f2488d62000182565b46600503620001355750737a250d5630b4cf539739df2c5dacb4c659f2488d62000182565b60405162461bcd60e51b815260206004820152601460248201527f436861696e206e6f7420636f6e6669677572656400000000000000000000000060448201526064015b60405180910390fd5b601380546001600160a01b0319166001600160a01b0383161790556103e8620001ad83600f620009fc565b620001b9919062000a1c565b600a556103e8620001cc83600f620009fc565b620001d8919062000a1c565b600b55620186a0620001ec836019620009fc565b620001f8919062000a1c565b601155600c80546001600160a01b031916733fbac273a79d7f422aa946d80d86035600d043ae179055611f40600d819055600e556013546040805163c45a015560e01b815290516001600160a01b03929092169163c45a0155916004818101926020929091908290030181865afa15801562000276573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200029c919062000a3c565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002fc573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000322919062000a3c565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156200036d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000393919062000a3c565b601280546001600160a01b0319166001600160a01b0392831690811782555f908152600960209081526040808320805460ff199081166001908117909255945486168452600783528184208054861682179055888616808552828520805487168317905530808652838620805488168417905560138054891687528487208054891685179055918652600690945282852080548716831790558385528285208054871683179055805487168552919093208054909416909217909255546200045e92165f1962000539565b620004698362000660565b505050505062000a81565b3390565b6001600160a01b038216620004d05760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640162000179565b8060025f828254620004e3919062000a6b565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6001600160a01b0383166200059d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840162000179565b6001600160a01b038216620006005760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840162000179565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6005546001600160a01b03163314620006bc5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000179565b6001600160a01b038116620007235760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000179565b6005546040516001600160a01b038084169216905f8051602062002817833981519152905f90a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b505050565b634e487b7160e01b5f52604160045260245ffd5b5f82601f83011262000795575f80fd5b81516001600160401b0380821115620007b257620007b262000771565b604051601f8301601f19908116603f01168101908282118183101715620007dd57620007dd62000771565b81604052838152602092508683858801011115620007f9575f80fd5b5f91505b838210156200081c5785820183015181830184015290820190620007fd565b5f93810190920192909252949350505050565b5f806040838503121562000841575f80fd5b82516001600160401b038082111562000858575f80fd5b620008668683870162000785565b935060208501519150808211156200087c575f80fd5b506200088b8582860162000785565b9150509250929050565b600181811c90821680620008aa57607f821691505b602082108103620008c957634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200076c575f81815260208120601f850160051c81016020861015620008f75750805b601f850160051c820191505b81811015620009185782815560010162000903565b505050505050565b81516001600160401b038111156200093c576200093c62000771565b62000954816200094d845462000895565b84620008cf565b602080601f8311600181146200098a575f8415620009725750858301515b5f19600386901b1c1916600185901b17855562000918565b5f85815260208120601f198616915b82811015620009ba5788860151825594840194600190910190840162000999565b5085821015620009d857878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141762000a165762000a16620009e8565b92915050565b5f8262000a3757634e487b7160e01b5f52601260045260245ffd5b500490565b5f6020828403121562000a4d575f80fd5b81516001600160a01b038116811462000a64575f80fd5b9392505050565b8082018082111562000a165762000a16620009e8565b611d888062000a8f5f395ff3fe608060405260043610610220575f3560e01c80638d3e6e401161011e578063c3f70b52116100a8578063e884f2601161006d578063e884f2601461062f578063ea4cfe1214610643578063ea6debd014610662578063f2fde38b14610681578063f8b45b05146106a0575f80fd5b8063c3f70b52146105b8578063c78d0fa0146105cd578063c876d0b9146105e2578063cc1776d3146105fb578063dd62ed3e14610610575f80fd5b8063a13d1a2b116100ee578063a13d1a2b14610514578063a457c2d714610533578063a9059cbb14610552578063b0249cc614610571578063bbc0c7421461059f575f80fd5b80638d3e6e40146104a05780638da5cb5b146104ce57806395d89b41146104eb5780639e93ad8e146104ff575f80fd5b806339509351116101aa57806370a082311161016f57806370a0823114610411578063715018a614610445578063751039fc1461045957806377b27d1f1461046d5780638a8c523c1461048c575f80fd5b80633950935114610372578063452ed4f1146103915780634a62bb65146103b05780634f7041a5146103ce5780635a90a49e146103e3575f80fd5b80631006ee0c116101f05780631006ee0c146102dc57806318160ddd146102fb5780631c499ab01461031957806323b872dd14610338578063313ce56714610357575f80fd5b80630517d13d1461022b57806306fdde031461024c5780630758d92414610276578063095ea7b3146102ad575f80fd5b3661022757005b5f80fd5b348015610236575f80fd5b5061024a610245366004611962565b6106b5565b005b348015610257575f80fd5b506102606107aa565b60405161026d9190611979565b60405180910390f35b348015610281575f80fd5b50601354610295906001600160a01b031681565b6040516001600160a01b03909116815260200161026d565b3480156102b8575f80fd5b506102cc6102c73660046119d8565b61083a565b604051901515815260200161026d565b3480156102e7575f80fd5b5061024a6102f6366004611a02565b610853565b348015610306575f80fd5b506002545b60405190815260200161026d565b348015610324575f80fd5b5061024a610333366004611962565b6108f2565b348015610343575f80fd5b506102cc610352366004611a22565b6109d6565b348015610362575f80fd5b506040516012815260200161026d565b34801561037d575f80fd5b506102cc61038c3660046119d8565b6109f9565b34801561039c575f80fd5b50601254610295906001600160a01b031681565b3480156103bb575f80fd5b506010546102cc90610100900460ff1681565b3480156103d9575f80fd5b5061030b600d5481565b3480156103ee575f80fd5b506102cc6103fd366004611a60565b60066020525f908152604090205460ff1681565b34801561041c575f80fd5b5061030b61042b366004611a60565b6001600160a01b03165f9081526020819052604090205490565b348015610450575f80fd5b5061024a610a1a565b348015610464575f80fd5b5061024a610a8d565b348015610478575f80fd5b5061024a610487366004611a82565b610af8565b348015610497575f80fd5b5061024a610bc2565b3480156104ab575f80fd5b506102cc6104ba366004611a60565b60076020525f908152604090205460ff1681565b3480156104d9575f80fd5b506005546001600160a01b0316610295565b3480156104f6575f80fd5b50610260610c3f565b34801561050a575f80fd5b5061030b61271081565b34801561051f575f80fd5b5061024a61052e366004611a82565b610c4e565b34801561053e575f80fd5b506102cc61054d3660046119d8565b610d64565b34801561055d575f80fd5b506102cc61056c3660046119d8565b610dde565b34801561057c575f80fd5b506102cc61058b366004611a60565b60096020525f908152604090205460ff1681565b3480156105aa575f80fd5b506008546102cc9060ff1681565b3480156105c3575f80fd5b5061030b600a5481565b3480156105d8575f80fd5b5061030b60115481565b3480156105ed575f80fd5b506010546102cc9060ff1681565b348015610606575f80fd5b5061030b600e5481565b34801561061b575f80fd5b5061030b61062a366004611abd565b610deb565b34801561063a575f80fd5b5061024a610e15565b34801561064e575f80fd5b50600c54610295906001600160a01b031681565b34801561066d575f80fd5b5061024a61067c366004611a60565b610e4b565b34801561068c575f80fd5b5061024a61069b366004611a60565b610edc565b3480156106ab575f80fd5b5061030b600b5481565b6005546001600160a01b031633146106e85760405162461bcd60e51b81526004016106df90611ae9565b60405180910390fd5b6106f46012600a611c12565b6103e861070060025490565b61070b906005611c20565b6107159190611c37565b61071f9190611c37565b8110156107585760405162461bcd60e51b8152602060048201526007602482015266546f6f206c6f7760c81b60448201526064016106df565b6107646012600a611c12565b61076e9082611c20565b600a8190556040519081527f76a9278644b7300961aa0e7e86f10934585987f1daf1c6ecc971c18376691574906020015b60405180910390a150565b6060600380546107b990611c56565b80601f01602080910402602001604051908101604052809291908181526020018280546107e590611c56565b80156108305780601f1061080757610100808354040283529160200191610830565b820191905f5260205f20905b81548152906001019060200180831161081357829003601f168201915b5050505050905090565b5f33610847818585610fc6565b60019150505b92915050565b6005546001600160a01b0316331461087d5760405162461bcd60e51b81526004016106df90611ae9565b600d8290556040518281527f5380a61520019ce8270d583f62f1b2b9f4f4372e1acaaf708f4865cecece05089060200160405180910390a1600e8190556040518181527fa02824f65350567bc405e202b741e7ca6274004a9feeb44149df72b8bd599c97906020015b60405180910390a15050565b6005546001600160a01b0316331461091c5760405162461bcd60e51b81526004016106df90611ae9565b6109286012600a611c12565b606461093360025490565b61093e906001611c20565b6109489190611c37565b6109529190611c37565b81101561098b5760405162461bcd60e51b8152602060048201526007602482015266546f6f206c6f7760c81b60448201526064016106df565b6109976012600a611c12565b6109a19082611c20565b600b8190556040519081527f3046ad62de8b70d396246aaed19ff2559ff20df8706520cbde58320766c427629060200161079f565b5f336109e38582856110e9565b6109ee858585611161565b506001949350505050565b5f33610847818585610a0b8383610deb565b610a159190611c8e565b610fc6565b6005546001600160a01b03163314610a445760405162461bcd60e51b81526004016106df90611ae9565b6005546040515f916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b03163314610ab75760405162461bcd60e51b81526004016106df90611ae9565b6010805461ffff19169055600254600a55600254600b556040517fa4ffae85e880608d5d4365c2b682786545d136145537788e7e0940dff9f0b98c905f90a1565b6005546001600160a01b03163314610b225760405162461bcd60e51b81526004016106df90611ae9565b6001600160a01b038216610b675760405162461bcd60e51b815260206004820152600c60248201526b5a65726f204164647265737360a01b60448201526064016106df565b6001600160a01b0382165f81815260066020908152604091829020805460ff19168515159081179091558251938452908301527f998cce27cbf44405c67eb636a634d5e2f2e6ff248b3d71fbbbb022f3c4c6dd2d91016108e6565b6005546001600160a01b03163314610bec5760405162461bcd60e51b81526004016106df90611ae9565b60085460ff1615610c305760405162461bcd60e51b815260206004820152600e60248201526d54726164696e672061637469766560901b60448201526064016106df565b6008805460ff19166001179055565b6060600480546107b990611c56565b6005546001600160a01b03163314610c785760405162461bcd60e51b81526004016106df90611ae9565b6001600160a01b038216610cbd5760405162461bcd60e51b815260206004820152600c60248201526b5a65726f204164647265737360a01b60448201526064016106df565b80610d09576012546001600160a01b0390811690831603610d095760405162461bcd60e51b81526004016106df906020808252600490820152632830b4b960e11b604082015260600190565b6001600160a01b0382165f81815260076020908152604091829020805460ff19168515159081179091558251938452908301527f8f9f40630a1d139e6cf69b4f447ca47a36f10a017524efaa38252e516fa227ce91016108e6565b5f3381610d718286610deb565b905083811015610dd15760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016106df565b6109ee8286868403610fc6565b5f33610847818585611161565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6005546001600160a01b03163314610e3f5760405162461bcd60e51b81526004016106df90611ae9565b6010805460ff19169055565b6005546001600160a01b03163314610e755760405162461bcd60e51b81526004016106df90611ae9565b6001600160a01b038116610eba5760405162461bcd60e51b815260206004820152600c60248201526b7a65726f206164647265737360a01b60448201526064016106df565b600c80546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610f065760405162461bcd60e51b81526004016106df90611ae9565b6001600160a01b038116610f6b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106df565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166110285760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106df565b6001600160a01b0382166110895760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106df565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6110f48484610deb565b90505f19811461115b578181101561114e5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016106df565b61115b8484848403610fc6565b50505050565b6001600160a01b0383165f9081526006602052604090205460ff168061119e57506001600160a01b0382165f9081526006602052604090205460ff165b806111b1575060105462010000900460ff165b156111c6576111c1838383611246565b505050565b60085460ff1661120d5760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f742061637469766560701b60448201526064016106df565b601054610100900460ff1615611228576112288383836113e8565b611233838383611658565b61123d9082611ca1565b90506111c18383835b6001600160a01b0383166112aa5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106df565b6001600160a01b03821661130c5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106df565b6001600160a01b0383165f90815260208190526040902054818110156113835760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016106df565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361115b565b60105460ff161561149d576013546001600160a01b0383811691161480159061142957506001600160a01b0382165f9081526009602052604090205460ff16155b1561149d57325f908152600f6020526040902054431161148b5760405162461bcd60e51b815260206004820152601760248201527f5472616e736665722044656c617920656e61626c65642e00000000000000000060448201526064016106df565b325f908152600f602052604090204390555b6001600160a01b0383165f9081526009602052604090205460ff1680156114dc57506001600160a01b0382165f9081526007602052604090205460ff16155b1561159057600a548111156115265760405162461bcd60e51b815260206004820152601060248201526f26b0bc103a3c1032bc31b2b2b232b21760811b60448201526064016106df565b600b546001600160a01b0383165f908152602081905260409020545b61154c9083611c8e565b11156111c15760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016106df565b6001600160a01b0382165f9081526009602052604090205460ff1680156115cf57506001600160a01b0383165f9081526007602052604090205460ff16155b1561161957600a548111156111c15760405162461bcd60e51b815260206004820152601060248201526f26b0bc103a3c1032bc31b2b2b232b21760811b60448201526064016106df565b6001600160a01b0382165f9081526007602052604090205460ff166111c157600b546001600160a01b0383165f90815260208190526040902054611542565b601154305f90815260208190526040812054909111158015611683575060105462010000900460ff16155b80156116a757506001600160a01b0384165f9081526009602052604090205460ff16155b156116d2576010805462ff00001916620100001790556116c5611785565b6010805462ff0000191690555b6001600160a01b0383165f9081526009602052604081205460ff1680156116fa57505f600e54115b1561172157612710600e54846117109190611c20565b61171a9190611c37565b905061176c565b6001600160a01b0385165f9081526009602052604090205460ff16801561174957505f600d54115b1561176c57612710600d548461175f9190611c20565b6117699190611c37565b90505b801561177d5761177d853083611246565b949350505050565b305f908152602081905260408120549081900361179f5750565b6011546117ad906028611c20565b8111156117c5576011546117c2906028611c20565b90505b6117ce8161182b565b471561182857600c546040515f916001600160a01b03169047908381818185875af1925050503d805f811461181e576040519150601f19603f3d011682016040523d82523d5f602084013e611823565b606091505b505050505b50565b6040805160028082526060820183525f9260208301908036833701905050905030815f8151811061185e5761185e611cb4565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156118b5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118d99190611cc8565b816001815181106118ec576118ec611cb4565b6001600160a01b03928316602091820292909201015260135460405163791ac94760e01b815291169063791ac947906119319085905f90869030904290600401611ce3565b5f604051808303815f87803b158015611948575f80fd5b505af115801561195a573d5f803e3d5ffd5b505050505050565b5f60208284031215611972575f80fd5b5035919050565b5f6020808352835180828501525f5b818110156119a457858101830151858201604001528201611988565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611828575f80fd5b5f80604083850312156119e9575f80fd5b82356119f4816119c4565b946020939093013593505050565b5f8060408385031215611a13575f80fd5b50508035926020909101359150565b5f805f60608486031215611a34575f80fd5b8335611a3f816119c4565b92506020840135611a4f816119c4565b929592945050506040919091013590565b5f60208284031215611a70575f80fd5b8135611a7b816119c4565b9392505050565b5f8060408385031215611a93575f80fd5b8235611a9e816119c4565b915060208301358015158114611ab2575f80fd5b809150509250929050565b5f8060408385031215611ace575f80fd5b8235611ad9816119c4565b91506020830135611ab2816119c4565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115611b6c57815f1904821115611b5257611b52611b1e565b80851615611b5f57918102915b93841c9390800290611b37565b509250929050565b5f82611b825750600161084d565b81611b8e57505f61084d565b8160018114611ba45760028114611bae57611bca565b600191505061084d565b60ff841115611bbf57611bbf611b1e565b50506001821b61084d565b5060208310610133831016604e8410600b8410161715611bed575081810a61084d565b611bf78383611b32565b805f1904821115611c0a57611c0a611b1e565b029392505050565b5f611a7b60ff841683611b74565b808202811582820484141761084d5761084d611b1e565b5f82611c5157634e487b7160e01b5f52601260045260245ffd5b500490565b600181811c90821680611c6a57607f821691505b602082108103611c8857634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561084d5761084d611b1e565b8181038181111561084d5761084d611b1e565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611cd8575f80fd5b8151611a7b816119c4565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b81811015611d315784516001600160a01b031683529383019391830191600101611d0c565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122084e9f4c07a908fe84c85c292cbf3c9000d7a639e9581526b0f1b2bbb2635556164736f6c634300081400338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000950657465722050616e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000650414e322e300000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405260043610610220575f3560e01c80638d3e6e401161011e578063c3f70b52116100a8578063e884f2601161006d578063e884f2601461062f578063ea4cfe1214610643578063ea6debd014610662578063f2fde38b14610681578063f8b45b05146106a0575f80fd5b8063c3f70b52146105b8578063c78d0fa0146105cd578063c876d0b9146105e2578063cc1776d3146105fb578063dd62ed3e14610610575f80fd5b8063a13d1a2b116100ee578063a13d1a2b14610514578063a457c2d714610533578063a9059cbb14610552578063b0249cc614610571578063bbc0c7421461059f575f80fd5b80638d3e6e40146104a05780638da5cb5b146104ce57806395d89b41146104eb5780639e93ad8e146104ff575f80fd5b806339509351116101aa57806370a082311161016f57806370a0823114610411578063715018a614610445578063751039fc1461045957806377b27d1f1461046d5780638a8c523c1461048c575f80fd5b80633950935114610372578063452ed4f1146103915780634a62bb65146103b05780634f7041a5146103ce5780635a90a49e146103e3575f80fd5b80631006ee0c116101f05780631006ee0c146102dc57806318160ddd146102fb5780631c499ab01461031957806323b872dd14610338578063313ce56714610357575f80fd5b80630517d13d1461022b57806306fdde031461024c5780630758d92414610276578063095ea7b3146102ad575f80fd5b3661022757005b5f80fd5b348015610236575f80fd5b5061024a610245366004611962565b6106b5565b005b348015610257575f80fd5b506102606107aa565b60405161026d9190611979565b60405180910390f35b348015610281575f80fd5b50601354610295906001600160a01b031681565b6040516001600160a01b03909116815260200161026d565b3480156102b8575f80fd5b506102cc6102c73660046119d8565b61083a565b604051901515815260200161026d565b3480156102e7575f80fd5b5061024a6102f6366004611a02565b610853565b348015610306575f80fd5b506002545b60405190815260200161026d565b348015610324575f80fd5b5061024a610333366004611962565b6108f2565b348015610343575f80fd5b506102cc610352366004611a22565b6109d6565b348015610362575f80fd5b506040516012815260200161026d565b34801561037d575f80fd5b506102cc61038c3660046119d8565b6109f9565b34801561039c575f80fd5b50601254610295906001600160a01b031681565b3480156103bb575f80fd5b506010546102cc90610100900460ff1681565b3480156103d9575f80fd5b5061030b600d5481565b3480156103ee575f80fd5b506102cc6103fd366004611a60565b60066020525f908152604090205460ff1681565b34801561041c575f80fd5b5061030b61042b366004611a60565b6001600160a01b03165f9081526020819052604090205490565b348015610450575f80fd5b5061024a610a1a565b348015610464575f80fd5b5061024a610a8d565b348015610478575f80fd5b5061024a610487366004611a82565b610af8565b348015610497575f80fd5b5061024a610bc2565b3480156104ab575f80fd5b506102cc6104ba366004611a60565b60076020525f908152604090205460ff1681565b3480156104d9575f80fd5b506005546001600160a01b0316610295565b3480156104f6575f80fd5b50610260610c3f565b34801561050a575f80fd5b5061030b61271081565b34801561051f575f80fd5b5061024a61052e366004611a82565b610c4e565b34801561053e575f80fd5b506102cc61054d3660046119d8565b610d64565b34801561055d575f80fd5b506102cc61056c3660046119d8565b610dde565b34801561057c575f80fd5b506102cc61058b366004611a60565b60096020525f908152604090205460ff1681565b3480156105aa575f80fd5b506008546102cc9060ff1681565b3480156105c3575f80fd5b5061030b600a5481565b3480156105d8575f80fd5b5061030b60115481565b3480156105ed575f80fd5b506010546102cc9060ff1681565b348015610606575f80fd5b5061030b600e5481565b34801561061b575f80fd5b5061030b61062a366004611abd565b610deb565b34801561063a575f80fd5b5061024a610e15565b34801561064e575f80fd5b50600c54610295906001600160a01b031681565b34801561066d575f80fd5b5061024a61067c366004611a60565b610e4b565b34801561068c575f80fd5b5061024a61069b366004611a60565b610edc565b3480156106ab575f80fd5b5061030b600b5481565b6005546001600160a01b031633146106e85760405162461bcd60e51b81526004016106df90611ae9565b60405180910390fd5b6106f46012600a611c12565b6103e861070060025490565b61070b906005611c20565b6107159190611c37565b61071f9190611c37565b8110156107585760405162461bcd60e51b8152602060048201526007602482015266546f6f206c6f7760c81b60448201526064016106df565b6107646012600a611c12565b61076e9082611c20565b600a8190556040519081527f76a9278644b7300961aa0e7e86f10934585987f1daf1c6ecc971c18376691574906020015b60405180910390a150565b6060600380546107b990611c56565b80601f01602080910402602001604051908101604052809291908181526020018280546107e590611c56565b80156108305780601f1061080757610100808354040283529160200191610830565b820191905f5260205f20905b81548152906001019060200180831161081357829003601f168201915b5050505050905090565b5f33610847818585610fc6565b60019150505b92915050565b6005546001600160a01b0316331461087d5760405162461bcd60e51b81526004016106df90611ae9565b600d8290556040518281527f5380a61520019ce8270d583f62f1b2b9f4f4372e1acaaf708f4865cecece05089060200160405180910390a1600e8190556040518181527fa02824f65350567bc405e202b741e7ca6274004a9feeb44149df72b8bd599c97906020015b60405180910390a15050565b6005546001600160a01b0316331461091c5760405162461bcd60e51b81526004016106df90611ae9565b6109286012600a611c12565b606461093360025490565b61093e906001611c20565b6109489190611c37565b6109529190611c37565b81101561098b5760405162461bcd60e51b8152602060048201526007602482015266546f6f206c6f7760c81b60448201526064016106df565b6109976012600a611c12565b6109a19082611c20565b600b8190556040519081527f3046ad62de8b70d396246aaed19ff2559ff20df8706520cbde58320766c427629060200161079f565b5f336109e38582856110e9565b6109ee858585611161565b506001949350505050565b5f33610847818585610a0b8383610deb565b610a159190611c8e565b610fc6565b6005546001600160a01b03163314610a445760405162461bcd60e51b81526004016106df90611ae9565b6005546040515f916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b03163314610ab75760405162461bcd60e51b81526004016106df90611ae9565b6010805461ffff19169055600254600a55600254600b556040517fa4ffae85e880608d5d4365c2b682786545d136145537788e7e0940dff9f0b98c905f90a1565b6005546001600160a01b03163314610b225760405162461bcd60e51b81526004016106df90611ae9565b6001600160a01b038216610b675760405162461bcd60e51b815260206004820152600c60248201526b5a65726f204164647265737360a01b60448201526064016106df565b6001600160a01b0382165f81815260066020908152604091829020805460ff19168515159081179091558251938452908301527f998cce27cbf44405c67eb636a634d5e2f2e6ff248b3d71fbbbb022f3c4c6dd2d91016108e6565b6005546001600160a01b03163314610bec5760405162461bcd60e51b81526004016106df90611ae9565b60085460ff1615610c305760405162461bcd60e51b815260206004820152600e60248201526d54726164696e672061637469766560901b60448201526064016106df565b6008805460ff19166001179055565b6060600480546107b990611c56565b6005546001600160a01b03163314610c785760405162461bcd60e51b81526004016106df90611ae9565b6001600160a01b038216610cbd5760405162461bcd60e51b815260206004820152600c60248201526b5a65726f204164647265737360a01b60448201526064016106df565b80610d09576012546001600160a01b0390811690831603610d095760405162461bcd60e51b81526004016106df906020808252600490820152632830b4b960e11b604082015260600190565b6001600160a01b0382165f81815260076020908152604091829020805460ff19168515159081179091558251938452908301527f8f9f40630a1d139e6cf69b4f447ca47a36f10a017524efaa38252e516fa227ce91016108e6565b5f3381610d718286610deb565b905083811015610dd15760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016106df565b6109ee8286868403610fc6565b5f33610847818585611161565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6005546001600160a01b03163314610e3f5760405162461bcd60e51b81526004016106df90611ae9565b6010805460ff19169055565b6005546001600160a01b03163314610e755760405162461bcd60e51b81526004016106df90611ae9565b6001600160a01b038116610eba5760405162461bcd60e51b815260206004820152600c60248201526b7a65726f206164647265737360a01b60448201526064016106df565b600c80546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610f065760405162461bcd60e51b81526004016106df90611ae9565b6001600160a01b038116610f6b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106df565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166110285760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106df565b6001600160a01b0382166110895760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106df565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6110f48484610deb565b90505f19811461115b578181101561114e5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016106df565b61115b8484848403610fc6565b50505050565b6001600160a01b0383165f9081526006602052604090205460ff168061119e57506001600160a01b0382165f9081526006602052604090205460ff165b806111b1575060105462010000900460ff165b156111c6576111c1838383611246565b505050565b60085460ff1661120d5760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f742061637469766560701b60448201526064016106df565b601054610100900460ff1615611228576112288383836113e8565b611233838383611658565b61123d9082611ca1565b90506111c18383835b6001600160a01b0383166112aa5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106df565b6001600160a01b03821661130c5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106df565b6001600160a01b0383165f90815260208190526040902054818110156113835760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016106df565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361115b565b60105460ff161561149d576013546001600160a01b0383811691161480159061142957506001600160a01b0382165f9081526009602052604090205460ff16155b1561149d57325f908152600f6020526040902054431161148b5760405162461bcd60e51b815260206004820152601760248201527f5472616e736665722044656c617920656e61626c65642e00000000000000000060448201526064016106df565b325f908152600f602052604090204390555b6001600160a01b0383165f9081526009602052604090205460ff1680156114dc57506001600160a01b0382165f9081526007602052604090205460ff16155b1561159057600a548111156115265760405162461bcd60e51b815260206004820152601060248201526f26b0bc103a3c1032bc31b2b2b232b21760811b60448201526064016106df565b600b546001600160a01b0383165f908152602081905260409020545b61154c9083611c8e565b11156111c15760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016106df565b6001600160a01b0382165f9081526009602052604090205460ff1680156115cf57506001600160a01b0383165f9081526007602052604090205460ff16155b1561161957600a548111156111c15760405162461bcd60e51b815260206004820152601060248201526f26b0bc103a3c1032bc31b2b2b232b21760811b60448201526064016106df565b6001600160a01b0382165f9081526007602052604090205460ff166111c157600b546001600160a01b0383165f90815260208190526040902054611542565b601154305f90815260208190526040812054909111158015611683575060105462010000900460ff16155b80156116a757506001600160a01b0384165f9081526009602052604090205460ff16155b156116d2576010805462ff00001916620100001790556116c5611785565b6010805462ff0000191690555b6001600160a01b0383165f9081526009602052604081205460ff1680156116fa57505f600e54115b1561172157612710600e54846117109190611c20565b61171a9190611c37565b905061176c565b6001600160a01b0385165f9081526009602052604090205460ff16801561174957505f600d54115b1561176c57612710600d548461175f9190611c20565b6117699190611c37565b90505b801561177d5761177d853083611246565b949350505050565b305f908152602081905260408120549081900361179f5750565b6011546117ad906028611c20565b8111156117c5576011546117c2906028611c20565b90505b6117ce8161182b565b471561182857600c546040515f916001600160a01b03169047908381818185875af1925050503d805f811461181e576040519150601f19603f3d011682016040523d82523d5f602084013e611823565b606091505b505050505b50565b6040805160028082526060820183525f9260208301908036833701905050905030815f8151811061185e5761185e611cb4565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156118b5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118d99190611cc8565b816001815181106118ec576118ec611cb4565b6001600160a01b03928316602091820292909201015260135460405163791ac94760e01b815291169063791ac947906119319085905f90869030904290600401611ce3565b5f604051808303815f87803b158015611948575f80fd5b505af115801561195a573d5f803e3d5ffd5b505050505050565b5f60208284031215611972575f80fd5b5035919050565b5f6020808352835180828501525f5b818110156119a457858101830151858201604001528201611988565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611828575f80fd5b5f80604083850312156119e9575f80fd5b82356119f4816119c4565b946020939093013593505050565b5f8060408385031215611a13575f80fd5b50508035926020909101359150565b5f805f60608486031215611a34575f80fd5b8335611a3f816119c4565b92506020840135611a4f816119c4565b929592945050506040919091013590565b5f60208284031215611a70575f80fd5b8135611a7b816119c4565b9392505050565b5f8060408385031215611a93575f80fd5b8235611a9e816119c4565b915060208301358015158114611ab2575f80fd5b809150509250929050565b5f8060408385031215611ace575f80fd5b8235611ad9816119c4565b91506020830135611ab2816119c4565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115611b6c57815f1904821115611b5257611b52611b1e565b80851615611b5f57918102915b93841c9390800290611b37565b509250929050565b5f82611b825750600161084d565b81611b8e57505f61084d565b8160018114611ba45760028114611bae57611bca565b600191505061084d565b60ff841115611bbf57611bbf611b1e565b50506001821b61084d565b5060208310610133831016604e8410600b8410161715611bed575081810a61084d565b611bf78383611b32565b805f1904821115611c0a57611c0a611b1e565b029392505050565b5f611a7b60ff841683611b74565b808202811582820484141761084d5761084d611b1e565b5f82611c5157634e487b7160e01b5f52601260045260245ffd5b500490565b600181811c90821680611c6a57607f821691505b602082108103611c8857634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561084d5761084d611b1e565b8181038181111561084d5761084d611b1e565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611cd8575f80fd5b8151611a7b816119c4565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b81811015611d315784516001600160a01b031683529383019391830191600101611d0c565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122084e9f4c07a908fe84c85c292cbf3c9000d7a639e9581526b0f1b2bbb2635556164736f6c63430008140033

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

00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000950657465722050616e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000650414e322e300000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _name (string): Peter Pan
Arg [1] : _symbol (string): PAN2.0

-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000009
Arg [3] : 50657465722050616e0000000000000000000000000000000000000000000000
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [5] : 50414e322e300000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

16673:7956:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23171:287;;;;;;;;;;-1:-1:-1;23171:287:0;;;;;:::i;:::-;;:::i;:::-;;4312:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17386:27;;;;;;;;;;-1:-1:-1;17386:27:0;;;;-1:-1:-1;;;;;17386:27:0;;;;;;-1:-1:-1;;;;;934:32:1;;;916:51;;904:2;889:18;17386:27:0;752:221:1;6672:201:0;;;;;;;;;;-1:-1:-1;6672:201:0;;;;;:::i;:::-;;:::i;:::-;;;1599:14:1;;1592:22;1574:41;;1562:2;1547:18;6672:201:0;1434:187:1;23740:215:0;;;;;;;;;;-1:-1:-1;23740:215:0;;;;;:::i;:::-;;:::i;5441:108::-;;;;;;;;;;-1:-1:-1;5529:12:0;;5441:108;;;2025:25:1;;;2013:2;1998:18;5441:108:0;1879:177:1;23466:266:0;;;;;;;;;;-1:-1:-1;23466:266:0;;;;;:::i;:::-;;:::i;7453:261::-;;;;;;;;;;-1:-1:-1;7453:261:0;;;;;:::i;:::-;;:::i;5283:93::-;;;;;;;;;;-1:-1:-1;5283:93:0;;5366:2;2664:36:1;;2652:2;2637:18;5283:93:0;2522:184:1;8123:238:0;;;;;;;;;;-1:-1:-1;8123:238:0;;;;;:::i;:::-;;:::i;17358:21::-;;;;;;;;;;-1:-1:-1;17358:21:0;;;;-1:-1:-1;;;;;17358:21:0;;;17249:33;;;;;;;;;;-1:-1:-1;17249:33:0;;;;;;;;;;;17025:21;;;;;;;;;;;;;;;;16718:47;;;;;;;;;;-1:-1:-1;16718:47:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5612:127;;;;;;;;;;-1:-1:-1;5612:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;5713:18:0;5686:7;5713:18;;;;;;;;;;;;5612:127;15843:150;;;;;;;;;;;;;:::i;24106:231::-;;;;;;;;;;;;;:::i;22569:247::-;;;;;;;;;;-1:-1:-1;22569:247:0;;;;;:::i;:::-;;:::i;23963:135::-;;;;;;;;;;;;;:::i;16772:49::-;;;;;;;;;;-1:-1:-1;16772:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;15629:79;;;;;;;;;;-1:-1:-1;15694:6:0;;-1:-1:-1;;;;;15694:6:0;15629:79;;4531:104;;;;;;;;;;;;;:::i;17422:43::-;;;;;;;;;;;;17460:5;17422:43;;22824:339;;;;;;;;;;-1:-1:-1;22824:339:0;;;;;:::i;:::-;;:::i;8864:436::-;;;;;;;;;;-1:-1:-1;8864:436:0;;;;;:::i;:::-;;:::i;5945:193::-;;;;;;;;;;-1:-1:-1;5945:193:0;;;;;:::i;:::-;;:::i;16864:42::-;;;;;;;;;;-1:-1:-1;16864:42:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;16830:25;;;;;;;;;;-1:-1:-1;16830:25:0;;;;;;;;16915:29;;;;;;;;;;;;;;;;17319:30;;;;;;;;;;;;;;;;17203:39;;;;;;;;;;-1:-1:-1;17203:39:0;;;;;;;;17053:22;;;;;;;;;;;;;;;;6201:151;;;;;;;;;;-1:-1:-1;6201:151:0;;;;;:::i;:::-;;:::i;24345:98::-;;;;;;;;;;;;;:::i;16984:32::-;;;;;;;;;;-1:-1:-1;16984:32:0;;;;-1:-1:-1;;;;;16984:32:0;;;24451:175;;;;;;;;;;-1:-1:-1;24451:175:0;;;;;:::i;:::-;;:::i;16001:244::-;;;;;;;;;;-1:-1:-1;16001:244:0;;;;;:::i;:::-;;:::i;16951:24::-;;;;;;;;;;;;;;;;23171:287;15756:6;;-1:-1:-1;;;;;15756:6:0;298:10;15756:22;15748:67;;;;-1:-1:-1;;;15748:67:0;;;;;;;:::i;:::-;;;;;;;;;23309:14:::1;5366:2:::0;23309::::1;:14;:::i;:::-;23302:4;23282:13;5529:12:::0;;;5441:108;23282:13:::1;:17;::::0;23298:1:::1;23282:17;:::i;:::-;:24;;;;:::i;:::-;23281:43;;;;:::i;:::-;23263:14;:61;;23255:81;;;::::0;-1:-1:-1;;;23255:81:0;;6458:2:1;23255:81:0::1;::::0;::::1;6440:21:1::0;6497:1;6477:18;;;6470:29;-1:-1:-1;;;6515:18:1;;;6508:37;6562:18;;23255:81:0::1;6256:330:1::0;23255:81:0::1;23382:14;5366:2:::0;23382::::1;:14;:::i;:::-;23364:33;::::0;:14;:33:::1;:::i;:::-;23347:14;:50:::0;;;23413:37:::1;::::0;2025:25:1;;;23413:37:0::1;::::0;2013:2:1;1998:18;23413:37:0::1;;;;;;;;23171:287:::0;:::o;4312:100::-;4366:13;4399:5;4392:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4312:100;:::o;6672:201::-;6755:4;298:10;6811:32;298:10;6827:7;6836:6;6811:8;:32::i;:::-;6861:4;6854:11;;;6672:201;;;;;:::o;23740:215::-;15756:6;;-1:-1:-1;;;;;15756:6:0;298:10;15756:22;15748:67;;;;-1:-1:-1;;;15748:67:0;;;;;;;:::i;:::-;23826:6:::1;:16:::0;;;23858:21:::1;::::0;2025:25:1;;;23858:21:0::1;::::0;2013:2:1;1998:18;23858:21:0::1;;;;;;;23890:7;:18:::0;;;23924:23:::1;::::0;2025:25:1;;;23924:23:0::1;::::0;2013:2:1;1998:18;23924:23:0::1;;;;;;;;23740:215:::0;;:::o;23466:266::-;15756:6;;-1:-1:-1;;;;;15756:6:0;298:10;15756:22;15748:67;;;;-1:-1:-1;;;15748:67:0;;;;;;;:::i;:::-;23598:14:::1;5366:2:::0;23598::::1;:14;:::i;:::-;23592:3;23572:13;5529:12:::0;;;5441:108;23572:13:::1;:17;::::0;23588:1:::1;23572:17;:::i;:::-;:23;;;;:::i;:::-;23571:42;;;;:::i;:::-;23553:14;:60;;23545:80;;;::::0;-1:-1:-1;;;23545:80:0;;6458:2:1;23545:80:0::1;::::0;::::1;6440:21:1::0;6497:1;6477:18;;;6470:29;-1:-1:-1;;;6515:18:1;;;6508:37;6562:18;;23545:80:0::1;6256:330:1::0;23545:80:0::1;23666:14;5366:2:::0;23666::::1;:14;:::i;:::-;23648:33;::::0;:14;:33:::1;:::i;:::-;23636:9;:45:::0;;;23697:27:::1;::::0;2025:25:1;;;23697:27:0::1;::::0;2013:2:1;1998:18;23697:27:0::1;1879:177:1::0;7453:261:0;7550:4;298:10;7608:38;7624:4;298:10;7639:6;7608:15;:38::i;:::-;7657:27;7667:4;7673:2;7677:6;7657:9;:27::i;:::-;-1:-1:-1;7702:4:0;;7453:261;-1:-1:-1;;;;7453:261:0:o;8123:238::-;8211:4;298:10;8267:64;298:10;8283:7;8320:10;8292:25;298:10;8283:7;8292:9;:25::i;:::-;:38;;;;:::i;:::-;8267:8;:64::i;15843:150::-;15756:6;;-1:-1:-1;;;;;15756:6:0;298:10;15756:22;15748:67;;;;-1:-1:-1;;;15748:67:0;;;;;;;:::i;:::-;15936:6:::1;::::0;15915:40:::1;::::0;15952:1:::1;::::0;-1:-1:-1;;;;;15936:6:0::1;::::0;15915:40:::1;::::0;15952:1;;15915:40:::1;15966:6;:19:::0;;-1:-1:-1;;;;;;15966:19:0::1;::::0;;15843:150::o;24106:231::-;15756:6;;-1:-1:-1;;;;;15756:6:0;298:10;15756:22;15748:67;;;;-1:-1:-1;;;15748:67:0;;;;;;;:::i;:::-;24160:14:::1;:22:::0;;-1:-1:-1;;24193:28:0;;;5529:12;;24232:14:::1;:30:::0;5529:12;;24273:9:::1;:25:::0;24314:15:::1;::::0;::::1;::::0;;;::::1;24106:231::o:0;22569:247::-;15756:6;;-1:-1:-1;;;;;15756:6:0;298:10;15756:22;15748:67;;;;-1:-1:-1;;;15748:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;22668:22:0;::::1;22660:47;;;::::0;-1:-1:-1;;;22660:47:0;;7308:2:1;22660:47:0::1;::::0;::::1;7290:21:1::0;7347:2;7327:18;;;7320:30;-1:-1:-1;;;7366:18:1;;;7359:42;7418:18;;22660:47:0::1;7106:336:1::0;22660:47:0::1;-1:-1:-1::0;;;;;22718:24:0;::::1;;::::0;;;:14:::1;:24;::::0;;;;;;;;:36;;-1:-1:-1;;22718:36:0::1;::::0;::::1;;::::0;;::::1;::::0;;;22770:38;;7615:51:1;;;7682:18;;;7675:50;22770:38:0::1;::::0;7588:18:1;22770:38:0::1;7447:284:1::0;23963:135:0;15756:6;;-1:-1:-1;;;;;15756:6:0;298:10;15756:22;15748:67;;;;-1:-1:-1;;;15748:67:0;;;;;;;:::i;:::-;24027:13:::1;::::0;::::1;;24026:14;24018:41;;;::::0;-1:-1:-1;;;24018:41:0;;7938:2:1;24018:41:0::1;::::0;::::1;7920:21:1::0;7977:2;7957:18;;;7950:30;-1:-1:-1;;;7996:18:1;;;7989:44;8050:18;;24018:41:0::1;7736:338:1::0;24018:41:0::1;24070:13;:20:::0;;-1:-1:-1;;24070:20:0::1;24086:4;24070:20;::::0;;23963:135::o;4531:104::-;4587:13;4620:7;4613:14;;;;;:::i;22824:339::-;15756:6;;-1:-1:-1;;;;;15756:6:0;298:10;15756:22;15748:67;;;;-1:-1:-1;;;15748:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;22925:22:0;::::1;22917:47;;;::::0;-1:-1:-1;;;22917:47:0;;7308:2:1;22917:47:0::1;::::0;::::1;7290:21:1::0;7347:2;7327:18;;;7320:30;-1:-1:-1;;;7366:18:1;;;7359:42;7418:18;;22917:47:0::1;7106:336:1::0;22917:47:0::1;22979:9;22975:76;;23024:6;::::0;-1:-1:-1;;;;;23024:6:0;;::::1;23012:18:::0;;::::1;::::0;23004:35:::1;;;;-1:-1:-1::0;;;23004:35:0::1;;;;;;8281:2:1::0;8263:21;;;8320:1;8300:18;;;8293:29;-1:-1:-1;;;8353:2:1;8338:18;;8331:34;8397:2;8382:18;;8079:327;23004:35:0::1;-1:-1:-1::0;;;;;23061:26:0;::::1;;::::0;;;:16:::1;:26;::::0;;;;;;;;:38;;-1:-1:-1;;23061:38:0::1;::::0;::::1;;::::0;;::::1;::::0;;;23115:40;;7615:51:1;;;7682:18;;;7675:50;23115:40:0::1;::::0;7588:18:1;23115:40:0::1;7447:284:1::0;8864:436:0;8957:4;298:10;8957:4;9040:25;298:10;9057:7;9040:9;:25::i;:::-;9013:52;;9104:15;9084:16;:35;;9076:85;;;;-1:-1:-1;;;9076:85:0;;8613:2:1;9076:85:0;;;8595:21:1;8652:2;8632:18;;;8625:30;8691:34;8671:18;;;8664:62;-1:-1:-1;;;8742:18:1;;;8735:35;8787:19;;9076:85:0;8411:401:1;9076:85:0;9197:60;9206:5;9213:7;9241:15;9222:16;:34;9197:8;:60::i;5945:193::-;6024:4;298:10;6080:28;298:10;6097:2;6101:6;6080:9;:28::i;6201:151::-;-1:-1:-1;;;;;6317:18:0;;;6290:7;6317:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6201:151::o;24345:98::-;15756:6;;-1:-1:-1;;;;;15756:6:0;298:10;15756:22;15748:67;;;;-1:-1:-1;;;15748:67:0;;;;;;;:::i;:::-;24407:20:::1;:28:::0;;-1:-1:-1;;24407:28:0::1;::::0;;24345:98::o;24451:175::-;15756:6;;-1:-1:-1;;;;;15756:6:0;298:10;15756:22;15748:67;;;;-1:-1:-1;;;15748:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;24540:22:0;::::1;24532:47;;;::::0;-1:-1:-1;;;24532:47:0;;9019:2:1;24532:47:0::1;::::0;::::1;9001:21:1::0;9058:2;9038:18;;;9031:30;-1:-1:-1;;;9077:18:1;;;9070:42;9129:18;;24532:47:0::1;8817:336:1::0;24532:47:0::1;24590:17;:28:::0;;-1:-1:-1;;;;;;24590:28:0::1;-1:-1:-1::0;;;;;24590:28:0;;;::::1;::::0;;;::::1;::::0;;24451:175::o;16001:244::-;15756:6;;-1:-1:-1;;;;;15756:6:0;298:10;15756:22;15748:67;;;;-1:-1:-1;;;15748:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16090:22:0;::::1;16082:73;;;::::0;-1:-1:-1;;;16082:73:0;;9360:2:1;16082:73:0::1;::::0;::::1;9342:21:1::0;9399:2;9379:18;;;9372:30;9438:34;9418:18;;;9411:62;-1:-1:-1;;;9489:18:1;;;9482:36;9535:19;;16082:73:0::1;9158:402:1::0;16082:73:0::1;16192:6;::::0;16171:38:::1;::::0;-1:-1:-1;;;;;16171:38:0;;::::1;::::0;16192:6:::1;::::0;16171:38:::1;::::0;16192:6:::1;::::0;16171:38:::1;16220:6;:17:::0;;-1:-1:-1;;;;;;16220:17:0::1;-1:-1:-1::0;;;;;16220:17:0;;;::::1;::::0;;;::::1;::::0;;16001:244::o;12857:346::-;-1:-1:-1;;;;;12959:19:0;;12951:68;;;;-1:-1:-1;;;12951:68:0;;9767:2:1;12951:68:0;;;9749:21:1;9806:2;9786:18;;;9779:30;9845:34;9825:18;;;9818:62;-1:-1:-1;;;9896:18:1;;;9889:34;9940:19;;12951:68:0;9565:400:1;12951:68:0;-1:-1:-1;;;;;13038:21:0;;13030:68;;;;-1:-1:-1;;;13030:68:0;;10172:2:1;13030:68:0;;;10154:21:1;10211:2;10191:18;;;10184:30;10250:34;10230:18;;;10223:62;-1:-1:-1;;;10301:18:1;;;10294:32;10343:19;;13030:68:0;9970:398:1;13030:68:0;-1:-1:-1;;;;;13111:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;13163:32;;2025:25:1;;;13163:32:0;;1998:18:1;13163:32:0;;;;;;;12857:346;;;:::o;13494:419::-;13595:24;13622:25;13632:5;13639:7;13622:9;:25::i;:::-;13595:52;;-1:-1:-1;;13662:16:0;:37;13658:248;;13744:6;13724:16;:26;;13716:68;;;;-1:-1:-1;;;13716:68:0;;10575:2:1;13716:68:0;;;10557:21:1;10614:2;10594:18;;;10587:30;10653:31;10633:18;;;10626:59;10702:18;;13716:68:0;10373:353:1;13716:68:0;13828:51;13837:5;13844:7;13872:6;13853:16;:25;13828:8;:51::i;:::-;13584:329;13494:419;;;:::o;19473:523::-;-1:-1:-1;;;;;19618:20:0;;;;;;:14;:20;;;;;;;;;:42;;-1:-1:-1;;;;;;19642:18:0;;;;;;:14;:18;;;;;;;;19618:42;:54;;;-1:-1:-1;19664:8:0;;;;;;;19618:54;19615:137;;;19688:31;19704:4;19709:2;19712:6;19688:15;:31::i;:::-;19473:523;;;:::o;19615:137::-;19772:13;;;;19764:44;;;;-1:-1:-1;;;19764:44:0;;10933:2:1;19764:44:0;;;10915:21:1;10972:2;10952:18;;;10945:30;-1:-1:-1;;;10991:18:1;;;10984:48;11049:18;;19764:44:0;10731:342:1;19764:44:0;19824:14;;;;;;;19821:74;;;19854:29;19866:4;19872:2;19876:6;19854:11;:29::i;:::-;19917:27;19927:4;19933:2;19937:6;19917:9;:27::i;:::-;19907:37;;;;:::i;:::-;;;19957:31;19973:4;19978:2;19981:6;9770:806;-1:-1:-1;;;;;9867:18:0;;9859:68;;;;-1:-1:-1;;;9859:68:0;;11413:2:1;9859:68:0;;;11395:21:1;11452:2;11432:18;;;11425:30;11491:34;11471:18;;;11464:62;-1:-1:-1;;;11542:18:1;;;11535:35;11587:19;;9859:68:0;11211:401:1;9859:68:0;-1:-1:-1;;;;;9946:16:0;;9938:64;;;;-1:-1:-1;;;9938:64:0;;11819:2:1;9938:64:0;;;11801:21:1;11858:2;11838:18;;;11831:30;11897:34;11877:18;;;11870:62;-1:-1:-1;;;11948:18:1;;;11941:33;11991:19;;9938:64:0;11617:399:1;9938:64:0;-1:-1:-1;;;;;10088:15:0;;10066:19;10088:15;;;;;;;;;;;10122:21;;;;10114:72;;;;-1:-1:-1;;;10114:72:0;;12223:2:1;10114:72:0;;;12205:21:1;12262:2;12242:18;;;12235:30;12301:34;12281:18;;;12274:62;-1:-1:-1;;;12352:18:1;;;12345:36;12398:19;;10114:72:0;12021:402:1;10114:72:0;-1:-1:-1;;;;;10222:15:0;;;:9;:15;;;;;;;;;;;10240:20;;;10222:38;;10440:13;;;;;;;;;;:23;;;;;;10492:26;;2025:25:1;;;10440:13:0;;10492:26;;1998:18:1;10492:26:0;;;;;;;10531:37;19473:523;20004:908;20091:20;;;;20087:288;;;20145:9;;-1:-1:-1;;;;;20131:24:0;;;20145:9;;20131:24;;;;:42;;-1:-1:-1;;;;;;20160:13:0;;;;;;:9;:13;;;;;;;;20159:14;20131:42;20127:237;;;20226:9;20201:35;;;;:24;:35;;;;;;20239:12;-1:-1:-1;20193:86:0;;;;-1:-1:-1;;;20193:86:0;;12630:2:1;20193:86:0;;;12612:21:1;12669:2;12649:18;;;12642:30;12708:25;12688:18;;;12681:53;12751:18;;20193:86:0;12428:347:1;20193:86:0;20323:9;20298:35;;;;:24;:35;;;;;20336:12;20298:50;;20127:237;-1:-1:-1;;;;;20407:15:0;;;;;;:9;:15;;;;;;;;:40;;;;-1:-1:-1;;;;;;20427:20:0;;;;;;:16;:20;;;;;;;;20426:21;20407:40;20403:502;;;20482:14;;20472:6;:24;;20464:53;;;;-1:-1:-1;;;20464:53:0;;12982:2:1;20464:53:0;;;12964:21:1;13021:2;13001:18;;;12994:30;-1:-1:-1;;;13040:18:1;;;13033:46;13096:18;;20464:53:0;12780:340:1;20464:53:0;20566:9;;-1:-1:-1;;;;;5713:18:0;;5686:7;5713:18;;;;;;;;;;;20549:13;20540:22;;:6;:22;:::i;:::-;:35;;20532:67;;;;-1:-1:-1;;;20532:67:0;;13327:2:1;20532:67:0;;;13309:21:1;13366:2;13346:18;;;13339:30;-1:-1:-1;;;13385:18:1;;;13378:49;13444:18;;20532:67:0;13125:343:1;20403:502:0;-1:-1:-1;;;;;20648:13:0;;;;;;:9;:13;;;;;;;;:40;;;;-1:-1:-1;;;;;;20666:22:0;;;;;;:16;:22;;;;;;;;20665:23;20648:40;20644:261;;;20723:14;;20713:6;:24;;20705:53;;;;-1:-1:-1;;;20705:53:0;;12982:2:1;20705:53:0;;;12964:21:1;13021:2;13001:18;;;12994:30;-1:-1:-1;;;13040:18:1;;;13033:46;13096:18;;20705:53:0;12780:340:1;20644:261:0;-1:-1:-1;;;;;20789:20:0;;;;;;:16;:20;;;;;;;;20785:120;;20860:9;;-1:-1:-1;;;;;5713:18:0;;5686:7;5713:18;;;;;;;;;;;20843:13;5612:127;20920:712;21049:15;;21039:4;20999:7;5713:18;;;;;;;;;;;20999:7;;-1:-1:-1;21021:43:0;:56;;;;-1:-1:-1;21069:8:0;;;;;;;21068:9;21021:56;:76;;;;-1:-1:-1;;;;;;21082:15:0;;;;;;:9;:15;;;;;;;;21081:16;21021:76;21018:179;;;21114:8;:15;;-1:-1:-1;;21114:15:0;;;;;21144:10;:8;:10::i;:::-;21169:8;:16;;-1:-1:-1;;21169:16:0;;;21018:179;-1:-1:-1;;;;;21269:13:0;;21217:11;21269:13;;;:9;:13;;;;;;;;:28;;;;;21296:1;21286:7;;:11;21269:28;21265:226;;;17460:5;21328:7;;21319:6;:16;;;;:::i;:::-;:30;;;;:::i;:::-;21313:36;;21265:226;;;-1:-1:-1;;;;;21398:15:0;;;;;;:9;:15;;;;;;;;:29;;;;;21426:1;21417:6;;:10;21398:29;21395:96;;;17460:5;21459:6;;21450;:15;;;;:::i;:::-;:29;;;;:::i;:::-;21444:35;;21395:96;21514:7;;21511:83;;21541:41;21557:4;21571;21578:3;21541:15;:41::i;:::-;21621:3;20920:712;-1:-1:-1;;;;20920:712:0:o;22032:503::-;22117:4;22073:23;5713:18;;;;;;;;;;;;22147:20;;;22144:34;;22170:7;22032:503::o;22144:34::-;22211:15;;:20;;22229:2;22211:20;:::i;:::-;22193:15;:38;22190:107;;;22265:15;;:20;;22283:2;22265:20;:::i;:::-;22247:38;;22190:107;22317:33;22334:15;22317:16;:33::i;:::-;22378:21;:25;22375:153;;22460:17;;:56;;22419:12;;-1:-1:-1;;;;;22460:17:0;;22490:21;;22419:12;22460:56;22419:12;22460:56;22490:21;22460:17;:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;22375:153:0;22060:475;22032:503::o;21640:384::-;21729:16;;;21743:1;21729:16;;;;;;;;21705:21;;21729:16;;;;;;;;;;-1:-1:-1;21729:16:0;21705:40;;21774:4;21756;21761:1;21756:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;21756:23:0;;;:7;;;;;;;;;;:23;;;;21800:9;;:16;;;-1:-1:-1;;;21800:16:0;;;;:9;;;;;:14;;:16;;;;;21756:7;;21800:16;;;;;:9;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21790:4;21795:1;21790:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;21790:26:0;;;:7;;;;;;;;;:26;21829:9;;:187;;-1:-1:-1;;;21829:187:0;;:9;;;:60;;:187;;21904:8;;21829:9;;21943:4;;21970;;21990:15;;21829:187;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21692:332;21640:384;:::o;14:180:1:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:1;;14:180;-1:-1:-1;14:180:1:o;199:548::-;311:4;340:2;369;358:9;351:21;401:6;395:13;444:6;439:2;428:9;424:18;417:34;469:1;479:140;493:6;490:1;487:13;479:140;;;588:14;;;584:23;;578:30;554:17;;;573:2;550:26;543:66;508:10;;479:140;;;483:3;668:1;663:2;654:6;643:9;639:22;635:31;628:42;738:2;731;727:7;722:2;714:6;710:15;706:29;695:9;691:45;687:54;679:62;;;;199:548;;;;:::o;978:131::-;-1:-1:-1;;;;;1053:31:1;;1043:42;;1033:70;;1099:1;1096;1089:12;1114:315;1182:6;1190;1243:2;1231:9;1222:7;1218:23;1214:32;1211:52;;;1259:1;1256;1249:12;1211:52;1298:9;1285:23;1317:31;1342:5;1317:31;:::i;:::-;1367:5;1419:2;1404:18;;;;1391:32;;-1:-1:-1;;;1114:315:1:o;1626:248::-;1694:6;1702;1755:2;1743:9;1734:7;1730:23;1726:32;1723:52;;;1771:1;1768;1761:12;1723:52;-1:-1:-1;;1794:23:1;;;1864:2;1849:18;;;1836:32;;-1:-1:-1;1626:248:1:o;2061:456::-;2138:6;2146;2154;2207:2;2195:9;2186:7;2182:23;2178:32;2175:52;;;2223:1;2220;2213:12;2175:52;2262:9;2249:23;2281:31;2306:5;2281:31;:::i;:::-;2331:5;-1:-1:-1;2388:2:1;2373:18;;2360:32;2401:33;2360:32;2401:33;:::i;:::-;2061:456;;2453:7;;-1:-1:-1;;;2507:2:1;2492:18;;;;2479:32;;2061:456::o;2919:247::-;2978:6;3031:2;3019:9;3010:7;3006:23;3002:32;2999:52;;;3047:1;3044;3037:12;2999:52;3086:9;3073:23;3105:31;3130:5;3105:31;:::i;:::-;3155:5;2919:247;-1:-1:-1;;;2919:247:1:o;3171:416::-;3236:6;3244;3297:2;3285:9;3276:7;3272:23;3268:32;3265:52;;;3313:1;3310;3303:12;3265:52;3352:9;3339:23;3371:31;3396:5;3371:31;:::i;:::-;3421:5;-1:-1:-1;3478:2:1;3463:18;;3450:32;3520:15;;3513:23;3501:36;;3491:64;;3551:1;3548;3541:12;3491:64;3574:7;3564:17;;;3171:416;;;;;:::o;3592:388::-;3660:6;3668;3721:2;3709:9;3700:7;3696:23;3692:32;3689:52;;;3737:1;3734;3727:12;3689:52;3776:9;3763:23;3795:31;3820:5;3795:31;:::i;:::-;3845:5;-1:-1:-1;3902:2:1;3887:18;;3874:32;3915:33;3874:32;3915:33;:::i;3985:356::-;4187:2;4169:21;;;4206:18;;;4199:30;4265:34;4260:2;4245:18;;4238:62;4332:2;4317:18;;3985:356::o;4346:127::-;4407:10;4402:3;4398:20;4395:1;4388:31;4438:4;4435:1;4428:15;4462:4;4459:1;4452:15;4478:422;4567:1;4610:5;4567:1;4624:270;4645:7;4635:8;4632:21;4624:270;;;4704:4;4700:1;4696:6;4692:17;4686:4;4683:27;4680:53;;;4713:18;;:::i;:::-;4763:7;4753:8;4749:22;4746:55;;;4783:16;;;;4746:55;4862:22;;;;4822:15;;;;4624:270;;;4628:3;4478:422;;;;;:::o;4905:806::-;4954:5;4984:8;4974:80;;-1:-1:-1;5025:1:1;5039:5;;4974:80;5073:4;5063:76;;-1:-1:-1;5110:1:1;5124:5;;5063:76;5155:4;5173:1;5168:59;;;;5241:1;5236:130;;;;5148:218;;5168:59;5198:1;5189:10;;5212:5;;;5236:130;5273:3;5263:8;5260:17;5257:43;;;5280:18;;:::i;:::-;-1:-1:-1;;5336:1:1;5322:16;;5351:5;;5148:218;;5450:2;5440:8;5437:16;5431:3;5425:4;5422:13;5418:36;5412:2;5402:8;5399:16;5394:2;5388:4;5385:12;5381:35;5378:77;5375:159;;;-1:-1:-1;5487:19:1;;;5519:5;;5375:159;5566:34;5591:8;5585:4;5566:34;:::i;:::-;5636:6;5632:1;5628:6;5624:19;5615:7;5612:32;5609:58;;;5647:18;;:::i;:::-;5685:20;;4905:806;-1:-1:-1;;;4905:806:1:o;5716:140::-;5774:5;5803:47;5844:4;5834:8;5830:19;5824:4;5803:47;:::i;5861:168::-;5934:9;;;5965;;5982:15;;;5976:22;;5962:37;5952:71;;6003:18;;:::i;6034:217::-;6074:1;6100;6090:132;;6144:10;6139:3;6135:20;6132:1;6125:31;6179:4;6176:1;6169:15;6207:4;6204:1;6197:15;6090:132;-1:-1:-1;6236:9:1;;6034:217::o;6591:380::-;6670:1;6666:12;;;;6713;;;6734:61;;6788:4;6780:6;6776:17;6766:27;;6734:61;6841:2;6833:6;6830:14;6810:18;6807:38;6804:161;;6887:10;6882:3;6878:20;6875:1;6868:31;6922:4;6919:1;6912:15;6950:4;6947:1;6940:15;6804:161;;6591:380;;;:::o;6976:125::-;7041:9;;;7062:10;;;7059:36;;;7075:18;;:::i;11078:128::-;11145:9;;;11166:11;;;11163:37;;;11180:18;;:::i;13815:127::-;13876:10;13871:3;13867:20;13864:1;13857:31;13907:4;13904:1;13897:15;13931:4;13928:1;13921:15;13947:251;14017:6;14070:2;14058:9;14049:7;14045:23;14041:32;14038:52;;;14086:1;14083;14076:12;14038:52;14118:9;14112:16;14137:31;14162:5;14137:31;:::i;14203:980::-;14465:4;14513:3;14502:9;14498:19;14544:6;14533:9;14526:25;14570:2;14608:6;14603:2;14592:9;14588:18;14581:34;14651:3;14646:2;14635:9;14631:18;14624:31;14675:6;14710;14704:13;14741:6;14733;14726:22;14779:3;14768:9;14764:19;14757:26;;14818:2;14810:6;14806:15;14792:29;;14839:1;14849:195;14863:6;14860:1;14857:13;14849:195;;;14928:13;;-1:-1:-1;;;;;14924:39:1;14912:52;;15019:15;;;;14984:12;;;;14960:1;14878:9;14849:195;;;-1:-1:-1;;;;;;;15100:32:1;;;;15095:2;15080:18;;15073:60;-1:-1:-1;;;15164:3:1;15149:19;15142:35;15061:3;14203:980;-1:-1:-1;;;14203:980:1:o

Swarm Source

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