ETH Price: $3,667.64 (+2.48%)

Token

UERII (UERII)
 

Overview

Max Total Supply

10,100,000,000,000 UERII

Holders

379 (0.00%)

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 6 Decimals)

Balance
1,250,000 UERII

Value
$0.00
0x109cffc25689eaa99c32b4a4780d4bdfaa62d06e
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:
Token

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2021-11-15
*/

// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.3.2 (token/ERC20/IERC20.sol)


pragma solidity ^0.8.0;

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

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

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

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

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

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

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

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

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

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

    /**
     * @dev See {IERC20-transfer}.
     *
     * Requirements:
     *
     * - `recipient` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, 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}.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), 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}.
     *
     * Requirements:
     *
     * - `sender` and `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     * - the caller must have allowance for ``sender``'s tokens of at least
     * `amount`.
     */
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        unchecked {
            _approve(sender, _msgSender(), currentAllowance - 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) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][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) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    /**
     * @dev Moves `amount` of tokens from `sender` to `recipient`.
     *
     * 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:
     *
     * - `sender` cannot be the zero address.
     * - `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     */
    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(sender, recipient, amount);

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

        _afterTokenTransfer(sender, recipient, amount);
    }

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

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

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

        _afterTokenTransfer(address(0), account, amount);
    }

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

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

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

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

        _afterTokenTransfer(account, address(0), amount);
    }

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

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

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

/**
 * @title SimpleToken
 * @dev Very simple ERC20 Token example, where all tokens are pre-assigned to the creator.
 * Note they can later distribute these tokens as they wish using `transfer` and other
 * `ERC20` functions.
 */
