Contract 0x063a1b6cea11a9349e5e76d6672b423682454942 1

 

Contract Overview

Xotik: $XOTIK Token
Balance:
0 MATIC

MATIC Value:
$0.00

Token:
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x28d872267442f2f49f9d98c2770241c4a89d179c36179b53911c2b15f53129b6Transfer285486162022-05-20 12:41:415 days 16 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.000916816034 30.053629921
0x6d4269e8da8384a425b6db6a0d17e3dea607e02554663ebc12e5ff7fd44f5842Burn From285414462022-05-20 8:18:415 days 20 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.000766160558 30.537708085
0x53b16cee3ab5f5ae39c593826ade335c05ae4a85469ea2363aff95f20552d065Burn From284842932022-05-18 22:19:527 days 6 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.00086162401 34.342700389
0xb827176468c9a26bef8a3cf77ad41e4052a2d455cb9c1521ea4e7393143a5edcBurn From284407082022-05-17 19:39:138 days 9 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.000828893347 33.038118217
0x7a0c2180f840452ee4918317065f6a0c9633846b4e27c885bd6309f2c02b90abApprove284209092022-05-17 7:34:598 days 21 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.000749036233 30.04316675
0xb3a4f0bb9906ba544c0aa4616633f27ea96505a7ff30138cfcc498918bcb8e65Approve284208942022-05-17 7:34:298 days 21 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.000809122566 30.04316675
0xd327c3cd4c35afe248ce42b9b9046900e13cec93bf382cf4e5e418cfd2b81a37Approve284208672022-05-17 7:33:358 days 21 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.000809122566 30.043166745
0xb9087d2c2fb095db2ad53eb009ed8020f5c37b1f2687b56b38097c775bb1cc00Approve284208452022-05-17 7:32:478 days 21 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.000749036233 30.043166745
0xce88c8a4ad57f4c5f5d78b08eca83ec83bb2dd237c9e9208d7d520157097fc22Approve284208392022-05-17 7:32:358 days 21 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.000749036233 30.043166771
0x082b4d37cd87fa29d9881dc256b6169089f4dbbd5c1e01a7bd3c0a8cbed69c89Approve284208082022-05-17 7:31:338 days 21 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.000809122568 30.043166817
0x818994c8bec0cff023fd4d52cdaa1a8657844d90e5abafef4e58ca1dcf2ad007Approve284207712022-05-17 7:30:158 days 21 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.00074903626 30.043167828
0x42b350030787736f61b5f4497ff518dd04a87484bd70d5e0919485e9197bca37Burn From283938242022-05-16 15:24:539 days 13 hrs ago0x8a3c4f92ac0b6e95f795fa2542c0aa917409a773 IN  Xotik: $XOTIK Token0 MATIC0.001843345052 73.825345542
0x9fb10a34e95319de6350ddd70f982512dc77bb93474487498f0de8e77aa2e519Transfer283435292022-05-15 9:56:0110 days 19 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.0021428145
0x6e801724dcb6d3315ff395e37ac211239ec721d810d2046b58ca58e5b931564bTransfer281563192022-05-10 15:07:3815 days 13 hrs ago0xe9417d88c06e04bb96cb5215a3c5c9249b834139 IN  Xotik: $XOTIK Token0 MATIC0.006522244007213.970343406
0x996cdc454e8ce6060e70b2a4b58960366d22bba944a78f4be9f799c9eba2e9d7Transfer281546242022-05-10 14:07:1615 days 14 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.009999619513 190.94175126
0x6903709ca917e2fcc34e2a444c6ff007ab8b6b2cb2091993b3d595b338c94db4Transfer281543092022-05-10 13:56:2615 days 15 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.00907275037 173.203588456
0x5543b78165607c3327d283050056598a656d5cca86a5578004851c91d397283bTransfer278348692022-05-02 12:33:2923 days 16 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.001060929742 30.070000058
0x8afc184fe9ad02907db9e3d15276034210d422ddb9d8684b9adfe07b1df2e585Transfer278348402022-05-02 12:32:3123 days 16 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.001061282565 30.08000016
0x2f480664383be950e4b864357b3ade4bbbe8df6b81def4949bb878e01079901dApprove275696372022-04-25 19:41:0930 days 9 hrs ago0x562da46ee83abe7cabc63a4c2a97ef834bc9a96b IN  Xotik: $XOTIK Token0 MATIC0.002563076036 54.284057021
0x29b2f9a06c9f58f62a7ab33a9ada91a6ed3822a93fe3c97f012e0f72e5a1fafeTransfer274018162022-04-21 12:43:5234 days 16 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.002862218855 54.64126715
0x1474a60e7a098dbea0b27d305d746a6e383f8bacae727821c69430d7e0b57ae4Transfer271203952022-04-14 8:47:4741 days 20 hrs ago0x562da46ee83abe7cabc63a4c2a97ef834bc9a96b IN  Xotik: $XOTIK Token0 MATIC0.001060521064 30.068643731
0x364ae1a710858e39040c3ffc12998664dffa4af28631ef39a4ebb18fe0b4c8f1Transfer270938272022-04-13 16:33:4742 days 12 hrs ago0x562da46ee83abe7cabc63a4c2a97ef834bc9a96b IN  Xotik: $XOTIK Token0 MATIC0.001576871856 30.110213026
0x76ed5876a819e72cdf5d2a51a475b3c240bb8d150c6fb782ee5dd39c92014c70Transfer270920942022-04-13 15:31:5242 days 13 hrs ago0x562da46ee83abe7cabc63a4c2a97ef834bc9a96b IN  Xotik: $XOTIK Token0 MATIC0.002128748001 60.35576982
0x7ba58a011f8617bf02550cca1b0b810f8dff88ddfafb619d7902865cdcf3432dTransfer270863662022-04-13 11:53:3642 days 17 hrs ago0x562da46ee83abe7cabc63a4c2a97ef834bc9a96b IN  Xotik: $XOTIK Token0 MATIC0.001592585545 30.410264374
0x3d173cdb99477084369cae595564ba853d3341be53088d3a8c1887332875948dTransfer260340692022-03-17 9:01:5269 days 20 hrs ago0x37bc18e1028d14034da18a8e3729ef7c730445f9 IN  Xotik: $XOTIK Token0 MATIC0.00173224248933.076999998
[ Download CSV Export 

OVERVIEW

Xotik is an ERC-20 token based on the Polygon blockchain.

Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Xotik

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at polygonscan.com on 2021-12-10
*/

// SPDX-License-Identifier: MIT
// File: @openzeppelin/[email protected]/utils/Context.sol


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

pragma solidity ^0.8.0;

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

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

// File: @openzeppelin/[email protected]/access/Ownable.sol


// OpenZeppelin Contracts v4.4.0 (access/Ownable.sol)

pragma solidity ^0.8.0;


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

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

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

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

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

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

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

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

// File: @openzeppelin/[email protected]/token/ERC20/IERC20.sol


// OpenZeppelin Contracts v4.4.0 (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);
}

