ETH Price: $3,157.72 (+2.84%)
Gas: 1 Gwei

Token

ETH ETF Token (ETHETF)
 

Overview

Max Total Supply

64,376,757.582869038745677466 ETHETF

Holders

976

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
28,000.578539670016896656 ETHETF

Value
$0.00
0x2c9f4d872c0904c5efcd054ad9881501e6a77d2a
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:
ETHETFToken

Compiler Version
v0.8.22+commit.4fc1097e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2023-11-13
*/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.22;

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

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

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

/**
 * @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(address _newOwner) {
        _transferOwnership(_newOwner);
    }

    /**
     * @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. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby disabling any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

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

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

contract ETHETFToken is Context, IERC20Metadata, Ownable {
    mapping(address => uint256) private _balances;

    mapping(address => mapping(address => uint256)) private _allowances;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;
    uint8 private constant _decimals = 18;
    uint256 public burnPercentage = 2;
    uint256 public constant hardCap = 100_000_000 ether;
    bool public tradingEnabled;
    address public immutable taxRemovalWallet;
    address public pairAddress;

    event BurnPercentageRemoved(uint256 timestamp);
    event TradingEnabled(uint256 timestamp);
    event PairAddressSet(address pair, uint256 timestamp);

    /**
     * @dev Contract constructor.
     * @param name_ The name of the token.
     * @param symbol_ The symbol of the token.
     */
    constructor(
        string memory name_,
        string memory symbol_,
        address newOwner_,
        address taxRemovalWallet_
    ) Ownable(newOwner_) {
        _name = name_;
        _symbol = symbol_;
        _mint(newOwner_, hardCap);
        taxRemovalWallet = taxRemovalWallet_;
    }

    /**
     * @dev Decreases the burn percentage to 0
     */
    function removeBurnPercentage() external {
        require(_msgSender() == taxRemovalWallet, "Not the tax removal wallet");
        require(burnPercentage != 0, "Already removed");
        burnPercentage = 0;
        emit BurnPercentageRemoved(block.timestamp);
    }

    /**
     * @dev Enables the trading
     */
    function enableTrading() external onlyOwner {
        require(!tradingEnabled, "Already enabled");
        tradingEnabled = true;
        emit TradingEnabled(block.timestamp);
    }

    /**
     * @dev Sets the pair address
     */
    function setPairAddress(address _pair) external onlyOwner {
        require(pairAddress == address(0), "Already set");
        pairAddress = _pair;
        emit PairAddressSet(_pair, block.timestamp);
    }

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

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

    /**
     * @dev Returns the number of decimals used for token display.
     * @return The number of decimals.
     */
    function decimals() public view virtual override returns (uint8) {
        return _decimals;
    }

    /**
     * @dev Returns the total supply of the token.
     * @return The total supply.
     */
    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

    /**
     * @dev Returns the balance of the specified account.
     * @param account The address to check the balance for.
     * @return The balance of the account.
     */
    function balanceOf(
        address account
    ) public view virtual override returns (uint256) {
        return _balances[account];
    }

    /**
     * @dev Transfers tokens from the caller to a specified recipient.
     * @param recipient The address to transfer tokens to.
     * @param amount The amount of tokens to transfer.
     * @return A boolean value indicating whether the transfer was successful.
     */
    function transfer(
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        require(
            tradingEnabled || _msgSender() == owner() || recipient == owner(),
            "Trading not enabled"
        );
        uint256 burnTax;
        if (_msgSender() != owner() && recipient != owner()) {
            burnTax = ((amount * burnPercentage) / 100);
        }
        if (burnTax > 0) _burn(_msgSender(), burnTax);
        _transfer(_msgSender(), recipient, amount - burnTax);
        return true;
    }

    /**
     * @dev Returns the amount of tokens that the spender is allowed to spend on behalf of the owner.
     * @param from The address that approves the spending.
     * @param to The address that is allowed to spend.
     * @return The remaining allowance for the spender.
     */
    function allowance(
        address from,
        address to
    ) public view virtual override returns (uint256) {
        return _allowances[from][to];
    }

    /**
     * @dev Approves the specified address to spend the specified amount of tokens on behalf of the caller.
     * @param to The address to approve the spending for.
     * @param amount The amount of tokens to approve.
     * @return A boolean value indicating whether the approval was successful.
     */
    function approve(
        address to,
        uint256 amount
    ) public virtual override returns (bool) {
        _approve(_msgSender(), to, amount);
        return true;
    }

    /**
     * @dev Transfers tokens from one address to another.
     * @param sender The address to transfer tokens from.
     * @param recipient The address to transfer tokens to.
     * @param amount The amount of tokens to transfer.
     * @return A boolean value indicating whether the transfer was successful.
     */
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        require(
            tradingEnabled || sender == owner() || recipient == owner(),
            "Trading not enabled"
        );
        uint256 burnTax;
        if (
            sender != owner() &&
            recipient != owner() &&
            recipient != pairAddress
        ) {
            burnTax = ((amount * burnPercentage) / 100);
        }
        if (burnTax > 0) _burn(sender, burnTax);
        _transfer(sender, recipient, amount - burnTax);
        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(
            currentAllowance >= amount,
            "ERC20: transfer amount exceeds allowance"
        );
        unchecked {
            _approve(sender, _msgSender(), currentAllowance - amount);
        }

        return true;
    }

    /**
     * @dev Increases the allowance of the specified address to spend tokens on behalf of the caller.
     * @param to The address to increase the allowance for.
     * @param addedValue The amount of tokens to increase the allowance by.
     * @return A boolean value indicating whether the increase was successful.
     */
    function increaseAllowance(
        address to,
        uint256 addedValue
    ) public virtual returns (bool) {
        _approve(_msgSender(), to, _allowances[_msgSender()][to] + addedValue);
        return true;
    }

    /**
     * @dev Decreases the allowance granted by the owner of the tokens to `to` account.
     * @param to The account allowed to spend the tokens.
     * @param subtractedValue The amount of tokens to decrease the allowance by.
     * @return A boolean value indicating whether the operation succeeded.
     */
    function decreaseAllowance(
        address to,
        uint256 subtractedValue
    ) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[_msgSender()][to];
        require(
            currentAllowance >= subtractedValue,
            "ERC20: decreased allowance below zero"
        );
        unchecked {
            _approve(_msgSender(), to, currentAllowance - subtractedValue);
        }

        return true;
    }

    /**
     * @dev Transfers `amount` tokens from `sender` to `recipient`.
     * @param sender The account to transfer tokens from.
     * @param recipient The account to transfer tokens to.
     * @param amount The amount of tokens to transfer.
     */
    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(amount > 0, "ERC20: transfer amount zero");
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        uint256 senderBalance = _balances[sender];
        require(
            senderBalance >= amount,
            "ERC20: transfer amount exceeds balance"
        );
        unchecked {
            _balances[sender] = senderBalance - amount;
        }
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);
    }

    /**
     * @dev Creates `amount` tokens and assigns them to `account`.
     * @param account The account to assign the newly created tokens to.
     * @param amount The amount of tokens to create.
     */
    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

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

    /**
     * @dev Destroys `amount` tokens from `account`, reducing the total supply.
     * @param account The account to burn tokens from.
     * @param amount The amount of tokens to burn.
     */
    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

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

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

    /**
     * @dev Destroys `amount` tokens from the caller's account, reducing the total supply.
     * @param amount The amount of tokens to burn.
     */
    function burn(uint256 amount) external {
        _burn(_msgSender(), amount);
    }

    /**
     * @dev Sets `amount` as the allowance of `to` over the caller's tokens.
     * @param from The account granting the allowance.
     * @param to The account allowed to spend the tokens.
     * @param amount The amount of tokens to allow.
     */
    function _approve(
        address from,
        address to,
        uint256 amount
    ) internal virtual {
        require(from != address(0), "ERC20: approve from the zero address");
        require(to != address(0), "ERC20: approve to the zero address");

        _allowances[from][to] = amount;
        emit Approval(from, to, amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"address","name":"newOwner_","type":"address"},{"internalType":"address","name":"taxRemovalWallet_","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":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"BurnPercentageRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"pair","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"PairAddressSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"TradingEnabled","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":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"burnPercentage","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":"to","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"hardCap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pairAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeBurnPercentage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_pair","type":"address"}],"name":"setPairAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxRemovalWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60a0604052600260065534801562000015575f80fd5b5060405162002ef738038062002ef783398181016040528101906200003b9190620004bf565b816200004d81620000cd60201b60201c565b5083600490816200005f9190620007a3565b508260059081620000719190620007a3565b506200008f826a52b7d2dcc80cd2e40000006200018e60201b60201c565b8073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250505050505062000998565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620001ff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001f690620008e5565b60405180910390fd5b8060035f82825462000212919062000932565b925050819055508060015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825462000267919062000932565b925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620002cd91906200097d565b60405180910390a35050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6200033a82620002f2565b810181811067ffffffffffffffff821117156200035c576200035b62000302565b5b80604052505050565b5f62000370620002d9565b90506200037e82826200032f565b919050565b5f67ffffffffffffffff821115620003a0576200039f62000302565b5b620003ab82620002f2565b9050602081019050919050565b5f5b83811015620003d7578082015181840152602081019050620003ba565b5f8484015250505050565b5f620003f8620003f28462000383565b62000365565b905082815260208101848484011115620004175762000416620002ee565b5b62000424848285620003b8565b509392505050565b5f82601f830112620004435762000442620002ea565b5b815162000455848260208601620003e2565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f62000489826200045e565b9050919050565b6200049b816200047d565b8114620004a6575f80fd5b50565b5f81519050620004b98162000490565b92915050565b5f805f8060808587031215620004da57620004d9620002e2565b5b5f85015167ffffffffffffffff811115620004fa57620004f9620002e6565b5b62000508878288016200042c565b945050602085015167ffffffffffffffff8111156200052c576200052b620002e6565b5b6200053a878288016200042c565b93505060406200054d87828801620004a9565b92505060606200056087828801620004a9565b91505092959194509250565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680620005bb57607f821691505b602082108103620005d157620005d062000576565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620006357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620005f8565b620006418683620005f8565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6200068b620006856200067f8462000659565b62000662565b62000659565b9050919050565b5f819050919050565b620006a6836200066b565b620006be620006b58262000692565b84845462000604565b825550505050565b5f90565b620006d4620006c6565b620006e18184846200069b565b505050565b5b818110156200070857620006fc5f82620006ca565b600181019050620006e7565b5050565b601f82111562000757576200072181620005d7565b6200072c84620005e9565b810160208510156200073c578190505b620007546200074b85620005e9565b830182620006e6565b50505b505050565b5f82821c905092915050565b5f620007795f19846008026200075c565b1980831691505092915050565b5f62000793838362000768565b9150826002028217905092915050565b620007ae826200056c565b67ffffffffffffffff811115620007ca57620007c962000302565b5b620007d68254620005a3565b620007e38282856200070c565b5f60209050601f83116001811462000819575f841562000804578287015190505b62000810858262000786565b8655506200087f565b601f1984166200082986620005d7565b5f5b8281101562000852578489015182556001820191506020850194506020810190506200082b565b868310156200087257848901516200086e601f89168262000768565b8355505b6001600288020188555050505b505050505050565b5f82825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f620008cd601f8362000887565b9150620008da8262000897565b602082019050919050565b5f6020820190508181035f830152620008fe81620008bf565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6200093e8262000659565b91506200094b8362000659565b925082820190508082111562000966576200096562000905565b5b92915050565b620009778162000659565b82525050565b5f602082019050620009925f8301846200096c565b92915050565b60805161253f620009b85f395f81816108960152610913015261253f5ff3fe608060405234801561000f575f80fd5b506004361061014b575f3560e01c806373fa270e116100c1578063a8b089821161007a578063a8b0898214610367578063a9059cbb14610385578063dd62ed3e146103b5578063f01f20df146103e5578063f2fde38b14610403578063fb86a4041461041f5761014b565b806373fa270e146102cb5780638a8c523c146102d55780638da5cb5b146102df57806395d89b41146102fd578063a22d48321461031b578063a457c2d7146103375761014b565b80633950935111610113578063395093511461020957806342966c68146102395780634ada218b1461025557806360970f8d1461027357806370a0823114610291578063715018a6146102c15761014b565b806306fdde031461014f578063095ea7b31461016d57806318160ddd1461019d57806323b872dd146101bb578063313ce567146101eb575b5f80fd5b61015761043d565b6040516101649190611866565b60405180910390f35b61018760048036038101906101829190611917565b6104cd565b604051610194919061196f565b60405180910390f35b6101a56104ea565b6040516101b29190611997565b60405180910390f35b6101d560048036038101906101d091906119b0565b6104f3565b6040516101e2919061196f565b60405180910390f35b6101f36107bf565b6040516102009190611a1b565b60405180910390f35b610223600480360381019061021e9190611917565b6107c7565b604051610230919061196f565b60405180910390f35b610253600480360381019061024e9190611a34565b61086e565b005b61025d610882565b60405161026a919061196f565b60405180910390f35b61027b610894565b6040516102889190611a6e565b60405180910390f35b6102ab60048036038101906102a69190611a87565b6108b8565b6040516102b89190611997565b60405180910390f35b6102c96108fe565b005b6102d3610911565b005b6102dd610a2a565b005b6102e7610ad4565b6040516102f49190611a6e565b60405180910390f35b610305610afb565b6040516103129190611866565b60405180910390f35b61033560048036038101906103309190611a87565b610b8b565b005b610351600480360381019061034c9190611917565b610ca0565b60405161035e919061196f565b60405180910390f35b61036f610d86565b60405161037c9190611a6e565b60405180910390f35b61039f600480360381019061039a9190611917565b610dac565b6040516103ac919061196f565b60405180910390f35b6103cf60048036038101906103ca9190611ab2565b610f5e565b6040516103dc9190611997565b60405180910390f35b6103ed610fe0565b6040516103fa9190611997565b60405180910390f35b61041d60048036038101906104189190611a87565b610fe6565b005b610427611068565b6040516104349190611997565b60405180910390f35b60606004805461044c90611b1d565b80601f016020809104026020016040519081016040528092919081815260200182805461047890611b1d565b80156104c35780601f1061049a576101008083540402835291602001916104c3565b820191905f5260205f20905b8154815290600101906020018083116104a657829003601f168201915b5050505050905090565b5f6104e06104d9611077565b848461107e565b6001905092915050565b5f600354905090565b5f60075f9054906101000a900460ff16806105405750610511610ad4565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8061057d575061054e610ad4565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b6105bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105b390611b97565b60405180910390fd5b5f6105c5610ad4565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156106335750610603610ad4565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561068d5750600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156106af576064600654846106a29190611be2565b6106ac9190611c50565b90505b5f8111156106c2576106c18582611241565b5b6106d8858583866106d39190611c80565b6113f9565b5f60025f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61071f611077565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508381101561079e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079590611d23565b60405180910390fd5b6107b2866107aa611077565b86840361107e565b6001925050509392505050565b5f6012905090565b5f6108646107d3611077565b848460025f6107e0611077565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461085f9190611d41565b61107e565b6001905092915050565b61087f610879611077565b82611241565b50565b60075f9054906101000a900460ff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61090661169d565b61090f5f61171b565b565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16610950611077565b73ffffffffffffffffffffffffffffffffffffffff16146109a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099d90611dbe565b60405180910390fd5b5f600654036109ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e190611e26565b60405180910390fd5b5f6006819055507f553be7960c9e0811a341c6c89c504377f82cad90c7e7ab06a050b4929ec36afb42604051610a209190611997565b60405180910390a1565b610a3261169d565b60075f9054906101000a900460ff1615610a81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7890611e8e565b60405180910390fd5b600160075f6101000a81548160ff0219169083151502179055507fb3da2db3dfc3778f99852546c6e9ab39ec253f9de7b0847afec61bd27878e92342604051610aca9190611997565b60405180910390a1565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060058054610b0a90611b1d565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3690611b1d565b8015610b815780601f10610b5857610100808354040283529160200191610b81565b820191905f5260205f20905b815481529060010190602001808311610b6457829003601f168201915b5050505050905090565b610b9361169d565b5f73ffffffffffffffffffffffffffffffffffffffff16600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1a90611ef6565b60405180910390fd5b80600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f54a9afc3c3a43e46bc21a5220348a3b563898d151f23aee70c91191a5a2eeba08142604051610c95929190611f14565b60405180910390a150565b5f8060025f610cad611077565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015610d67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5e90611fab565b60405180910390fd5b610d7b610d72611077565b8585840361107e565b600191505092915050565b600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60075f9054906101000a900460ff1680610e005750610dca610ad4565b73ffffffffffffffffffffffffffffffffffffffff16610de8611077565b73ffffffffffffffffffffffffffffffffffffffff16145b80610e3d5750610e0e610ad4565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b610e7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7390611b97565b60405180910390fd5b5f610e85610ad4565b73ffffffffffffffffffffffffffffffffffffffff16610ea3611077565b73ffffffffffffffffffffffffffffffffffffffff1614158015610efa5750610eca610ad4565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15610f1c57606460065484610f0f9190611be2565b610f199190611c50565b90505b5f811115610f3657610f35610f2f611077565b82611241565b5b610f53610f41611077565b858386610f4e9190611c80565b6113f9565b600191505092915050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60065481565b610fee61169d565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361105c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161105390612039565b60405180910390fd5b6110658161171b565b50565b6a52b7d2dcc80cd2e400000081565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e3906120c7565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361115a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115190612155565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112349190611997565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036112af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a6906121e3565b60405180910390fd5b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905081811015611333576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132a90612271565b60405180910390fd5b81810360015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160035f8282546113889190611c80565b925050819055505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113ec9190611997565b60405180910390a3505050565b5f811161143b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611432906122d9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036114a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a090612367565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611517576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150e906123f5565b60405180910390fd5b5f60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561159b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159290612483565b60405180910390fd5b81810360015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461162b9190611d41565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161168f9190611997565b60405180910390a350505050565b6116a5611077565b73ffffffffffffffffffffffffffffffffffffffff166116c3610ad4565b73ffffffffffffffffffffffffffffffffffffffff1614611719576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611710906124eb565b60405180910390fd5b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156118135780820151818401526020810190506117f8565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611838826117dc565b61184281856117e6565b93506118528185602086016117f6565b61185b8161181e565b840191505092915050565b5f6020820190508181035f83015261187e818461182e565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6118b38261188a565b9050919050565b6118c3816118a9565b81146118cd575f80fd5b50565b5f813590506118de816118ba565b92915050565b5f819050919050565b6118f6816118e4565b8114611900575f80fd5b50565b5f81359050611911816118ed565b92915050565b5f806040838503121561192d5761192c611886565b5b5f61193a858286016118d0565b925050602061194b85828601611903565b9150509250929050565b5f8115159050919050565b61196981611955565b82525050565b5f6020820190506119825f830184611960565b92915050565b611991816118e4565b82525050565b5f6020820190506119aa5f830184611988565b92915050565b5f805f606084860312156119c7576119c6611886565b5b5f6119d4868287016118d0565b93505060206119e5868287016118d0565b92505060406119f686828701611903565b9150509250925092565b5f60ff82169050919050565b611a1581611a00565b82525050565b5f602082019050611a2e5f830184611a0c565b92915050565b5f60208284031215611a4957611a48611886565b5b5f611a5684828501611903565b91505092915050565b611a68816118a9565b82525050565b5f602082019050611a815f830184611a5f565b92915050565b5f60208284031215611a9c57611a9b611886565b5b5f611aa9848285016118d0565b91505092915050565b5f8060408385031215611ac857611ac7611886565b5b5f611ad5858286016118d0565b9250506020611ae6858286016118d0565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680611b3457607f821691505b602082108103611b4757611b46611af0565b5b50919050565b7f54726164696e67206e6f7420656e61626c6564000000000000000000000000005f82015250565b5f611b816013836117e6565b9150611b8c82611b4d565b602082019050919050565b5f6020820190508181035f830152611bae81611b75565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611bec826118e4565b9150611bf7836118e4565b9250828202611c05816118e4565b91508282048414831517611c1c57611c1b611bb5565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611c5a826118e4565b9150611c65836118e4565b925082611c7557611c74611c23565b5b828204905092915050565b5f611c8a826118e4565b9150611c95836118e4565b9250828203905081811115611cad57611cac611bb5565b5b92915050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f611d0d6028836117e6565b9150611d1882611cb3565b604082019050919050565b5f6020820190508181035f830152611d3a81611d01565b9050919050565b5f611d4b826118e4565b9150611d56836118e4565b9250828201905080821115611d6e57611d6d611bb5565b5b92915050565b7f4e6f7420746865207461782072656d6f76616c2077616c6c65740000000000005f82015250565b5f611da8601a836117e6565b9150611db382611d74565b602082019050919050565b5f6020820190508181035f830152611dd581611d9c565b9050919050565b7f416c72656164792072656d6f76656400000000000000000000000000000000005f82015250565b5f611e10600f836117e6565b9150611e1b82611ddc565b602082019050919050565b5f6020820190508181035f830152611e3d81611e04565b9050919050565b7f416c726561647920656e61626c656400000000000000000000000000000000005f82015250565b5f611e78600f836117e6565b9150611e8382611e44565b602082019050919050565b5f6020820190508181035f830152611ea581611e6c565b9050919050565b7f416c7265616479207365740000000000000000000000000000000000000000005f82015250565b5f611ee0600b836117e6565b9150611eeb82611eac565b602082019050919050565b5f6020820190508181035f830152611f0d81611ed4565b9050919050565b5f604082019050611f275f830185611a5f565b611f346020830184611988565b9392505050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f611f956025836117e6565b9150611fa082611f3b565b604082019050919050565b5f6020820190508181035f830152611fc281611f89565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f6120236026836117e6565b915061202e82611fc9565b604082019050919050565b5f6020820190508181035f83015261205081612017565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6120b16024836117e6565b91506120bc82612057565b604082019050919050565b5f6020820190508181035f8301526120de816120a5565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61213f6022836117e6565b915061214a826120e5565b604082019050919050565b5f6020820190508181035f83015261216c81612133565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f206164647265735f8201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b5f6121cd6021836117e6565b91506121d882612173565b604082019050919050565b5f6020820190508181035f8301526121fa816121c1565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e5f8201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b5f61225b6022836117e6565b915061226682612201565b604082019050919050565b5f6020820190508181035f8301526122888161224f565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74207a65726f00000000005f82015250565b5f6122c3601b836117e6565b91506122ce8261228f565b602082019050919050565b5f6020820190508181035f8301526122f0816122b7565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6123516025836117e6565b915061235c826122f7565b604082019050919050565b5f6020820190508181035f83015261237e81612345565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6123df6023836117e6565b91506123ea82612385565b604082019050919050565b5f6020820190508181035f83015261240c816123d3565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f61246d6026836117e6565b915061247882612413565b604082019050919050565b5f6020820190508181035f83015261249a81612461565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6124d56020836117e6565b91506124e0826124a1565b602082019050919050565b5f6020820190508181035f830152612502816124c9565b905091905056fea26469706673582212208d921c7cfaa3473afbceab94bf83bbd756909f02616c71a6251d5725b121559d64736f6c63430008160033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000887f738e55759a85fd8aa14eb706052951fe8410000000000000000000000000fd115175dbb63b568de52b1570e18083bfeddfca000000000000000000000000000000000000000000000000000000000000000d4554482045544620546f6b656e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000064554484554460000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561000f575f80fd5b506004361061014b575f3560e01c806373fa270e116100c1578063a8b089821161007a578063a8b0898214610367578063a9059cbb14610385578063dd62ed3e146103b5578063f01f20df146103e5578063f2fde38b14610403578063fb86a4041461041f5761014b565b806373fa270e146102cb5780638a8c523c146102d55780638da5cb5b146102df57806395d89b41146102fd578063a22d48321461031b578063a457c2d7146103375761014b565b80633950935111610113578063395093511461020957806342966c68146102395780634ada218b1461025557806360970f8d1461027357806370a0823114610291578063715018a6146102c15761014b565b806306fdde031461014f578063095ea7b31461016d57806318160ddd1461019d57806323b872dd146101bb578063313ce567146101eb575b5f80fd5b61015761043d565b6040516101649190611866565b60405180910390f35b61018760048036038101906101829190611917565b6104cd565b604051610194919061196f565b60405180910390f35b6101a56104ea565b6040516101b29190611997565b60405180910390f35b6101d560048036038101906101d091906119b0565b6104f3565b6040516101e2919061196f565b60405180910390f35b6101f36107bf565b6040516102009190611a1b565b60405180910390f35b610223600480360381019061021e9190611917565b6107c7565b604051610230919061196f565b60405180910390f35b610253600480360381019061024e9190611a34565b61086e565b005b61025d610882565b60405161026a919061196f565b60405180910390f35b61027b610894565b6040516102889190611a6e565b60405180910390f35b6102ab60048036038101906102a69190611a87565b6108b8565b6040516102b89190611997565b60405180910390f35b6102c96108fe565b005b6102d3610911565b005b6102dd610a2a565b005b6102e7610ad4565b6040516102f49190611a6e565b60405180910390f35b610305610afb565b6040516103129190611866565b60405180910390f35b61033560048036038101906103309190611a87565b610b8b565b005b610351600480360381019061034c9190611917565b610ca0565b60405161035e919061196f565b60405180910390f35b61036f610d86565b60405161037c9190611a6e565b60405180910390f35b61039f600480360381019061039a9190611917565b610dac565b6040516103ac919061196f565b60405180910390f35b6103cf60048036038101906103ca9190611ab2565b610f5e565b6040516103dc9190611997565b60405180910390f35b6103ed610fe0565b6040516103fa9190611997565b60405180910390f35b61041d60048036038101906104189190611a87565b610fe6565b005b610427611068565b6040516104349190611997565b60405180910390f35b60606004805461044c90611b1d565b80601f016020809104026020016040519081016040528092919081815260200182805461047890611b1d565b80156104c35780601f1061049a576101008083540402835291602001916104c3565b820191905f5260205f20905b8154815290600101906020018083116104a657829003601f168201915b5050505050905090565b5f6104e06104d9611077565b848461107e565b6001905092915050565b5f600354905090565b5f60075f9054906101000a900460ff16806105405750610511610ad4565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8061057d575061054e610ad4565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b6105bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105b390611b97565b60405180910390fd5b5f6105c5610ad4565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156106335750610603610ad4565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561068d5750600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156106af576064600654846106a29190611be2565b6106ac9190611c50565b90505b5f8111156106c2576106c18582611241565b5b6106d8858583866106d39190611c80565b6113f9565b5f60025f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61071f611077565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508381101561079e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079590611d23565b60405180910390fd5b6107b2866107aa611077565b86840361107e565b6001925050509392505050565b5f6012905090565b5f6108646107d3611077565b848460025f6107e0611077565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461085f9190611d41565b61107e565b6001905092915050565b61087f610879611077565b82611241565b50565b60075f9054906101000a900460ff1681565b7f000000000000000000000000fd115175dbb63b568de52b1570e18083bfeddfca81565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61090661169d565b61090f5f61171b565b565b7f000000000000000000000000fd115175dbb63b568de52b1570e18083bfeddfca73ffffffffffffffffffffffffffffffffffffffff16610950611077565b73ffffffffffffffffffffffffffffffffffffffff16146109a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099d90611dbe565b60405180910390fd5b5f600654036109ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e190611e26565b60405180910390fd5b5f6006819055507f553be7960c9e0811a341c6c89c504377f82cad90c7e7ab06a050b4929ec36afb42604051610a209190611997565b60405180910390a1565b610a3261169d565b60075f9054906101000a900460ff1615610a81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7890611e8e565b60405180910390fd5b600160075f6101000a81548160ff0219169083151502179055507fb3da2db3dfc3778f99852546c6e9ab39ec253f9de7b0847afec61bd27878e92342604051610aca9190611997565b60405180910390a1565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060058054610b0a90611b1d565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3690611b1d565b8015610b815780601f10610b5857610100808354040283529160200191610b81565b820191905f5260205f20905b815481529060010190602001808311610b6457829003601f168201915b5050505050905090565b610b9361169d565b5f73ffffffffffffffffffffffffffffffffffffffff16600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1a90611ef6565b60405180910390fd5b80600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f54a9afc3c3a43e46bc21a5220348a3b563898d151f23aee70c91191a5a2eeba08142604051610c95929190611f14565b60405180910390a150565b5f8060025f610cad611077565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015610d67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5e90611fab565b60405180910390fd5b610d7b610d72611077565b8585840361107e565b600191505092915050565b600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60075f9054906101000a900460ff1680610e005750610dca610ad4565b73ffffffffffffffffffffffffffffffffffffffff16610de8611077565b73ffffffffffffffffffffffffffffffffffffffff16145b80610e3d5750610e0e610ad4565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b610e7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7390611b97565b60405180910390fd5b5f610e85610ad4565b73ffffffffffffffffffffffffffffffffffffffff16610ea3611077565b73ffffffffffffffffffffffffffffffffffffffff1614158015610efa5750610eca610ad4565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15610f1c57606460065484610f0f9190611be2565b610f199190611c50565b90505b5f811115610f3657610f35610f2f611077565b82611241565b5b610f53610f41611077565b858386610f4e9190611c80565b6113f9565b600191505092915050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60065481565b610fee61169d565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361105c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161105390612039565b60405180910390fd5b6110658161171b565b50565b6a52b7d2dcc80cd2e400000081565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e3906120c7565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361115a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115190612155565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112349190611997565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036112af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a6906121e3565b60405180910390fd5b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905081811015611333576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132a90612271565b60405180910390fd5b81810360015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160035f8282546113889190611c80565b925050819055505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113ec9190611997565b60405180910390a3505050565b5f811161143b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611432906122d9565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036114a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a090612367565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611517576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150e906123f5565b60405180910390fd5b5f60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561159b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159290612483565b60405180910390fd5b81810360015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461162b9190611d41565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161168f9190611997565b60405180910390a350505050565b6116a5611077565b73ffffffffffffffffffffffffffffffffffffffff166116c3610ad4565b73ffffffffffffffffffffffffffffffffffffffff1614611719576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611710906124eb565b60405180910390fd5b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156118135780820151818401526020810190506117f8565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611838826117dc565b61184281856117e6565b93506118528185602086016117f6565b61185b8161181e565b840191505092915050565b5f6020820190508181035f83015261187e818461182e565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6118b38261188a565b9050919050565b6118c3816118a9565b81146118cd575f80fd5b50565b5f813590506118de816118ba565b92915050565b5f819050919050565b6118f6816118e4565b8114611900575f80fd5b50565b5f81359050611911816118ed565b92915050565b5f806040838503121561192d5761192c611886565b5b5f61193a858286016118d0565b925050602061194b85828601611903565b9150509250929050565b5f8115159050919050565b61196981611955565b82525050565b5f6020820190506119825f830184611960565b92915050565b611991816118e4565b82525050565b5f6020820190506119aa5f830184611988565b92915050565b5f805f606084860312156119c7576119c6611886565b5b5f6119d4868287016118d0565b93505060206119e5868287016118d0565b92505060406119f686828701611903565b9150509250925092565b5f60ff82169050919050565b611a1581611a00565b82525050565b5f602082019050611a2e5f830184611a0c565b92915050565b5f60208284031215611a4957611a48611886565b5b5f611a5684828501611903565b91505092915050565b611a68816118a9565b82525050565b5f602082019050611a815f830184611a5f565b92915050565b5f60208284031215611a9c57611a9b611886565b5b5f611aa9848285016118d0565b91505092915050565b5f8060408385031215611ac857611ac7611886565b5b5f611ad5858286016118d0565b9250506020611ae6858286016118d0565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680611b3457607f821691505b602082108103611b4757611b46611af0565b5b50919050565b7f54726164696e67206e6f7420656e61626c6564000000000000000000000000005f82015250565b5f611b816013836117e6565b9150611b8c82611b4d565b602082019050919050565b5f6020820190508181035f830152611bae81611b75565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611bec826118e4565b9150611bf7836118e4565b9250828202611c05816118e4565b91508282048414831517611c1c57611c1b611bb5565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611c5a826118e4565b9150611c65836118e4565b925082611c7557611c74611c23565b5b828204905092915050565b5f611c8a826118e4565b9150611c95836118e4565b9250828203905081811115611cad57611cac611bb5565b5b92915050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f611d0d6028836117e6565b9150611d1882611cb3565b604082019050919050565b5f6020820190508181035f830152611d3a81611d01565b9050919050565b5f611d4b826118e4565b9150611d56836118e4565b9250828201905080821115611d6e57611d6d611bb5565b5b92915050565b7f4e6f7420746865207461782072656d6f76616c2077616c6c65740000000000005f82015250565b5f611da8601a836117e6565b9150611db382611d74565b602082019050919050565b5f6020820190508181035f830152611dd581611d9c565b9050919050565b7f416c72656164792072656d6f76656400000000000000000000000000000000005f82015250565b5f611e10600f836117e6565b9150611e1b82611ddc565b602082019050919050565b5f6020820190508181035f830152611e3d81611e04565b9050919050565b7f416c726561647920656e61626c656400000000000000000000000000000000005f82015250565b5f611e78600f836117e6565b9150611e8382611e44565b602082019050919050565b5f6020820190508181035f830152611ea581611e6c565b9050919050565b7f416c7265616479207365740000000000000000000000000000000000000000005f82015250565b5f611ee0600b836117e6565b9150611eeb82611eac565b602082019050919050565b5f6020820190508181035f830152611f0d81611ed4565b9050919050565b5f604082019050611f275f830185611a5f565b611f346020830184611988565b9392505050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f611f956025836117e6565b9150611fa082611f3b565b604082019050919050565b5f6020820190508181035f830152611fc281611f89565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f6120236026836117e6565b915061202e82611fc9565b604082019050919050565b5f6020820190508181035f83015261205081612017565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6120b16024836117e6565b91506120bc82612057565b604082019050919050565b5f6020820190508181035f8301526120de816120a5565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61213f6022836117e6565b915061214a826120e5565b604082019050919050565b5f6020820190508181035f83015261216c81612133565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f206164647265735f8201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b5f6121cd6021836117e6565b91506121d882612173565b604082019050919050565b5f6020820190508181035f8301526121fa816121c1565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e5f8201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b5f61225b6022836117e6565b915061226682612201565b604082019050919050565b5f6020820190508181035f8301526122888161224f565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74207a65726f00000000005f82015250565b5f6122c3601b836117e6565b91506122ce8261228f565b602082019050919050565b5f6020820190508181035f8301526122f0816122b7565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6123516025836117e6565b915061235c826122f7565b604082019050919050565b5f6020820190508181035f83015261237e81612345565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6123df6023836117e6565b91506123ea82612385565b604082019050919050565b5f6020820190508181035f83015261240c816123d3565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f61246d6026836117e6565b915061247882612413565b604082019050919050565b5f6020820190508181035f83015261249a81612461565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6124d56020836117e6565b91506124e0826124a1565b602082019050919050565b5f6020820190508181035f830152612502816124c9565b905091905056fea26469706673582212208d921c7cfaa3473afbceab94bf83bbd756909f02616c71a6251d5725b121559d64736f6c63430008160033

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