contract Token is ERC20 {

    constructor () ERC20("UERII", "UERII") {
        
        _mint(msg.sender, 100000000000000000);
    }
    
    function mint() public returns (bool) {
        _mint( msg.sender, 100000000000000000 );
        return true;
    }
    
    function decimals() public view virtual override returns (uint8) {
        return 6;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"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":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"mint","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":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b506040518060400160405280600581526020017f55455249490000000000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f554552494900000000000000000000000000000000000000000000000000000081525081600390805190602001906200009692919062000255565b508060049080519060200190620000af92919062000255565b505050620000cc3367016345785d8a0000620000d260201b60201c565b620004b1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000145576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200013c906200033d565b60405180910390fd5b62000159600083836200024b60201b60201c565b80600260008282546200016d91906200038d565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620001c491906200038d565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200022b91906200035f565b60405180910390a362000247600083836200025060201b60201c565b5050565b505050565b505050565b8280546200026390620003f4565b90600052602060002090601f016020900481019282620002875760008555620002d3565b82601f10620002a257805160ff1916838001178555620002d3565b82800160010185558215620002d3579182015b82811115620002d2578251825591602001919060010190620002b5565b5b509050620002e29190620002e6565b5090565b5b8082111562000301576000816000905550600101620002e7565b5090565b600062000314601f836200037c565b9150620003218262000488565b602082019050919050565b6200033781620003ea565b82525050565b60006020820190508181036000830152620003588162000305565b9050919050565b60006020820190506200037660008301846200032c565b92915050565b600082825260208201905092915050565b60006200039a82620003ea565b9150620003a783620003ea565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620003df57620003de6200042a565b5b828201905092915050565b6000819050919050565b600060028204905060018216806200040d57607f821691505b6020821081141562000424576200042362000459565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6115ba80620004c16000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80633950935111610071578063395093511461019157806370a08231146101c157806395d89b41146101f1578063a457c2d71461020f578063a9059cbb1461023f578063dd62ed3e1461026f576100b4565b806306fdde03146100b9578063095ea7b3146100d75780631249c58b1461010757806318160ddd1461012557806323b872dd14610143578063313ce56714610173575b600080fd5b6100c161029f565b6040516100ce919061100c565b60405180910390f35b6100f160048036038101906100ec9190610e33565b610331565b6040516100fe9190610ff1565b60405180910390f35b61010f61034f565b60405161011c9190610ff1565b60405180910390f35b61012d61036a565b60405161013a919061112e565b60405180910390f35b61015d60048036038101906101589190610de0565b610374565b60405161016a9190610ff1565b60405180910390f35b61017b61046c565b6040516101889190611149565b60405180910390f35b6101ab60048036038101906101a69190610e33565b610475565b6040516101b89190610ff1565b60405180910390f35b6101db60048036038101906101d69190610d73565b610521565b6040516101e8919061112e565b60405180910390f35b6101f9610569565b604051610206919061100c565b60405180910390f35b61022960048036038101906102249190610e33565b6105fb565b6040516102369190610ff1565b60405180910390f35b61025960048036038101906102549190610e33565b6106e6565b6040516102669190610ff1565b60405180910390f35b61028960048036038101906102849190610da0565b610704565b604051610296919061112e565b60405180910390f35b6060600380546102ae9061125e565b80601f01602080910402602001604051908101604052809291908181526020018280546102da9061125e565b80156103275780601f106102fc57610100808354040283529160200191610327565b820191906000526020600020905b81548152906001019060200180831161030a57829003601f168201915b5050505050905090565b600061034561033e61078b565b8484610793565b6001905092915050565b60006103633367016345785d8a000061095e565b6001905090565b6000600254905090565b6000610381848484610abe565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006103cc61078b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508281101561044c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104439061108e565b60405180910390fd5b6104608561045861078b565b858403610793565b60019150509392505050565b60006006905090565b600061051761048261078b565b84846001600061049061078b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546105129190611180565b610793565b6001905092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600480546105789061125e565b80601f01602080910402602001604051908101604052809291908181526020018280546105a49061125e565b80156105f15780601f106105c6576101008083540402835291602001916105f1565b820191906000526020600020905b8154815290600101906020018083116105d457829003601f168201915b5050505050905090565b6000806001600061060a61078b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156106c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106be906110ee565b60405180910390fd5b6106db6106d261078b565b85858403610793565b600191505092915050565b60006106fa6106f361078b565b8484610abe565b6001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610803576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107fa906110ce565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610873576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161086a9061104e565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610951919061112e565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156109ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109c59061110e565b60405180910390fd5b6109da60008383610d3f565b80600260008282546109ec9190611180565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610a419190611180565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610aa6919061112e565b60405180910390a3610aba60008383610d44565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610b2e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b25906110ae565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610b9e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b959061102e565b60405180910390fd5b610ba9838383610d3f565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610c2f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c269061106e565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610cc29190611180565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610d26919061112e565b60405180910390a3610d39848484610d44565b50505050565b505050565b505050565b600081359050610d5881611556565b92915050565b600081359050610d6d8161156d565b92915050565b600060208284031215610d8957610d886112ee565b5b6000610d9784828501610d49565b91505092915050565b60008060408385031215610db757610db66112ee565b5b6000610dc585828601610d49565b9250506020610dd685828601610d49565b9150509250929050565b600080600060608486031215610df957610df86112ee565b5b6000610e0786828701610d49565b9350506020610e1886828701610d49565b9250506040610e2986828701610d5e565b9150509250925092565b60008060408385031215610e4a57610e496112ee565b5b6000610e5885828601610d49565b9250506020610e6985828601610d5e565b9150509250929050565b610e7c816111e8565b82525050565b6000610e8d82611164565b610e97818561116f565b9350610ea781856020860161122b565b610eb0816112f3565b840191505092915050565b6000610ec860238361116f565b9150610ed382611304565b604082019050919050565b6000610eeb60228361116f565b9150610ef682611353565b604082019050919050565b6000610f0e60268361116f565b9150610f19826113a2565b604082019050919050565b6000610f3160288361116f565b9150610f3c826113f1565b604082019050919050565b6000610f5460258361116f565b9150610f5f82611440565b604082019050919050565b6000610f7760248361116f565b9150610f828261148f565b604082019050919050565b6000610f9a60258361116f565b9150610fa5826114de565b604082019050919050565b6000610fbd601f8361116f565b9150610fc88261152d565b602082019050919050565b610fdc81611214565b82525050565b610feb8161121e565b82525050565b60006020820190506110066000830184610e73565b92915050565b600060208201905081810360008301526110268184610e82565b905092915050565b6000602082019050818103600083015261104781610ebb565b9050919050565b6000602082019050818103600083015261106781610ede565b9050919050565b6000602082019050818103600083015261108781610f01565b9050919050565b600060208201905081810360008301526110a781610f24565b9050919050565b600060208201905081810360008301526110c781610f47565b9050919050565b600060208201905081810360008301526110e781610f6a565b9050919050565b6000602082019050818103600083015261110781610f8d565b9050919050565b6000602082019050818103600083015261112781610fb0565b9050919050565b60006020820190506111436000830184610fd3565b92915050565b600060208201905061115e6000830184610fe2565b92915050565b600081519050919050565b600082825260208201905092915050565b600061118b82611214565b915061119683611214565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156111cb576111ca611290565b5b828201905092915050565b60006111e1826111f4565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b8381101561124957808201518184015260208101905061122e565b83811115611258576000848401525b50505050565b6000600282049050600182168061127657607f821691505b6020821081141561128a576112896112bf565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b61155f816111d6565b811461156a57600080fd5b50565b61157681611214565b811461158157600080fd5b5056fea26469706673582212201da40262a8deb4c47879af3d216e78232f0afa99a28832c8a0fdaec2618c3a4f64736f6c63430008070033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100b45760003560e01c80633950935111610071578063395093511461019157806370a08231146101c157806395d89b41146101f1578063a457c2d71461020f578063a9059cbb1461023f578063dd62ed3e1461026f576100b4565b806306fdde03146100b9578063095ea7b3146100d75780631249c58b1461010757806318160ddd1461012557806323b872dd14610143578063313ce56714610173575b600080fd5b6100c161029f565b6040516100ce919061100c565b60405180910390f35b6100f160048036038101906100ec9190610e33565b610331565b6040516100fe9190610ff1565b60405180910390f35b61010f61034f565b60405161011c9190610ff1565b60405180910390f35b61012d61036a565b60405161013a919061112e565b60405180910390f35b61015d60048036038101906101589190610de0565b610374565b60405161016a9190610ff1565b60405180910390f35b61017b61046c565b6040516101889190611149565b60405180910390f35b6101ab60048036038101906101a69190610e33565b610475565b6040516101b89190610ff1565b60405180910390f35b6101db60048036038101906101d69190610d73565b610521565b6040516101e8919061112e565b60405180910390f35b6101f9610569565b604051610206919061100c565b60405180910390f35b61022960048036038101906102249190610e33565b6105fb565b6040516102369190610ff1565b60405180910390f35b61025960048036038101906102549190610e33565b6106e6565b6040516102669190610ff1565b60405180910390f35b61028960048036038101906102849190610da0565b610704565b604051610296919061112e565b60405180910390f35b6060600380546102ae9061125e565b80601f01602080910402602001604051908101604052809291908181526020018280546102da9061125e565b80156103275780601f106102fc57610100808354040283529160200191610327565b820191906000526020600020905b81548152906001019060200180831161030a57829003601f168201915b5050505050905090565b600061034561033e61078b565b8484610793565b6001905092915050565b60006103633367016345785d8a000061095e565b6001905090565b6000600254905090565b6000610381848484610abe565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006103cc61078b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508281101561044c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104439061108e565b60405180910390fd5b6104608561045861078b565b858403610793565b60019150509392505050565b60006006905090565b600061051761048261078b565b84846001600061049061078b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546105129190611180565b610793565b6001905092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600480546105789061125e565b80601f01602080910402602001604051908101604052809291908181526020018280546105a49061125e565b80156105f15780601f106105c6576101008083540402835291602001916105f1565b820191906000526020600020905b8154815290600101906020018083116105d457829003601f168201915b5050505050905090565b6000806001600061060a61078b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156106c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106be906110ee565b60405180910390fd5b6106db6106d261078b565b85858403610793565b600191505092915050565b60006106fa6106f361078b565b8484610abe565b6001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610803576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107fa906110ce565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610873576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161086a9061104e565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610951919061112e565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156109ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109c59061110e565b60405180910390fd5b6109da60008383610d3f565b80600260008282546109ec9190611180565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610a419190611180565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610aa6919061112e565b60405180910390a3610aba60008383610d44565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610b2e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b25906110ae565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610b9e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b959061102e565b60405180910390fd5b610ba9838383610d3f565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610c2f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c269061106e565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610cc29190611180565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610d26919061112e565b60405180910390a3610d39848484610d44565b50505050565b505050565b505050565b600081359050610d5881611556565b92915050565b600081359050610d6d8161156d565b92915050565b600060208284031215610d8957610d886112ee565b5b6000610d9784828501610d49565b91505092915050565b60008060408385031215610db757610db66112ee565b5b6000610dc585828601610d49565b9250506020610dd685828601610d49565b9150509250929050565b600080600060608486031215610df957610df86112ee565b5b6000610e0786828701610d49565b9350506020610e1886828701610d49565b9250506040610e2986828701610d5e565b9150509250925092565b60008060408385031215610e4a57610e496112ee565b5b6000610e5885828601610d49565b9250506020610e6985828601610d5e565b9150509250929050565b610e7c816111e8565b82525050565b6000610e8d82611164565b610e97818561116f565b9350610ea781856020860161122b565b610eb0816112f3565b840191505092915050565b6000610ec860238361116f565b9150610ed382611304565b604082019050919050565b6000610eeb60228361116f565b9150610ef682611353565b604082019050919050565b6000610f0e60268361116f565b9150610f19826113a2565b604082019050919050565b6000610f3160288361116f565b9150610f3c826113f1565b604082019050919050565b6000610f5460258361116f565b9150610f5f82611440565b604082019050919050565b6000610f7760248361116f565b9150610f828261148f565b604082019050919050565b6000610f9a60258361116f565b9150610fa5826114de565b604082019050919050565b6000610fbd601f8361116f565b9150610fc88261152d565b602082019050919050565b610fdc81611214565b82525050565b610feb8161121e565b82525050565b60006020820190506110066000830184610e73565b92915050565b600060208201905081810360008301526110268184610e82565b905092915050565b6000602082019050818103600083015261104781610ebb565b9050919050565b6000602082019050818103600083015261106781610ede565b9050919050565b6000602082019050818103600083015261108781610f01565b9050919050565b600060208201905081810360008301526110a781610f24565b9050919050565b600060208201905081810360008301526110c781610f47565b9050919050565b600060208201905081810360008301526110e781610f6a565b9050919050565b6000602082019050818103600083015261110781610f8d565b9050919050565b6000602082019050818103600083015261112781610fb0565b9050919050565b60006020820190506111436000830184610fd3565b92915050565b600060208201905061115e6000830184610fe2565b92915050565b600081519050919050565b600082825260208201905092915050565b600061118b82611214565b915061119683611214565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156111cb576111ca611290565b5b828201905092915050565b60006111e1826111f4565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b8381101561124957808201518184015260208101905061122e565b83811115611258576000848401525b50505050565b6000600282049050600182168061127657607f821691505b6020821081141561128a576112896112bf565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b61155f816111d6565b811461156a57600080fd5b50565b61157681611214565b811461158157600080fd5b5056fea26469706673582212201da40262a8deb4c47879af3d216e78232f0afa99a28832c8a0fdaec2618c3a4f64736f6c63430008070033

Deployed Bytecode Sourcemap

16347:375:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6150:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8317:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16497:118;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7270:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8968:492;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16627:92;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9869:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7441:127;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6369:104;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10587:413;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7781:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8019:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6150:100;6204:13;6237:5;6230:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6150:100;:::o;8317:169::-;8400:4;8417:39;8426:12;:10;:12::i;:::-;8440:7;8449:6;8417:8;:39::i;:::-;8474:4;8467:11;;8317:169;;;;:::o;16497:118::-;16529:4;16546:39;16553:10;16565:18;16546:5;:39::i;:::-;16603:4;16596:11;;16497:118;:::o;7270:108::-;7331:7;7358:12;;7351:19;;7270:108;:::o;8968:492::-;9108:4;9125:36;9135:6;9143:9;9154:6;9125:9;:36::i;:::-;9174:24;9201:11;:19;9213:6;9201:19;;;;;;;;;;;;;;;:33;9221:12;:10;:12::i;:::-;9201:33;;;;;;;;;;;;;;;;9174:60;;9273:6;9253:16;:26;;9245:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;9360:57;9369:6;9377:12;:10;:12::i;:::-;9410:6;9391:16;:25;9360:8;:57::i;:::-;9448:4;9441:11;;;8968:492;;;;;:::o;16627:92::-;16685:5;16710:1;16703:8;;16627:92;:::o;9869:215::-;9957:4;9974:80;9983:12;:10;:12::i;:::-;9997:7;10043:10;10006:11;:25;10018:12;:10;:12::i;:::-;10006:25;;;;;;;;;;;;;;;:34;10032:7;10006:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;9974:8;:80::i;:::-;10072:4;10065:11;;9869:215;;;;:::o;7441:127::-;7515:7;7542:9;:18;7552:7;7542:18;;;;;;;;;;;;;;;;7535:25;;7441:127;;;:::o;6369:104::-;6425:13;6458:7;6451:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6369:104;:::o;10587:413::-;10680:4;10697:24;10724:11;:25;10736:12;:10;:12::i;:::-;10724:25;;;;;;;;;;;;;;;:34;10750:7;10724:34;;;;;;;;;;;;;;;;10697:61;;10797:15;10777:16;:35;;10769:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;10890:67;10899:12;:10;:12::i;:::-;10913:7;10941:15;10922:16;:34;10890:8;:67::i;:::-;10988:4;10981:11;;;10587:413;;;;:::o;7781:175::-;7867:4;7884:42;7894:12;:10;:12::i;:::-;7908:9;7919:6;7884:9;:42::i;:::-;7944:4;7937:11;;7781:175;;;;:::o;8019:151::-;8108:7;8135:11;:18;8147:5;8135:18;;;;;;;;;;;;;;;:27;8154:7;8135:27;;;;;;;;;;;;;;;;8128:34;;8019:151;;;;:::o;3958:98::-;4011:7;4038:10;4031:17;;3958:98;:::o;14271:380::-;14424:1;14407:19;;:5;:19;;;;14399:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14505:1;14486:21;;:7;:21;;;;14478:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14589:6;14559:11;:18;14571:5;14559:18;;;;;;;;;;;;;;;:27;14578:7;14559:27;;;;;;;;;;;;;;;:36;;;;14627:7;14611:32;;14620:5;14611:32;;;14636:6;14611:32;;;;;;:::i;:::-;;;;;;;;14271:380;;;:::o;12510:399::-;12613:1;12594:21;;:7;:21;;;;12586:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;12664:49;12693:1;12697:7;12706:6;12664:20;:49::i;:::-;12742:6;12726:12;;:22;;;;;;;:::i;:::-;;;;;;;;12781:6;12759:9;:18;12769:7;12759:18;;;;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;12824:7;12803:37;;12820:1;12803:37;;;12833:6;12803:37;;;;;;:::i;:::-;;;;;;;;12853:48;12881:1;12885:7;12894:6;12853:19;:48::i;:::-;12510:399;;:::o;11490:733::-;11648:1;11630:20;;:6;:20;;;;11622:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;11732:1;11711:23;;:9;:23;;;;11703:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;11787:47;11808:6;11816:9;11827:6;11787:20;:47::i;:::-;11847:21;11871:9;:17;11881:6;11871:17;;;;;;;;;;;;;;;;11847:41;;11924:6;11907:13;:23;;11899:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;12045:6;12029:13;:22;12009:9;:17;12019:6;12009:17;;;;;;;;;;;;;;;:42;;;;12097:6;12073:9;:20;12083:9;12073:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;12138:9;12121:35;;12130:6;12121:35;;;12149:6;12121:35;;;;;;:::i;:::-;;;;;;;;12169:46;12189:6;12197:9;12208:6;12169:19;:46::i;:::-;11611:612;11490:733;;;:::o;15251:125::-;;;;:::o;15980:124::-;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:::-;198:5;236:6;223:20;214:29;;252:33;279:5;252:33;:::i;:::-;152:139;;;;:::o;297:329::-;356:6;405:2;393:9;384:7;380:23;376:32;373:119;;;411:79;;:::i;:::-;373:119;531:1;556:53;601:7;592:6;581:9;577:22;556:53;:::i;:::-;546:63;;502:117;297:329;;;;:::o;632:474::-;700:6;708;757:2;745:9;736:7;732:23;728:32;725:119;;;763:79;;:::i;:::-;725:119;883:1;908:53;953:7;944:6;933:9;929:22;908:53;:::i;:::-;898:63;;854:117;1010:2;1036:53;1081:7;1072:6;1061:9;1057:22;1036:53;:::i;:::-;1026:63;;981:118;632:474;;;;;:::o;1112:619::-;1189:6;1197;1205;1254:2;1242:9;1233:7;1229:23;1225:32;1222:119;;;1260:79;;:::i;:::-;1222:119;1380:1;1405:53;1450:7;1441:6;1430:9;1426:22;1405:53;:::i;:::-;1395:63;;1351:117;1507:2;1533:53;1578:7;1569:6;1558:9;1554:22;1533:53;:::i;:::-;1523:63;;1478:118;1635:2;1661:53;1706:7;1697:6;1686:9;1682:22;1661:53;:::i;:::-;1651:63;;1606:118;1112:619;;;;;:::o;1737:474::-;1805:6;1813;1862:2;1850:9;1841:7;1837:23;1833:32;1830:119;;;1868:79;;:::i;:::-;1830:119;1988:1;2013:53;2058:7;2049:6;2038:9;2034:22;2013:53;:::i;:::-;2003:63;;1959:117;2115:2;2141:53;2186:7;2177:6;2166:9;2162:22;2141:53;:::i;:::-;2131:63;;2086:118;1737:474;;;;;:::o;2217:109::-;2298:21;2313:5;2298:21;:::i;:::-;2293:3;2286:34;2217:109;;:::o;2332:364::-;2420:3;2448:39;2481:5;2448:39;:::i;:::-;2503:71;2567:6;2562:3;2503:71;:::i;:::-;2496:78;;2583:52;2628:6;2623:3;2616:4;2609:5;2605:16;2583:52;:::i;:::-;2660:29;2682:6;2660:29;:::i;:::-;2655:3;2651:39;2644:46;;2424:272;2332:364;;;;:::o;2702:366::-;2844:3;2865:67;2929:2;2924:3;2865:67;:::i;:::-;2858:74;;2941:93;3030:3;2941:93;:::i;:::-;3059:2;3054:3;3050:12;3043:19;;2702:366;;;:::o;3074:::-;3216:3;3237:67;3301:2;3296:3;3237:67;:::i;:::-;3230:74;;3313:93;3402:3;3313:93;:::i;:::-;3431:2;3426:3;3422:12;3415:19;;3074:366;;;:::o;3446:::-;3588:3;3609:67;3673:2;3668:3;3609:67;:::i;:::-;3602:74;;3685:93;3774:3;3685:93;:::i;:::-;3803:2;3798:3;3794:12;3787:19;;3446:366;;;:::o;3818:::-;3960:3;3981:67;4045:2;4040:3;3981:67;:::i;:::-;3974:74;;4057:93;4146:3;4057:93;:::i;:::-;4175:2;4170:3;4166:12;4159:19;;3818:366;;;:::o;4190:::-;4332:3;4353:67;4417:2;4412:3;4353:67;:::i;:::-;4346:74;;4429:93;4518:3;4429:93;:::i;:::-;4547:2;4542:3;4538:12;4531:19;;4190:366;;;:::o;4562:::-;4704:3;4725:67;4789:2;4784:3;4725:67;:::i;:::-;4718:74;;4801:93;4890:3;4801:93;:::i;:::-;4919:2;4914:3;4910:12;4903:19;;4562:366;;;:::o;4934:::-;5076:3;5097:67;5161:2;5156:3;5097:67;:::i;:::-;5090:74;;5173:93;5262:3;5173:93;:::i;:::-;5291:2;5286:3;5282:12;5275:19;;4934:366;;;:::o;5306:::-;5448:3;5469:67;5533:2;5528:3;5469:67;:::i;:::-;5462:74;;5545:93;5634:3;5545:93;:::i;:::-;5663:2;5658:3;5654:12;5647:19;;5306:366;;;:::o;5678:118::-;5765:24;5783:5;5765:24;:::i;:::-;5760:3;5753:37;5678:118;;:::o;5802:112::-;5885:22;5901:5;5885:22;:::i;:::-;5880:3;5873:35;5802:112;;:::o;5920:210::-;6007:4;6045:2;6034:9;6030:18;6022:26;;6058:65;6120:1;6109:9;6105:17;6096:6;6058:65;:::i;:::-;5920:210;;;;:::o;6136:313::-;6249:4;6287:2;6276:9;6272:18;6264:26;;6336:9;6330:4;6326:20;6322:1;6311:9;6307:17;6300:47;6364:78;6437:4;6428:6;6364:78;:::i;:::-;6356:86;;6136:313;;;;:::o;6455:419::-;6621:4;6659:2;6648:9;6644:18;6636:26;;6708:9;6702:4;6698:20;6694:1;6683:9;6679:17;6672:47;6736:131;6862:4;6736:131;:::i;:::-;6728:139;;6455:419;;;:::o;6880:::-;7046:4;7084:2;7073:9;7069:18;7061:26;;7133:9;7127:4;7123:20;7119:1;7108:9;7104:17;7097:47;7161:131;7287:4;7161:131;:::i;:::-;7153:139;;6880:419;;;:::o;7305:::-;7471:4;7509:2;7498:9;7494:18;7486:26;;7558:9;7552:4;7548:20;7544:1;7533:9;7529:17;7522:47;7586:131;7712:4;7586:131;:::i;:::-;7578:139;;7305:419;;;:::o;7730:::-;7896:4;7934:2;7923:9;7919:18;7911:26;;7983:9;7977:4;7973:20;7969:1;7958:9;7954:17;7947:47;8011:131;8137:4;8011:131;:::i;:::-;8003:139;;7730:419;;;:::o;8155:::-;8321:4;8359:2;8348:9;8344:18;8336:26;;8408:9;8402:4;8398:20;8394:1;8383:9;8379:17;8372:47;8436:131;8562:4;8436:131;:::i;:::-;8428:139;;8155:419;;;:::o;8580:::-;8746:4;8784:2;8773:9;8769:18;8761:26;;8833:9;8827:4;8823:20;8819:1;8808:9;8804:17;8797:47;8861:131;8987:4;8861:131;:::i;:::-;8853:139;;8580:419;;;:::o;9005:::-;9171:4;9209:2;9198:9;9194:18;9186:26;;9258:9;9252:4;9248:20;9244:1;9233:9;9229:17;9222:47;9286:131;9412:4;9286:131;:::i;:::-;9278:139;;9005:419;;;:::o;9430:::-;9596:4;9634:2;9623:9;9619:18;9611:26;;9683:9;9677:4;9673:20;9669:1;9658:9;9654:17;9647:47;9711:131;9837:4;9711:131;:::i;:::-;9703:139;;9430:419;;;:::o;9855:222::-;9948:4;9986:2;9975:9;9971:18;9963:26;;9999:71;10067:1;10056:9;10052:17;10043:6;9999:71;:::i;:::-;9855:222;;;;:::o;10083:214::-;10172:4;10210:2;10199:9;10195:18;10187:26;;10223:67;10287:1;10276:9;10272:17;10263:6;10223:67;:::i;:::-;10083:214;;;;:::o;10384:99::-;10436:6;10470:5;10464:12;10454:22;;10384:99;;;:::o;10489:169::-;10573:11;10607:6;10602:3;10595:19;10647:4;10642:3;10638:14;10623:29;;10489:169;;;;:::o;10664:305::-;10704:3;10723:20;10741:1;10723:20;:::i;:::-;10718:25;;10757:20;10775:1;10757:20;:::i;:::-;10752:25;;10911:1;10843:66;10839:74;10836:1;10833:81;10830:107;;;10917:18;;:::i;:::-;10830:107;10961:1;10958;10954:9;10947:16;;10664:305;;;;:::o;10975:96::-;11012:7;11041:24;11059:5;11041:24;:::i;:::-;11030:35;;10975:96;;;:::o;11077:90::-;11111:7;11154:5;11147:13;11140:21;11129:32;;11077:90;;;:::o;11173:126::-;11210:7;11250:42;11243:5;11239:54;11228:65;;11173:126;;;:::o;11305:77::-;11342:7;11371:5;11360:16;;11305:77;;;:::o;11388:86::-;11423:7;11463:4;11456:5;11452:16;11441:27;;11388:86;;;:::o;11480:307::-;11548:1;11558:113;11572:6;11569:1;11566:13;11558:113;;;11657:1;11652:3;11648:11;11642:18;11638:1;11633:3;11629:11;11622:39;11594:2;11591:1;11587:10;11582:15;;11558:113;;;11689:6;11686:1;11683:13;11680:101;;;11769:1;11760:6;11755:3;11751:16;11744:27;11680:101;11529:258;11480:307;;;:::o;11793:320::-;11837:6;11874:1;11868:4;11864:12;11854:22;;11921:1;11915:4;11911:12;11942:18;11932:81;;11998:4;11990:6;11986:17;11976:27;;11932:81;12060:2;12052:6;12049:14;12029:18;12026:38;12023:84;;;12079:18;;:::i;:::-;12023:84;11844:269;11793:320;;;:::o;12119:180::-;12167:77;12164:1;12157:88;12264:4;12261:1;12254:15;12288:4;12285:1;12278:15;12305:180;12353:77;12350:1;12343:88;12450:4;12447:1;12440:15;12474:4;12471:1;12464:15;12614:117;12723:1;12720;12713:12;12737:102;12778:6;12829:2;12825:7;12820:2;12813:5;12809:14;12805:28;12795:38;;12737:102;;;:::o;12845:222::-;12985:34;12981:1;12973:6;12969:14;12962:58;13054:5;13049:2;13041:6;13037:15;13030:30;12845:222;:::o;13073:221::-;13213:34;13209:1;13201:6;13197:14;13190:58;13282:4;13277:2;13269:6;13265:15;13258:29;13073:221;:::o;13300:225::-;13440:34;13436:1;13428:6;13424:14;13417:58;13509:8;13504:2;13496:6;13492:15;13485:33;13300:225;:::o;13531:227::-;13671:34;13667:1;13659:6;13655:14;13648:58;13740:10;13735:2;13727:6;13723:15;13716:35;13531:227;:::o;13764:224::-;13904:34;13900:1;13892:6;13888:14;13881:58;13973:7;13968:2;13960:6;13956:15;13949:32;13764:224;:::o;13994:223::-;14134:34;14130:1;14122:6;14118:14;14111:58;14203:6;14198:2;14190:6;14186:15;14179:31;13994:223;:::o;14223:224::-;14363:34;14359:1;14351:6;14347:14;14340:58;14432:7;14427:2;14419:6;14415:15;14408:32;14223:224;:::o;14453:181::-;14593:33;14589:1;14581:6;14577:14;14570:57;14453:181;:::o;14640:122::-;14713:24;14731:5;14713:24;:::i;:::-;14706:5;14703:35;14693:63;;14752:1;14749;14742:12;14693:63;14640:122;:::o;14768:::-;14841:24;14859:5;14841:24;:::i;:::-;14834:5;14831:35;14821:63;;14880:1;14877;14870:12;14821:63;14768:122;:::o

Swarm Source

ipfs://1da40262a8deb4c47879af3d216e78232f0afa99a28832c8a0fdaec2618c3a4f
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.