// File: @openzeppelin/[email protected]/token/ERC20/extensions/IERC20Metadata.sol


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

pragma solidity ^0.8.0;


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

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

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

// File: @openzeppelin/[email protected]/token/ERC20/ERC20.sol


// OpenZeppelin Contracts v4.4.0 (token/ERC20/ERC20.sol)

pragma solidity ^0.8.0;




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

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

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

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

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

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

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

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

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

    /**
     * @dev See {IERC20-transfer}.
     *
     * Requirements:
     *
     * - `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 {}
}

// File: @openzeppelin/[email protected]/token/ERC20/extensions/ERC20Burnable.sol


// OpenZeppelin Contracts v4.4.0 (token/ERC20/extensions/ERC20Burnable.sol)

pragma solidity ^0.8.0;



/**
 * @dev Extension of {ERC20} that allows token holders to destroy both their own
 * tokens and those that they have an allowance for, in a way that can be
 * recognized off-chain (via event analysis).
 */
abstract contract ERC20Burnable is Context, ERC20 {
    /**
     * @dev Destroys `amount` tokens from the caller.
     *
     * See {ERC20-_burn}.
     */
    function burn(uint256 amount) public virtual {
        _burn(_msgSender(), amount);
    }

    /**
     * @dev Destroys `amount` tokens from `account`, deducting from the caller's
     * allowance.
     *
     * See {ERC20-_burn} and {ERC20-allowance}.
     *
     * Requirements:
     *
     * - the caller must have allowance for ``accounts``'s tokens of at least
     * `amount`.
     */
    function burnFrom(address account, uint256 amount) public virtual {
        uint256 currentAllowance = allowance(account, _msgSender());
        require(currentAllowance >= amount, "ERC20: burn amount exceeds allowance");
        unchecked {
            _approve(account, _msgSender(), currentAllowance - amount);
        }
        _burn(account, amount);
    }
}

// File: contract-3b0082a49b.sol


pragma solidity ^0.8.2;