000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000887f738e55759a85fd8aa14eb706052951fe8410000000000000000000000000fd115175dbb63b568de52b1570e18083bfeddfca000000000000000000000000000000000000000000000000000000000000000d4554482045544620546f6b656e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000064554484554460000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : name_ (string): ETH ETF Token
Arg [1] : symbol_ (string): ETHETF
Arg [2] : newOwner_ (address): 0x887f738E55759a85FD8aa14EB706052951fe8410
Arg [3] : taxRemovalWallet_ (address): 0xfD115175dbb63b568de52B1570e18083bFEDDFca

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 000000000000000000000000887f738e55759a85fd8aa14eb706052951fe8410
Arg [3] : 000000000000000000000000fd115175dbb63b568de52b1570e18083bfeddfca
Arg [4] : 000000000000000000000000000000000000000000000000000000000000000d
Arg [5] : 4554482045544620546f6b656e00000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [7] : 4554484554460000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

6747:10785:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8875:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11638:184;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9538:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12162:957;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9326:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13466:225;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16816:85;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7176:26;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7209:41;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9836:143;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5893:103;;;:::i;:::-;;7979:272;;;:::i;:::-;;8310:185;;;:::i;:::-;;5252:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9088:104;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8556:210;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14023:460;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7257:26;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10273:570;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11145:164;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7078:33;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6151:238;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7118:51;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8875:100;8929:13;8962:5;8955:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8875:100;:::o;11638:184::-;11741:4;11758:34;11767:12;:10;:12::i;:::-;11781:2;11785:6;11758:8;:34::i;:::-;11810:4;11803:11;;11638:184;;;;:::o;9538:108::-;9599:7;9626:12;;9619:19;;9538:108;:::o;12162:957::-;12302:4;12341:14;;;;;;;;;;;:35;;;;12369:7;:5;:7::i;:::-;12359:17;;:6;:17;;;12341:35;:59;;;;12393:7;:5;:7::i;:::-;12380:20;;:9;:20;;;12341:59;12319:128;;;;;;;;;;;;:::i;:::-;;;;;;;;;12458:15;12512:7;:5;:7::i;:::-;12502:17;;:6;:17;;;;:54;;;;;12549:7;:5;:7::i;:::-;12536:20;;:9;:20;;;;12502:54;:95;;;;;12586:11;;;;;;;;;;;12573:24;;:9;:24;;;;12502:95;12484:195;;;12663:3;12645:14;;12636:6;:23;;;;:::i;:::-;12635:31;;;;:::i;:::-;12624:43;;12484:195;12703:1;12693:7;:11;12689:39;;;12706:22;12712:6;12720:7;12706:5;:22::i;:::-;12689:39;12739:46;12749:6;12757:9;12777:7;12768:6;:16;;;;:::i;:::-;12739:9;:46::i;:::-;12796:24;12823:11;:19;12835:6;12823:19;;;;;;;;;;;;;;;:33;12843:12;:10;:12::i;:::-;12823:33;;;;;;;;;;;;;;;;12796:60;;12909:6;12889:16;:26;;12867:116;;;;;;;;;;;;:::i;:::-;;;;;;;;;13019:57;13028:6;13036:12;:10;:12::i;:::-;13069:6;13050:16;:25;13019:8;:57::i;:::-;13107:4;13100:11;;;;12162:957;;;;;:::o;9326:100::-;9384:5;7069:2;9402:16;;9326:100;:::o;13466:225::-;13574:4;13591:70;13600:12;:10;:12::i;:::-;13614:2;13650:10;13618:11;:25;13630:12;:10;:12::i;:::-;13618:25;;;;;;;;;;;;;;;:29;13644:2;13618:29;;;;;;;;;;;;;;;;:42;;;;:::i;:::-;13591:8;:70::i;:::-;13679:4;13672:11;;13466:225;;;;:::o;16816:85::-;16866:27;16872:12;:10;:12::i;:::-;16886:6;16866:5;:27::i;:::-;16816:85;:::o;7176:26::-;;;;;;;;;;;;;:::o;7209:41::-;;;:::o;9836:143::-;9926:7;9953:9;:18;9963:7;9953:18;;;;;;;;;;;;;;;;9946:25;;9836:143;;;:::o;5893:103::-;5138:13;:11;:13::i;:::-;5958:30:::1;5985:1;5958:18;:30::i;:::-;5893:103::o:0;7979:272::-;8055:16;8039:32;;:12;:10;:12::i;:::-;:32;;;8031:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;8139:1;8121:14;;:19;8113:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;8188:1;8171:14;:18;;;;8205:38;8227:15;8205:38;;;;;;:::i;:::-;;;;;;;;7979:272::o;8310:185::-;5138:13;:11;:13::i;:::-;8374:14:::1;;;;;;;;;;;8373:15;8365:43;;;;;;;;;;;;:::i;:::-;;;;;;;;;8436:4;8419:14;;:21;;;;;;;;;;;;;;;;;;8456:31;8471:15;8456:31;;;;;;:::i;:::-;;;;;;;;8310:185::o:0;5252:87::-;5298:7;5325:6;;;;;;;;;;;5318:13;;5252:87;:::o;9088:104::-;9144:13;9177:7;9170:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9088:104;:::o;8556:210::-;5138:13;:11;:13::i;:::-;8656:1:::1;8633:25;;:11;;;;;;;;;;;:25;;;8625:49;;;;;;;;;;;;:::i;:::-;;;;;;;;;8699:5;8685:11;;:19;;;;;;;;;;;;;;;;;;8720:38;8735:5;8742:15;8720:38;;;;;;;:::i;:::-;;;;;;;;8556:210:::0;:::o;14023:460::-;14136:4;14153:24;14180:11;:25;14192:12;:10;:12::i;:::-;14180:25;;;;;;;;;;;;;;;:29;14206:2;14180:29;;;;;;;;;;;;;;;;14153:56;;14262:15;14242:16;:35;;14220:122;;;;;;;;;;;;:::i;:::-;;;;;;;;;14378:62;14387:12;:10;:12::i;:::-;14401:2;14424:15;14405:16;:34;14378:8;:62::i;:::-;14471:4;14464:11;;;14023:460;;;;:::o;7257:26::-;;;;;;;;;;;;;:::o;10273:570::-;10384:4;10423:14;;;;;;;;;;;:41;;;;10457:7;:5;:7::i;:::-;10441:23;;:12;:10;:12::i;:::-;:23;;;10423:41;:65;;;;10481:7;:5;:7::i;:::-;10468:20;;:9;:20;;;10423:65;10401:134;;;;;;;;;;;;:::i;:::-;;;;;;;;;10546:15;10592:7;:5;:7::i;:::-;10576:23;;:12;:10;:12::i;:::-;:23;;;;:47;;;;;10616:7;:5;:7::i;:::-;10603:20;;:9;:20;;;;10576:47;10572:123;;;10679:3;10661:14;;10652:6;:23;;;;:::i;:::-;10651:31;;;;:::i;:::-;10640:43;;10572:123;10719:1;10709:7;:11;10705:45;;;10722:28;10728:12;:10;:12::i;:::-;10742:7;10722:5;:28::i;:::-;10705:45;10761:52;10771:12;:10;:12::i;:::-;10785:9;10805:7;10796:6;:16;;;;:::i;:::-;10761:9;:52::i;:::-;10831:4;10824:11;;;10273:570;;;;:::o;11145:164::-;11253:7;11280:11;:17;11292:4;11280:17;;;;;;;;;;;;;;;:21;11298:2;11280:21;;;;;;;;;;;;;;;;11273:28;;11145:164;;;;:::o;7078:33::-;;;;:::o;6151:238::-;5138:13;:11;:13::i;:::-;6274:1:::1;6254:22;;:8;:22;;::::0;6232:110:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;6353:28;6372:8;6353:18;:28::i;:::-;6151:238:::0;:::o;7118:51::-;7152:17;7118:51;:::o;3922:98::-;3975:7;4002:10;3995:17;;3922:98;:::o;17173:356::-;17319:1;17303:18;;:4;:18;;;17295:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;17395:1;17381:16;;:2;:16;;;17373:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;17473:6;17449:11;:17;17461:4;17449:17;;;;;;;;;;;;;;;:21;17467:2;17449:21;;;;;;;;;;;;;;;:30;;;;17510:2;17495:26;;17504:4;17495:26;;;17514:6;17495:26;;;;;;:::i;:::-;;;;;;;;17173:356;;;:::o;16178:468::-;16281:1;16262:21;;:7;:21;;;16254:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;16334:22;16359:9;:18;16369:7;16359:18;;;;;;;;;;;;;;;;16334:43;;16414:6;16396:14;:24;;16388:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;16533:6;16516:14;:23;16495:9;:18;16505:7;16495:18;;;;;;;;;;;;;;;:44;;;;16577:6;16561:12;;:22;;;;;;;:::i;:::-;;;;;;;;16627:1;16601:37;;16610:7;16601:37;;;16631:6;16601:37;;;;;;:::i;:::-;;;;;;;;16243:403;16178:468;;:::o;14753:712::-;14902:1;14893:6;:10;14885:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;14972:1;14954:20;;:6;:20;;;14946:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;15056:1;15035:23;;:9;:23;;;15027:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;15111:21;15135:9;:17;15145:6;15135:17;;;;;;;;;;;;;;;;15111:41;;15202:6;15185:13;:23;;15163:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;15346:6;15330:13;:22;15310:9;:17;15320:6;15310:17;;;;;;;;;;;;;;;:42;;;;15398:6;15374:9;:20;15384:9;15374:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;15439:9;15422:35;;15431:6;15422:35;;;15450:6;15422:35;;;;;;:::i;:::-;;;;;;;;14874:591;14753:712;;;:::o;5417:132::-;5492:12;:10;:12::i;:::-;5481:23;;:7;:5;:7::i;:::-;:23;;;5473:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5417:132::o;6549:191::-;6623:16;6642:6;;;;;;;;;;;6623:25;;6668:8;6659:6;;:17;;;;;;;;;;;;;;;;;;6723:8;6692:40;;6713:8;6692:40;;;;;;;;;;;;6612:128;6549:191;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:86::-;4458:7;4498:4;4491:5;4487:16;4476:27;;4423:86;;;:::o;4515:112::-;4598:22;4614:5;4598:22;:::i;:::-;4593:3;4586:35;4515:112;;:::o;4633:214::-;4722:4;4760:2;4749:9;4745:18;4737:26;;4773:67;4837:1;4826:9;4822:17;4813:6;4773:67;:::i;:::-;4633:214;;;;:::o;4853:329::-;4912:6;4961:2;4949:9;4940:7;4936:23;4932:32;4929:119;;;4967:79;;:::i;:::-;4929:119;5087:1;5112:53;5157:7;5148:6;5137:9;5133:22;5112:53;:::i;:::-;5102:63;;5058:117;4853:329;;;;:::o;5188:118::-;5275:24;5293:5;5275:24;:::i;:::-;5270:3;5263:37;5188:118;;:::o;5312:222::-;5405:4;5443:2;5432:9;5428:18;5420:26;;5456:71;5524:1;5513:9;5509:17;5500:6;5456:71;:::i;:::-;5312:222;;;;:::o;5540:329::-;5599:6;5648:2;5636:9;5627:7;5623:23;5619:32;5616:119;;;5654:79;;:::i;:::-;5616:119;5774:1;5799:53;5844:7;5835:6;5824:9;5820:22;5799:53;:::i;:::-;5789:63;;5745:117;5540:329;;;;:::o;5875:474::-;5943:6;5951;6000:2;5988:9;5979:7;5975:23;5971:32;5968:119;;;6006:79;;:::i;:::-;5968:119;6126:1;6151:53;6196:7;6187:6;6176:9;6172:22;6151:53;:::i;:::-;6141:63;;6097:117;6253:2;6279:53;6324:7;6315:6;6304:9;6300:22;6279:53;:::i;:::-;6269:63;;6224:118;5875:474;;;;;:::o;6355:180::-;6403:77;6400:1;6393:88;6500:4;6497:1;6490:15;6524:4;6521:1;6514:15;6541:320;6585:6;6622:1;6616:4;6612:12;6602:22;;6669:1;6663:4;6659:12;6690:18;6680:81;;6746:4;6738:6;6734:17;6724:27;;6680:81;6808:2;6800:6;6797:14;6777:18;6774:38;6771:84;;6827:18;;:::i;:::-;6771:84;6592:269;6541:320;;;:::o;6867:169::-;7007:21;7003:1;6995:6;6991:14;6984:45;6867:169;:::o;7042:366::-;7184:3;7205:67;7269:2;7264:3;7205:67;:::i;:::-;7198:74;;7281:93;7370:3;7281:93;:::i;:::-;7399:2;7394:3;7390:12;7383:19;;7042:366;;;:::o;7414:419::-;7580:4;7618:2;7607:9;7603:18;7595:26;;7667:9;7661:4;7657:20;7653:1;7642:9;7638:17;7631:47;7695:131;7821:4;7695:131;:::i;:::-;7687:139;;7414:419;;;:::o;7839:180::-;7887:77;7884:1;7877:88;7984:4;7981:1;7974:15;8008:4;8005:1;7998:15;8025:410;8065:7;8088:20;8106:1;8088:20;:::i;:::-;8083:25;;8122:20;8140:1;8122:20;:::i;:::-;8117:25;;8177:1;8174;8170:9;8199:30;8217:11;8199:30;:::i;:::-;8188:41;;8378:1;8369:7;8365:15;8362:1;8359:22;8339:1;8332:9;8312:83;8289:139;;8408:18;;:::i;:::-;8289:139;8073:362;8025:410;;;;:::o;8441:180::-;8489:77;8486:1;8479:88;8586:4;8583:1;8576:15;8610:4;8607:1;8600:15;8627:185;8667:1;8684:20;8702:1;8684:20;:::i;:::-;8679:25;;8718:20;8736:1;8718:20;:::i;:::-;8713:25;;8757:1;8747:35;;8762:18;;:::i;:::-;8747:35;8804:1;8801;8797:9;8792:14;;8627:185;;;;:::o;8818:194::-;8858:4;8878:20;8896:1;8878:20;:::i;:::-;8873:25;;8912:20;8930:1;8912:20;:::i;:::-;8907:25;;8956:1;8953;8949:9;8941:17;;8980:1;8974:4;8971:11;8968:37;;;8985:18;;:::i;:::-;8968:37;8818:194;;;;:::o;9018:227::-;9158:34;9154:1;9146:6;9142:14;9135:58;9227:10;9222:2;9214:6;9210:15;9203:35;9018:227;:::o;9251:366::-;9393:3;9414:67;9478:2;9473:3;9414:67;:::i;:::-;9407:74;;9490:93;9579:3;9490:93;:::i;:::-;9608:2;9603:3;9599:12;9592:19;;9251:366;;;:::o;9623:419::-;9789:4;9827:2;9816:9;9812:18;9804:26;;9876:9;9870:4;9866:20;9862:1;9851:9;9847:17;9840:47;9904:131;10030:4;9904:131;:::i;:::-;9896:139;;9623:419;;;:::o;10048:191::-;10088:3;10107:20;10125:1;10107:20;:::i;:::-;10102:25;;10141:20;10159:1;10141:20;:::i;:::-;10136:25;;10184:1;10181;10177:9;10170:16;;10205:3;10202:1;10199:10;10196:36;;;10212:18;;:::i;:::-;10196:36;10048:191;;;;:::o;10245:176::-;10385:28;10381:1;10373:6;10369:14;10362:52;10245:176;:::o;10427:366::-;10569:3;10590:67;10654:2;10649:3;10590:67;:::i;:::-;10583:74;;10666:93;10755:3;10666:93;:::i;:::-;10784:2;10779:3;10775:12;10768:19;;10427:366;;;:::o;10799:419::-;10965:4;11003:2;10992:9;10988:18;10980:26;;11052:9;11046:4;11042:20;11038:1;11027:9;11023:17;11016:47;11080:131;11206:4;11080:131;:::i;:::-;11072:139;;10799:419;;;:::o;11224:165::-;11364:17;11360:1;11352:6;11348:14;11341:41;11224:165;:::o;11395:366::-;11537:3;11558:67;11622:2;11617:3;11558:67;:::i;:::-;11551:74;;11634:93;11723:3;11634:93;:::i;:::-;11752:2;11747:3;11743:12;11736:19;;11395:366;;;:::o;11767:419::-;11933:4;11971:2;11960:9;11956:18;11948:26;;12020:9;12014:4;12010:20;12006:1;11995:9;11991:17;11984:47;12048:131;12174:4;12048:131;:::i;:::-;12040:139;;11767:419;;;:::o;12192:165::-;12332:17;12328:1;12320:6;12316:14;12309:41;12192:165;:::o;12363:366::-;12505:3;12526:67;12590:2;12585:3;12526:67;:::i;:::-;12519:74;;12602:93;12691:3;12602:93;:::i;:::-;12720:2;12715:3;12711:12;12704:19;;12363:366;;;:::o;12735:419::-;12901:4;12939:2;12928:9;12924:18;12916:26;;12988:9;12982:4;12978:20;12974:1;12963:9;12959:17;12952:47;13016:131;13142:4;13016:131;:::i;:::-;13008:139;;12735:419;;;:::o;13160:161::-;13300:13;13296:1;13288:6;13284:14;13277:37;13160:161;:::o;13327:366::-;13469:3;13490:67;13554:2;13549:3;13490:67;:::i;:::-;13483:74;;13566:93;13655:3;13566:93;:::i;:::-;13684:2;13679:3;13675:12;13668:19;;13327:366;;;:::o;13699:419::-;13865:4;13903:2;13892:9;13888:18;13880:26;;13952:9;13946:4;13942:20;13938:1;13927:9;13923:17;13916:47;13980:131;14106:4;13980:131;:::i;:::-;13972:139;;13699:419;;;:::o;14124:332::-;14245:4;14283:2;14272:9;14268:18;14260:26;;14296:71;14364:1;14353:9;14349:17;14340:6;14296:71;:::i;:::-;14377:72;14445:2;14434:9;14430:18;14421:6;14377:72;:::i;:::-;14124:332;;;;;:::o;14462:224::-;14602:34;14598:1;14590:6;14586:14;14579:58;14671:7;14666:2;14658:6;14654:15;14647:32;14462:224;:::o;14692:366::-;14834:3;14855:67;14919:2;14914:3;14855:67;:::i;:::-;14848:74;;14931:93;15020:3;14931:93;:::i;:::-;15049:2;15044:3;15040:12;15033:19;;14692:366;;;:::o;15064:419::-;15230:4;15268:2;15257:9;15253:18;15245:26;;15317:9;15311:4;15307:20;15303:1;15292:9;15288:17;15281:47;15345:131;15471:4;15345:131;:::i;:::-;15337:139;;15064:419;;;:::o;15489:225::-;15629:34;15625:1;15617:6;15613:14;15606:58;15698:8;15693:2;15685:6;15681:15;15674:33;15489:225;:::o;15720:366::-;15862:3;15883:67;15947:2;15942:3;15883:67;:::i;:::-;15876:74;;15959:93;16048:3;15959:93;:::i;:::-;16077:2;16072:3;16068:12;16061:19;;15720:366;;;:::o;16092:419::-;16258:4;16296:2;16285:9;16281:18;16273:26;;16345:9;16339:4;16335:20;16331:1;16320:9;16316:17;16309:47;16373:131;16499:4;16373:131;:::i;:::-;16365:139;;16092:419;;;:::o;16517:223::-;16657:34;16653:1;16645:6;16641:14;16634:58;16726:6;16721:2;16713:6;16709:15;16702:31;16517:223;:::o;16746:366::-;16888:3;16909:67;16973:2;16968:3;16909:67;:::i;:::-;16902:74;;16985:93;17074:3;16985:93;:::i;:::-;17103:2;17098:3;17094:12;17087:19;;16746:366;;;:::o;17118:419::-;17284:4;17322:2;17311:9;17307:18;17299:26;;17371:9;17365:4;17361:20;17357:1;17346:9;17342:17;17335:47;17399:131;17525:4;17399:131;:::i;:::-;17391:139;;17118:419;;;:::o;17543:221::-;17683:34;17679:1;17671:6;17667:14;17660:58;17752:4;17747:2;17739:6;17735:15;17728:29;17543:221;:::o;17770:366::-;17912:3;17933:67;17997:2;17992:3;17933:67;:::i;:::-;17926:74;;18009:93;18098:3;18009:93;:::i;:::-;18127:2;18122:3;18118:12;18111:19;;17770:366;;;:::o;18142:419::-;18308:4;18346:2;18335:9;18331:18;18323:26;;18395:9;18389:4;18385:20;18381:1;18370:9;18366:17;18359:47;18423:131;18549:4;18423:131;:::i;:::-;18415:139;;18142:419;;;:::o;18567:220::-;18707:34;18703:1;18695:6;18691:14;18684:58;18776:3;18771:2;18763:6;18759:15;18752:28;18567:220;:::o;18793:366::-;18935:3;18956:67;19020:2;19015:3;18956:67;:::i;:::-;18949:74;;19032:93;19121:3;19032:93;:::i;:::-;19150:2;19145:3;19141:12;19134:19;;18793:366;;;:::o;19165:419::-;19331:4;19369:2;19358:9;19354:18;19346:26;;19418:9;19412:4;19408:20;19404:1;19393:9;19389:17;19382:47;19446:131;19572:4;19446:131;:::i;:::-;19438:139;;19165:419;;;:::o;19590:221::-;19730:34;19726:1;19718:6;19714:14;19707:58;19799:4;19794:2;19786:6;19782:15;19775:29;19590:221;:::o;19817:366::-;19959:3;19980:67;20044:2;20039:3;19980:67;:::i;:::-;19973:74;;20056:93;20145:3;20056:93;:::i;:::-;20174:2;20169:3;20165:12;20158:19;;19817:366;;;:::o;20189:419::-;20355:4;20393:2;20382:9;20378:18;20370:26;;20442:9;20436:4;20432:20;20428:1;20417:9;20413:17;20406:47;20470:131;20596:4;20470:131;:::i;:::-;20462:139;;20189:419;;;:::o;20614:177::-;20754:29;20750:1;20742:6;20738:14;20731:53;20614:177;:::o;20797:366::-;20939:3;20960:67;21024:2;21019:3;20960:67;:::i;:::-;20953:74;;21036:93;21125:3;21036:93;:::i;:::-;21154:2;21149:3;21145:12;21138:19;;20797:366;;;:::o;21169:419::-;21335:4;21373:2;21362:9;21358:18;21350:26;;21422:9;21416:4;21412:20;21408:1;21397:9;21393:17;21386:47;21450:131;21576:4;21450:131;:::i;:::-;21442:139;;21169:419;;;:::o;21594:224::-;21734:34;21730:1;21722:6;21718:14;21711:58;21803:7;21798:2;21790:6;21786:15;21779:32;21594:224;:::o;21824:366::-;21966:3;21987:67;22051:2;22046:3;21987:67;:::i;:::-;21980:74;;22063:93;22152:3;22063:93;:::i;:::-;22181:2;22176:3;22172:12;22165:19;;21824:366;;;:::o;22196:419::-;22362:4;22400:2;22389:9;22385:18;22377:26;;22449:9;22443:4;22439:20;22435:1;22424:9;22420:17;22413:47;22477:131;22603:4;22477:131;:::i;:::-;22469:139;;22196:419;;;:::o;22621:222::-;22761:34;22757:1;22749:6;22745:14;22738:58;22830:5;22825:2;22817:6;22813:15;22806:30;22621:222;:::o;22849:366::-;22991:3;23012:67;23076:2;23071:3;23012:67;:::i;:::-;23005:74;;23088:93;23177:3;23088:93;:::i;:::-;23206:2;23201:3;23197:12;23190:19;;22849:366;;;:::o;23221:419::-;23387:4;23425:2;23414:9;23410:18;23402:26;;23474:9;23468:4;23464:20;23460:1;23449:9;23445:17;23438:47;23502:131;23628:4;23502:131;:::i;:::-;23494:139;;23221:419;;;:::o;23646:225::-;23786:34;23782:1;23774:6;23770:14;23763:58;23855:8;23850:2;23842:6;23838:15;23831:33;23646:225;:::o;23877:366::-;24019:3;24040:67;24104:2;24099:3;24040:67;:::i;:::-;24033:74;;24116:93;24205:3;24116:93;:::i;:::-;24234:2;24229:3;24225:12;24218:19;;23877:366;;;:::o;24249:419::-;24415:4;24453:2;24442:9;24438:18;24430:26;;24502:9;24496:4;24492:20;24488:1;24477:9;24473:17;24466:47;24530:131;24656:4;24530:131;:::i;:::-;24522:139;;24249:419;;;:::o;24674:182::-;24814:34;24810:1;24802:6;24798:14;24791:58;24674:182;:::o;24862:366::-;25004:3;25025:67;25089:2;25084:3;25025:67;:::i;:::-;25018:74;;25101:93;25190:3;25101:93;:::i;:::-;25219:2;25214:3;25210:12;25203:19;;24862:366;;;:::o;25234:419::-;25400:4;25438:2;25427:9;25423:18;25415:26;;25487:9;25481:4;25477:20;25473:1;25462:9;25458:17;25451:47;25515:131;25641:4;25515:131;:::i;:::-;25507:139;;25234:419;;;:::o

Swarm Source

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