/// @custom:security-contact [email protected]
contract Xotik is ERC20, ERC20Burnable, Ownable {
    constructor() ERC20("Xotik", "$XOTIK") {}

    function mint(address to, uint256 amount) public onlyOwner {
        _mint(to, amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burnFrom","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[],"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":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b506040518060400160405280600581526020017f586f74696b0000000000000000000000000000000000000000000000000000008152506040518060400160405280600681526020017f24584f54494b0000000000000000000000000000000000000000000000000000815250816003908051906020019062000096929190620001a6565b508060049080519060200190620000af929190620001a6565b505050620000d2620000c6620000d860201b60201c565b620000e060201b60201c565b620002bb565b600033905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b828054620001b49062000256565b90600052602060002090601f016020900481019282620001d8576000855562000224565b82601f10620001f357805160ff191683800117855562000224565b8280016001018555821562000224579182015b828111156200022357825182559160200191906001019062000206565b5b50905062000233919062000237565b5090565b5b808211156200025257600081600090555060010162000238565b5090565b600060028204905060018216806200026f57607f821691505b602082108114156200028657620002856200028c565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b611f0f80620002cb6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806370a08231116100a257806395d89b411161007157806395d89b41146102a6578063a457c2d7146102c4578063a9059cbb146102f4578063dd62ed3e14610324578063f2fde38b146103545761010b565b806370a0823114610232578063715018a61461026257806379cc67901461026c5780638da5cb5b146102885761010b565b8063313ce567116100de578063313ce567146101ac57806339509351146101ca57806340c10f19146101fa57806342966c68146102165761010b565b806306fdde0314610110578063095ea7b31461012e57806318160ddd1461015e57806323b872dd1461017c575b600080fd5b610118610370565b6040516101259190611728565b60405180910390f35b61014860048036038101906101439190611449565b610402565b604051610155919061170d565b60405180910390f35b610166610420565b60405161017391906118ea565b60405180910390f35b610196600480360381019061019191906113f6565b61042a565b6040516101a3919061170d565b60405180910390f35b6101b4610522565b6040516101c19190611905565b60405180910390f35b6101e460048036038101906101df9190611449565b61052b565b6040516101f1919061170d565b60405180910390f35b610214600480360381019061020f9190611449565b6105d7565b005b610230600480360381019061022b9190611489565b610661565b005b61024c60048036038101906102479190611389565b610675565b60405161025991906118ea565b60405180910390f35b61026a6106bd565b005b61028660048036038101906102819190611449565b610745565b005b6102906107c0565b60405161029d91906116f2565b60405180910390f35b6102ae6107ea565b6040516102bb9190611728565b60405180910390f35b6102de60048036038101906102d99190611449565b61087c565b6040516102eb919061170d565b60405180910390f35b61030e60048036038101906103099190611449565b610967565b60405161031b919061170d565b60405180910390f35b61033e600480360381019061033991906113b6565b610985565b60405161034b91906118ea565b60405180910390f35b61036e60048036038101906103699190611389565b610a0c565b005b60606003805461037f90611a4e565b80601f01602080910402602001604051908101604052809291908181526020018280546103ab90611a4e565b80156103f85780601f106103cd576101008083540402835291602001916103f8565b820191906000526020600020905b8154815290600101906020018083116103db57829003601f168201915b5050505050905090565b600061041661040f610b04565b8484610b0c565b6001905092915050565b6000600254905090565b6000610437848484610cd7565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610482610b04565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610502576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104f9906117ea565b60405180910390fd5b6105168561050e610b04565b858403610b0c565b60019150509392505050565b60006012905090565b60006105cd610538610b04565b848460016000610546610b04565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546105c8919061193c565b610b0c565b6001905092915050565b6105df610b04565b73ffffffffffffffffffffffffffffffffffffffff166105fd6107c0565b73ffffffffffffffffffffffffffffffffffffffff1614610653576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161064a9061180a565b60405180910390fd5b61065d8282610f58565b5050565b61067261066c610b04565b826110b8565b50565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6106c5610b04565b73ffffffffffffffffffffffffffffffffffffffff166106e36107c0565b73ffffffffffffffffffffffffffffffffffffffff1614610739576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107309061180a565b60405180910390fd5b610743600061128f565b565b600061075883610753610b04565b610985565b90508181101561079d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107949061182a565b60405180910390fd5b6107b1836107a9610b04565b848403610b0c565b6107bb83836110b8565b505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546107f990611a4e565b80601f016020809104026020016040519081016040528092919081815260200182805461082590611a4e565b80156108725780601f1061084757610100808354040283529160200191610872565b820191906000526020600020905b81548152906001019060200180831161085557829003601f168201915b5050505050905090565b6000806001600061088b610b04565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610948576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093f906118aa565b60405180910390fd5b61095c610953610b04565b85858403610b0c565b600191505092915050565b600061097b610974610b04565b8484610cd7565b6001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610a14610b04565b73ffffffffffffffffffffffffffffffffffffffff16610a326107c0565b73ffffffffffffffffffffffffffffffffffffffff1614610a88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7f9061180a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610af8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aef9061178a565b60405180910390fd5b610b018161128f565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610b7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b739061188a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610bec576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610be3906117aa565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610cca91906118ea565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3e9061186a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610db7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dae9061174a565b60405180910390fd5b610dc2838383611355565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610e48576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3f906117ca565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610edb919061193c565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610f3f91906118ea565b60405180910390a3610f5284848461135a565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610fc8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbf906118ca565b60405180910390fd5b610fd460008383611355565b8060026000828254610fe6919061193c565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461103b919061193c565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110a091906118ea565b60405180910390a36110b46000838361135a565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111f9061184a565b60405180910390fd5b61113482600083611355565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156111ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111b19061176a565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282546112119190611992565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161127691906118ea565b60405180910390a361128a8360008461135a565b505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b505050565b505050565b60008135905061136e81611eab565b92915050565b60008135905061138381611ec2565b92915050565b60006020828403121561139f5761139e611ade565b5b60006113ad8482850161135f565b91505092915050565b600080604083850312156113cd576113cc611ade565b5b60006113db8582860161135f565b92505060206113ec8582860161135f565b9150509250929050565b60008060006060848603121561140f5761140e611ade565b5b600061141d8682870161135f565b935050602061142e8682870161135f565b925050604061143f86828701611374565b9150509250925092565b600080604083850312156114605761145f611ade565b5b600061146e8582860161135f565b925050602061147f85828601611374565b9150509250929050565b60006020828403121561149f5761149e611ade565b5b60006114ad84828501611374565b91505092915050565b6114bf816119c6565b82525050565b6114ce816119d8565b82525050565b60006114df82611920565b6114e9818561192b565b93506114f9818560208601611a1b565b61150281611ae3565b840191505092915050565b600061151a60238361192b565b915061152582611af4565b604082019050919050565b600061153d60228361192b565b915061154882611b43565b604082019050919050565b600061156060268361192b565b915061156b82611b92565b604082019050919050565b600061158360228361192b565b915061158e82611be1565b604082019050919050565b60006115a660268361192b565b91506115b182611c30565b604082019050919050565b60006115c960288361192b565b91506115d482611c7f565b604082019050919050565b60006115ec60208361192b565b91506115f782611cce565b602082019050919050565b600061160f60248361192b565b915061161a82611cf7565b604082019050919050565b600061163260218361192b565b915061163d82611d46565b604082019050919050565b600061165560258361192b565b915061166082611d95565b604082019050919050565b600061167860248361192b565b915061168382611de4565b604082019050919050565b600061169b60258361192b565b91506116a682611e33565b604082019050919050565b60006116be601f8361192b565b91506116c982611e82565b602082019050919050565b6116dd81611a04565b82525050565b6116ec81611a0e565b82525050565b600060208201905061170760008301846114b6565b92915050565b600060208201905061172260008301846114c5565b92915050565b6000602082019050818103600083015261174281846114d4565b905092915050565b600060208201905081810360008301526117638161150d565b9050919050565b6000602082019050818103600083015261178381611530565b9050919050565b600060208201905081810360008301526117a381611553565b9050919050565b600060208201905081810360008301526117c381611576565b9050919050565b600060208201905081810360008301526117e381611599565b9050919050565b60006020820190508181036000830152611803816115bc565b9050919050565b60006020820190508181036000830152611823816115df565b9050919050565b6000602082019050818103600083015261184381611602565b9050919050565b6000602082019050818103600083015261186381611625565b9050919050565b6000602082019050818103600083015261188381611648565b9050919050565b600060208201905081810360008301526118a38161166b565b9050919050565b600060208201905081810360008301526118c38161168e565b9050919050565b600060208201905081810360008301526118e3816116b1565b9050919050565b60006020820190506118ff60008301846116d4565b92915050565b600060208201905061191a60008301846116e3565b92915050565b600081519050919050565b600082825260208201905092915050565b600061194782611a04565b915061195283611a04565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561198757611986611a80565b5b828201905092915050565b600061199d82611a04565b91506119a883611a04565b9250828210156119bb576119ba611a80565b5b828203905092915050565b60006119d1826119e4565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015611a39578082015181840152602081019050611a1e565b83811115611a48576000848401525b50505050565b60006002820490506001821680611a6657607f821691505b60208210811415611a7a57611a79611aaf565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f7760008201527f616e636500000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b611eb4816119c6565b8114611ebf57600080fd5b50565b611ecb81611a04565b8114611ed657600080fd5b5056fea2646970667358221220b81eb6796789491e0b10cb7f1f96eb1a753fa9c1e2b102a90505f1f6c1f9109f64736f6c63430008070033

Deployed ByteCode Sourcemap

20691:202:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9248:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11415:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10368:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12066:492;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10210:93;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12967:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20795:95;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19783:91;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10539:127;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2651:103;;;:::i;:::-;;20193:368;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2000:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9467:104;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13685:413;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10879:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11117:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2909:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9248:100;9302:13;9335:5;9328:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9248:100;:::o;11415:169::-;11498:4;11515:39;11524:12;:10;:12::i;:::-;11538:7;11547:6;11515:8;:39::i;:::-;11572:4;11565:11;;11415:169;;;;:::o;10368:108::-;10429:7;10456:12;;10449:19;;10368:108;:::o;12066:492::-;12206:4;12223:36;12233:6;12241:9;12252:6;12223:9;:36::i;:::-;12272:24;12299:11;:19;12311:6;12299:19;;;;;;;;;;;;;;;:33;12319:12;:10;:12::i;:::-;12299:33;;;;;;;;;;;;;;;;12272:60;;12371:6;12351:16;:26;;12343:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;12458:57;12467:6;12475:12;:10;:12::i;:::-;12508:6;12489:16;:25;12458:8;:57::i;:::-;12546:4;12539:11;;;12066:492;;;;;:::o;10210:93::-;10268:5;10293:2;10286:9;;10210:93;:::o;12967:215::-;13055:4;13072:80;13081:12;:10;:12::i;:::-;13095:7;13141:10;13104:11;:25;13116:12;:10;:12::i;:::-;13104:25;;;;;;;;;;;;;;;:34;13130:7;13104:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;13072:8;:80::i;:::-;13170:4;13163:11;;12967:215;;;;:::o;20795:95::-;2231:12;:10;:12::i;:::-;2220:23;;:7;:5;:7::i;:::-;:23;;;2212:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;20865:17:::1;20871:2;20875:6;20865:5;:17::i;:::-;20795:95:::0;;:::o;19783:91::-;19839:27;19845:12;:10;:12::i;:::-;19859:6;19839:5;:27::i;:::-;19783:91;:::o;10539:127::-;10613:7;10640:9;:18;10650:7;10640:18;;;;;;;;;;;;;;;;10633:25;;10539:127;;;:::o;2651:103::-;2231:12;:10;:12::i;:::-;2220:23;;:7;:5;:7::i;:::-;:23;;;2212:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;2716:30:::1;2743:1;2716:18;:30::i;:::-;2651:103::o:0;20193:368::-;20270:24;20297:32;20307:7;20316:12;:10;:12::i;:::-;20297:9;:32::i;:::-;20270:59;;20368:6;20348:16;:26;;20340:75;;;;;;;;;;;;:::i;:::-;;;;;;;;;20451:58;20460:7;20469:12;:10;:12::i;:::-;20502:6;20483:16;:25;20451:8;:58::i;:::-;20531:22;20537:7;20546:6;20531:5;:22::i;:::-;20259:302;20193:368;;:::o;2000:87::-;2046:7;2073:6;;;;;;;;;;;2066:13;;2000:87;:::o;9467:104::-;9523:13;9556:7;9549:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9467:104;:::o;13685:413::-;13778:4;13795:24;13822:11;:25;13834:12;:10;:12::i;:::-;13822:25;;;;;;;;;;;;;;;:34;13848:7;13822:34;;;;;;;;;;;;;;;;13795:61;;13895:15;13875:16;:35;;13867:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;13988:67;13997:12;:10;:12::i;:::-;14011:7;14039:15;14020:16;:34;13988:8;:67::i;:::-;14086:4;14079:11;;;13685:413;;;;:::o;10879:175::-;10965:4;10982:42;10992:12;:10;:12::i;:::-;11006:9;11017:6;10982:9;:42::i;:::-;11042:4;11035:11;;10879:175;;;;:::o;11117:151::-;11206:7;11233:11;:18;11245:5;11233:18;;;;;;;;;;;;;;;:27;11252:7;11233:27;;;;;;;;;;;;;;;;11226:34;;11117:151;;;;:::o;2909:201::-;2231:12;:10;:12::i;:::-;2220:23;;:7;:5;:7::i;:::-;:23;;;2212:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;3018:1:::1;2998:22;;:8;:22;;;;2990:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;3074:28;3093:8;3074:18;:28::i;:::-;2909:201:::0;:::o;718:98::-;771:7;798:10;791:17;;718:98;:::o;17369:380::-;17522:1;17505:19;;:5;:19;;;;17497:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17603:1;17584:21;;:7;:21;;;;17576:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17687:6;17657:11;:18;17669:5;17657:18;;;;;;;;;;;;;;;:27;17676:7;17657:27;;;;;;;;;;;;;;;:36;;;;17725:7;17709:32;;17718:5;17709:32;;;17734:6;17709:32;;;;;;:::i;:::-;;;;;;;;17369:380;;;:::o;14588:733::-;14746:1;14728:20;;:6;:20;;;;14720:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;14830:1;14809:23;;:9;:23;;;;14801:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;14885:47;14906:6;14914:9;14925:6;14885:20;:47::i;:::-;14945:21;14969:9;:17;14979:6;14969:17;;;;;;;;;;;;;;;;14945:41;;15022:6;15005:13;:23;;14997:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;15143:6;15127:13;:22;15107:9;:17;15117:6;15107:17;;;;;;;;;;;;;;;:42;;;;15195:6;15171:9;:20;15181:9;15171:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;15236:9;15219:35;;15228:6;15219:35;;;15247:6;15219:35;;;;;;:::i;:::-;;;;;;;;15267:46;15287:6;15295:9;15306:6;15267:19;:46::i;:::-;14709:612;14588:733;;;:::o;15608:399::-;15711:1;15692:21;;:7;:21;;;;15684:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;15762:49;15791:1;15795:7;15804:6;15762:20;:49::i;:::-;15840:6;15824:12;;:22;;;;;;;:::i;:::-;;;;;;;;15879:6;15857:9;:18;15867:7;15857:18;;;;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;15922:7;15901:37;;15918:1;15901:37;;;15931:6;15901:37;;;;;;:::i;:::-;;;;;;;;15951:48;15979:1;15983:7;15992:6;15951:19;:48::i;:::-;15608:399;;:::o;16340:591::-;16443:1;16424:21;;:7;:21;;;;16416:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;16496:49;16517:7;16534:1;16538:6;16496:20;:49::i;:::-;16558:22;16583:9;:18;16593:7;16583:18;;;;;;;;;;;;;;;;16558:43;;16638:6;16620:14;:24;;16612:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;16757:6;16740:14;:23;16719:9;:18;16729:7;16719:18;;;;;;;;;;;;;;;:44;;;;16801:6;16785:12;;:22;;;;;;;:::i;:::-;;;;;;;;16851:1;16825:37;;16834:7;16825:37;;;16855:6;16825:37;;;;;;:::i;:::-;;;;;;;;16875:48;16895:7;16912:1;16916:6;16875:19;:48::i;:::-;16405:526;16340:591;;:::o;3270:191::-;3344:16;3363:6;;;;;;;;;;;3344:25;;3389:8;3380:6;;:17;;;;;;;;;;;;;;;;;;3444:8;3413:40;;3434:8;3413:40;;;;;;;;;;;;3333:128;3270:191;:::o;18349:125::-;;;;:::o;19078: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:329::-;2276:6;2325:2;2313:9;2304:7;2300:23;2296:32;2293:119;;;2331:79;;:::i;:::-;2293:119;2451:1;2476:53;2521:7;2512:6;2501:9;2497:22;2476:53;:::i;:::-;2466:63;;2422:117;2217:329;;;;:::o;2552:118::-;2639:24;2657:5;2639:24;:::i;:::-;2634:3;2627:37;2552:118;;:::o;2676:109::-;2757:21;2772:5;2757:21;:::i;:::-;2752:3;2745:34;2676:109;;:::o;2791:364::-;2879:3;2907:39;2940:5;2907:39;:::i;:::-;2962:71;3026:6;3021:3;2962:71;:::i;:::-;2955:78;;3042:52;3087:6;3082:3;3075:4;3068:5;3064:16;3042:52;:::i;:::-;3119:29;3141:6;3119:29;:::i;:::-;3114:3;3110:39;3103:46;;2883:272;2791:364;;;;:::o;3161:366::-;3303:3;3324:67;3388:2;3383:3;3324:67;:::i;:::-;3317:74;;3400:93;3489:3;3400:93;:::i;:::-;3518:2;3513:3;3509:12;3502:19;;3161:366;;;:::o;3533:::-;3675:3;3696:67;3760:2;3755:3;3696:67;:::i;:::-;3689:74;;3772:93;3861:3;3772:93;:::i;:::-;3890:2;3885:3;3881:12;3874:19;;3533:366;;;:::o;3905:::-;4047:3;4068:67;4132:2;4127:3;4068:67;:::i;:::-;4061:74;;4144:93;4233:3;4144:93;:::i;:::-;4262:2;4257:3;4253:12;4246:19;;3905:366;;;:::o;4277:::-;4419:3;4440:67;4504:2;4499:3;4440:67;:::i;:::-;4433:74;;4516:93;4605:3;4516:93;:::i;:::-;4634:2;4629:3;4625:12;4618:19;;4277:366;;;:::o;4649:::-;4791:3;4812:67;4876:2;4871:3;4812:67;:::i;:::-;4805:74;;4888:93;4977:3;4888:93;:::i;:::-;5006:2;5001:3;4997:12;4990:19;;4649:366;;;:::o;5021:::-;5163:3;5184:67;5248:2;5243:3;5184:67;:::i;:::-;5177:74;;5260:93;5349:3;5260:93;:::i;:::-;5378:2;5373:3;5369:12;5362:19;;5021:366;;;:::o;5393:::-;5535:3;5556:67;5620:2;5615:3;5556:67;:::i;:::-;5549:74;;5632:93;5721:3;5632:93;:::i;:::-;5750:2;5745:3;5741:12;5734:19;;5393:366;;;:::o;5765:::-;5907:3;5928:67;5992:2;5987:3;5928:67;:::i;:::-;5921:74;;6004:93;6093:3;6004:93;:::i;:::-;6122:2;6117:3;6113:12;6106:19;;5765:366;;;:::o;6137:::-;6279:3;6300:67;6364:2;6359:3;6300:67;:::i;:::-;6293:74;;6376:93;6465:3;6376:93;:::i;:::-;6494:2;6489:3;6485:12;6478:19;;6137:366;;;:::o;6509:::-;6651:3;6672:67;6736:2;6731:3;6672:67;:::i;:::-;6665:74;;6748:93;6837:3;6748:93;:::i;:::-;6866:2;6861:3;6857:12;6850:19;;6509:366;;;:::o;6881:::-;7023:3;7044:67;7108:2;7103:3;7044:67;:::i;:::-;7037:74;;7120:93;7209:3;7120:93;:::i;:::-;7238:2;7233:3;7229:12;7222:19;;6881:366;;;:::o;7253:::-;7395:3;7416:67;7480:2;7475:3;7416:67;:::i;:::-;7409:74;;7492:93;7581:3;7492:93;:::i;:::-;7610:2;7605:3;7601:12;7594:19;;7253:366;;;:::o;7625:::-;7767:3;7788:67;7852:2;7847:3;7788:67;:::i;:::-;7781:74;;7864:93;7953:3;7864:93;:::i;:::-;7982:2;7977:3;7973:12;7966:19;;7625:366;;;:::o;7997:118::-;8084:24;8102:5;8084:24;:::i;:::-;8079:3;8072:37;7997:118;;:::o;8121:112::-;8204:22;8220:5;8204:22;:::i;:::-;8199:3;8192:35;8121:112;;:::o;8239:222::-;8332:4;8370:2;8359:9;8355:18;8347:26;;8383:71;8451:1;8440:9;8436:17;8427:6;8383:71;:::i;:::-;8239:222;;;;:::o;8467:210::-;8554:4;8592:2;8581:9;8577:18;8569:26;;8605:65;8667:1;8656:9;8652:17;8643:6;8605:65;:::i;:::-;8467:210;;;;:::o;8683:313::-;8796:4;8834:2;8823:9;8819:18;8811:26;;8883:9;8877:4;8873:20;8869:1;8858:9;8854:17;8847:47;8911:78;8984:4;8975:6;8911:78;:::i;:::-;8903:86;;8683:313;;;;:::o;9002:419::-;9168:4;9206:2;9195:9;9191:18;9183:26;;9255:9;9249:4;9245:20;9241:1;9230:9;9226:17;9219:47;9283:131;9409:4;9283:131;:::i;:::-;9275:139;;9002:419;;;:::o;9427:::-;9593:4;9631:2;9620:9;9616:18;9608:26;;9680:9;9674:4;9670:20;9666:1;9655:9;9651:17;9644:47;9708:131;9834:4;9708:131;:::i;:::-;9700:139;;9427:419;;;:::o;9852:::-;10018:4;10056:2;10045:9;10041:18;10033:26;;10105:9;10099:4;10095:20;10091:1;10080:9;10076:17;10069:47;10133:131;10259:4;10133:131;:::i;:::-;10125:139;;9852:419;;;:::o;10277:::-;10443:4;10481:2;10470:9;10466:18;10458:26;;10530:9;10524:4;10520:20;10516:1;10505:9;10501:17;10494:47;10558:131;10684:4;10558:131;:::i;:::-;10550:139;;10277:419;;;:::o;10702:::-;10868:4;10906:2;10895:9;10891:18;10883:26;;10955:9;10949:4;10945:20;10941:1;10930:9;10926:17;10919:47;10983:131;11109:4;10983:131;:::i;:::-;10975:139;;10702:419;;;:::o;11127:::-;11293:4;11331:2;11320:9;11316:18;11308:26;;11380:9;11374:4;11370:20;11366:1;11355:9;11351:17;11344:47;11408:131;11534:4;11408:131;:::i;:::-;11400:139;;11127:419;;;:::o;11552:::-;11718:4;11756:2;11745:9;11741:18;11733:26;;11805:9;11799:4;11795:20;11791:1;11780:9;11776:17;11769:47;11833:131;11959:4;11833:131;:::i;:::-;11825:139;;11552:419;;;:::o;11977:::-;12143:4;12181:2;12170:9;12166:18;12158:26;;12230:9;12224:4;12220:20;12216:1;12205:9;12201:17;12194:47;12258:131;12384:4;12258:131;:::i;:::-;12250:139;;11977:419;;;:::o;12402:::-;12568:4;12606:2;12595:9;12591:18;12583:26;;12655:9;12649:4;12645:20;12641:1;12630:9;12626:17;12619:47;12683:131;12809:4;12683:131;:::i;:::-;12675:139;;12402:419;;;:::o;12827:::-;12993:4;13031:2;13020:9;13016:18;13008:26;;13080:9;13074:4;13070:20;13066:1;13055:9;13051:17;13044:47;13108:131;13234:4;13108:131;:::i;:::-;13100:139;;12827:419;;;:::o;13252:::-;13418:4;13456:2;13445:9;13441:18;13433:26;;13505:9;13499:4;13495:20;13491:1;13480:9;13476:17;13469:47;13533:131;13659:4;13533:131;:::i;:::-;13525:139;;13252:419;;;:::o;13677:::-;13843:4;13881:2;13870:9;13866:18;13858:26;;13930:9;13924:4;13920:20;13916:1;13905:9;13901:17;13894:47;13958:131;14084:4;13958:131;:::i;:::-;13950:139;;13677:419;;;:::o;14102:::-;14268:4;14306:2;14295:9;14291:18;14283:26;;14355:9;14349:4;14345:20;14341:1;14330:9;14326:17;14319:47;14383:131;14509:4;14383:131;:::i;:::-;14375:139;;14102:419;;;:::o;14527:222::-;14620:4;14658:2;14647:9;14643:18;14635:26;;14671:71;14739:1;14728:9;14724:17;14715:6;14671:71;:::i;:::-;14527:222;;;;:::o;14755:214::-;14844:4;14882:2;14871:9;14867:18;14859:26;;14895:67;14959:1;14948:9;14944:17;14935:6;14895:67;:::i;:::-;14755:214;;;;:::o;15056:99::-;15108:6;15142:5;15136:12;15126:22;;15056:99;;;:::o;15161:169::-;15245:11;15279:6;15274:3;15267:19;15319:4;15314:3;15310:14;15295:29;;15161:169;;;;:::o;15336:305::-;15376:3;15395:20;15413:1;15395:20;:::i;:::-;15390:25;;15429:20;15447:1;15429:20;:::i;:::-;15424:25;;15583:1;15515:66;15511:74;15508:1;15505:81;15502:107;;;15589:18;;:::i;:::-;15502:107;15633:1;15630;15626:9;15619:16;;15336:305;;;;:::o;15647:191::-;15687:4;15707:20;15725:1;15707:20;:::i;:::-;15702:25;;15741:20;15759:1;15741:20;:::i;:::-;15736:25;;15780:1;15777;15774:8;15771:34;;;15785:18;;:::i;:::-;15771:34;15830:1;15827;15823:9;15815:17;;15647:191;;;;:::o;15844:96::-;15881:7;15910:24;15928:5;15910:24;:::i;:::-;15899:35;;15844:96;;;:::o;15946:90::-;15980:7;16023:5;16016:13;16009:21;15998:32;;15946:90;;;:::o;16042:126::-;16079:7;16119:42;16112:5;16108:54;16097:65;;16042:126;;;:::o;16174:77::-;16211:7;16240:5;16229:16;;16174:77;;;:::o;16257:86::-;16292:7;16332:4;16325:5;16321:16;16310:27;;16257:86;;;:::o;16349:307::-;16417:1;16427:113;16441:6;16438:1;16435:13;16427:113;;;16526:1;16521:3;16517:11;16511:18;16507:1;16502:3;16498:11;16491:39;16463:2;16460:1;16456:10;16451:15;;16427:113;;;16558:6;16555:1;16552:13;16549:101;;;16638:1;16629:6;16624:3;16620:16;16613:27;16549:101;16398:258;16349:307;;;:::o;16662:320::-;16706:6;16743:1;16737:4;16733:12;16723:22;;16790:1;16784:4;16780:12;16811:18;16801:81;;16867:4;16859:6;16855:17;16845:27;;16801:81;16929:2;16921:6;16918:14;16898:18;16895:38;16892:84;;;16948:18;;:::i;:::-;16892:84;16713:269;16662:320;;;:::o;16988:180::-;17036:77;17033:1;17026:88;17133:4;17130:1;17123:15;17157:4;17154:1;17147:15;17174:180;17222:77;17219:1;17212:88;17319:4;17316:1;17309:15;17343:4;17340:1;17333:15;17483:117;17592:1;17589;17582:12;17606:102;17647:6;17698:2;17694:7;17689:2;17682:5;17678:14;17674:28;17664:38;;17606:102;;;:::o;17714:222::-;17854:34;17850:1;17842:6;17838:14;17831:58;17923:5;17918:2;17910:6;17906:15;17899:30;17714:222;:::o;17942:221::-;18082:34;18078:1;18070:6;18066:14;18059:58;18151:4;18146:2;18138:6;18134:15;18127:29;17942:221;:::o;18169:225::-;18309:34;18305:1;18297:6;18293:14;18286:58;18378:8;18373:2;18365:6;18361:15;18354:33;18169:225;:::o;18400:221::-;18540:34;18536:1;18528:6;18524:14;18517:58;18609:4;18604:2;18596:6;18592:15;18585:29;18400:221;:::o;18627:225::-;18767:34;18763:1;18755:6;18751:14;18744:58;18836:8;18831:2;18823:6;18819:15;18812:33;18627:225;:::o;18858:227::-;18998:34;18994:1;18986:6;18982:14;18975:58;19067:10;19062:2;19054:6;19050:15;19043:35;18858:227;:::o;19091:182::-;19231:34;19227:1;19219:6;19215:14;19208:58;19091:182;:::o;19279:223::-;19419:34;19415:1;19407:6;19403:14;19396:58;19488:6;19483:2;19475:6;19471:15;19464:31;19279:223;:::o;19508:220::-;19648:34;19644:1;19636:6;19632:14;19625:58;19717:3;19712:2;19704:6;19700:15;19693:28;19508:220;:::o;19734:224::-;19874:34;19870:1;19862:6;19858:14;19851:58;19943:7;19938:2;19930:6;19926:15;19919:32;19734:224;:::o;19964:223::-;20104:34;20100:1;20092:6;20088:14;20081:58;20173:6;20168:2;20160:6;20156:15;20149:31;19964:223;:::o;20193:224::-;20333:34;20329:1;20321:6;20317:14;20310:58;20402:7;20397:2;20389:6;20385:15;20378:32;20193:224;:::o;20423:181::-;20563:33;20559:1;20551:6;20547:14;20540:57;20423:181;:::o;20610:122::-;20683:24;20701:5;20683:24;:::i;:::-;20676:5;20673:35;20663:63;;20722:1;20719;20712:12;20663:63;20610:122;:::o;20738:::-;20811:24;20829:5;20811:24;:::i;:::-;20804:5;20801:35;20791:63;;20850:1;20847;20840:12;20791:63;20738:122;:::o

Swarm Source

ipfs://b81eb6796789491e0b10cb7f1f96eb1a753fa9c1e2b102a90505f1f6c1f9109f
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.