ERC-20
Gaming
Overview
Max Total Supply
9,706,992,814.35592460056438093 ZENT
Holders
4,030 ( 0.050%)
Market
Price
$0.03 @ 0.000008 ETH (-4.02%)
Onchain Market Cap
$272,864,441.64
Circulating Supply Market Cap
$176,369,959.00
Other Info
Token Contract (WITH 18 Decimals)
Balance
27,664.974504033452824919 ZENTValue
$777.66 ( ~0.231428690595898 Eth) [0.0003%]Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
ZentryToken
Compiler Version
v0.8.20+commit.a1b79de6
Optimization Enabled:
Yes with 999999 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
1234567891011121314151617181920// SPDX-License-Identifier: MITpragma solidity 0.8.20;import { ERC20 } from "@openzeppelin/contracts/token/ERC20/ERC20.sol";import { ERC20Burnable } from "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol";import { AccessControl } from "@openzeppelin/contracts/access/AccessControl.sol";import { ERC20Permit } from "@openzeppelin/contracts/token/ERC20/extensions/ERC20Permit.sol";/// @custom:security-contact security@zentry.comcontract ZentryToken is ERC20, ERC20Burnable, AccessControl, ERC20Permit {bytes32 public constant MINTER_ROLE = keccak256("MINTER_ROLE");constructor() ERC20("Zentry", "ZENT") ERC20Permit("Zentry") {_grantRole(DEFAULT_ADMIN_ROLE, _msgSender());}function mint(address to, uint256 amount) public onlyRole(MINTER_ROLE) {_mint(to, amount);}}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (access/AccessControl.sol)pragma solidity ^0.8.20;import {IAccessControl} from "./IAccessControl.sol";import {Context} from "../utils/Context.sol";import {ERC165} from "../utils/introspection/ERC165.sol";/*** @dev Contract module that allows children to implement role-based access* control mechanisms. This is a lightweight version that doesn't allow enumerating role* members except through off-chain means by accessing the contract event logs. Some* applications may benefit from on-chain enumerability, for those cases see* {AccessControlEnumerable}.** Roles are referred to by their `bytes32` identifier. These should be exposed* in the external API and be unique. The best way to achieve this is by* using `public constant` hash digests:** ```solidity* bytes32 public constant MY_ROLE = keccak256("MY_ROLE");* ```** Roles can be used to represent a set of permissions. To restrict access to a* function call, use {hasRole}:
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (access/IAccessControl.sol)pragma solidity ^0.8.20;/*** @dev External interface of AccessControl declared to support ERC165 detection.*/interface IAccessControl {/*** @dev The `account` is missing a role.*/error AccessControlUnauthorizedAccount(address account, bytes32 neededRole);/*** @dev The caller of a function is not the expected one.** NOTE: Don't confuse with {AccessControlUnauthorizedAccount}.*/error AccessControlBadConfirmation();/*** @dev Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole`** `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite* {RoleAdminChanged} not being emitted signaling this.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (interfaces/draft-IERC6093.sol)pragma solidity ^0.8.20;/*** @dev Standard ERC20 Errors* Interface of the https://eips.ethereum.org/EIPS/eip-6093[ERC-6093] custom errors for ERC20 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.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (interfaces/IERC5267.sol)pragma solidity ^0.8.20;interface IERC5267 {/*** @dev MAY be emitted to signal that the domain could have changed.*/event EIP712DomainChanged();/*** @dev returns the fields and values that describe the domain separator used by this contract for EIP-712* signature.*/function eip712Domain()externalviewreturns (bytes1 fields,string memory name,string memory version,uint256 chainId,address verifyingContract,bytes32 salt,uint256[] memory extensions
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC20/ERC20.sol)pragma solidity ^0.8.20;import {IERC20} from "./IERC20.sol";import {IERC20Metadata} from "./extensions/IERC20Metadata.sol";import {Context} from "../../utils/Context.sol";import {IERC20Errors} from "../../interfaces/draft-IERC6093.sol";/*** @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 ERC20
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC20/extensions/ERC20Burnable.sol)pragma solidity ^0.8.20;import {ERC20} from "../ERC20.sol";import {Context} from "../../../utils/Context.sol";/*** @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 a `value` amount of tokens from the caller.** See {ERC20-_burn}.*/function burn(uint256 value) public virtual {_burn(_msgSender(), value);}/*** @dev Destroys a `value` amount of tokens from `account`, deducting from* the caller's allowance.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC20/extensions/ERC20Permit.sol)pragma solidity ^0.8.20;import {IERC20Permit} from "./IERC20Permit.sol";import {ERC20} from "../ERC20.sol";import {ECDSA} from "../../../utils/cryptography/ECDSA.sol";import {EIP712} from "../../../utils/cryptography/EIP712.sol";import {Nonces} from "../../../utils/Nonces.sol";/*** @dev Implementation of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in* https://eips.ethereum.org/EIPS/eip-2612[EIP-2612].** Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by* presenting a message signed by the account. By not relying on `{IERC20-approve}`, the token holder account doesn't* need to send a transaction, and thus is not required to hold Ether at all.*/abstract contract ERC20Permit is ERC20, IERC20Permit, EIP712, Nonces {bytes32 private constant PERMIT_TYPEHASH =keccak256("Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)");/*** @dev Permit deadline has expired.*/
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC20/extensions/IERC20Metadata.sol)pragma solidity ^0.8.20;import {IERC20} from "../IERC20.sol";/*** @dev Interface for the optional metadata functions from the ERC20 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);}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC20/extensions/IERC20Permit.sol)pragma solidity ^0.8.20;/*** @dev Interface of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in* https://eips.ethereum.org/EIPS/eip-2612[EIP-2612].** Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by* presenting a message signed by the account. By not relying on {IERC20-approve}, the token holder account doesn't* need to send a transaction, and thus is not required to hold Ether at all.** ==== Security Considerations** There are two important considerations concerning the use of `permit`. The first is that a valid permit signature* expresses an allowance, and it should not be assumed to convey additional meaning. In particular, it should not be* considered as an intention to spend the allowance in any specific way. The second is that because permits have* built-in replay protection and can be submitted by anyone, they can be frontrun. A protocol that uses permits should* take this into consideration and allow a `permit` call to fail. Combining these two aspects, a pattern that may be* generally recommended is:** ```solidity* function doThingWithPermit(..., uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s) public {* try token.permit(msg.sender, address(this), value, deadline, v, r, s) {} catch {}* doThing(..., value);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC20/IERC20.sol)pragma solidity ^0.8.20;/*** @dev Interface of the ERC20 standard as defined in the EIP.*/interface IERC20 {/*** @dev Emitted when `value` tokens are moved from one account (`from`) to* another (`to`).** Note that `value` may be zero.*/event Transfer(address indexed from, address indexed to, uint256 value);/*** @dev Emitted when the allowance of a `spender` for an `owner` is set by* a call to {approve}. `value` is the new allowance.*/event Approval(address indexed owner, address indexed spender, uint256 value);/*** @dev Returns the value of tokens in existence.*/
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// 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;
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (utils/cryptography/ECDSA.sol)pragma solidity ^0.8.20;/*** @dev Elliptic Curve Digital Signature Algorithm (ECDSA) operations.** These functions can be used to verify that a message was signed by the holder* of the private keys of a given address.*/library ECDSA {enum RecoverError {NoError,InvalidSignature,InvalidSignatureLength,InvalidSignatureS}/*** @dev The signature derives the `address(0)`.*/error ECDSAInvalidSignature();/*** @dev The signature has an invalid length.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (utils/cryptography/EIP712.sol)pragma solidity ^0.8.20;import {MessageHashUtils} from "./MessageHashUtils.sol";import {ShortStrings, ShortString} from "../ShortStrings.sol";import {IERC5267} from "../../interfaces/IERC5267.sol";/*** @dev https://eips.ethereum.org/EIPS/eip-712[EIP 712] is a standard for hashing and signing of typed structured data.** The encoding scheme specified in the EIP requires a domain separator and a hash of the typed structured data, whose* encoding is very generic and therefore its implementation in Solidity is not feasible, thus this contract* does not implement the encoding itself. Protocols need to implement the type-specific encoding they need in order to* produce the hash of their typed data using a combination of `abi.encode` and `keccak256`.** This contract implements the EIP 712 domain separator ({_domainSeparatorV4}) that is used as part of the encoding* scheme, and the final step of the encoding to obtain the message digest that is then signed via ECDSA* ({_hashTypedDataV4}).** The implementation of the domain separator was designed to be as efficient as possible while still properly updating* the chain id to protect against replay attacks on an eventual fork of the chain.** NOTE: This contract implements the version of the encoding known as "v4", as implemented by the JSON RPC method* https://docs.metamask.io/guide/signing-data.html[`eth_signTypedDataV4` in MetaMask].
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (utils/cryptography/MessageHashUtils.sol)pragma solidity ^0.8.20;import {Strings} from "../Strings.sol";/*** @dev Signature message hash utilities for producing digests to be consumed by {ECDSA} recovery or signing.** The library provides methods for generating a hash of a message that conforms to the* https://eips.ethereum.org/EIPS/eip-191[EIP 191] and https://eips.ethereum.org/EIPS/eip-712[EIP 712]* specifications.*/library MessageHashUtils {/*** @dev Returns the keccak256 digest of an EIP-191 signed data with version* `0x45` (`personal_sign` messages).** The digest is calculated by prefixing a bytes32 `messageHash` with* `"\x19Ethereum Signed Message:\n32"` and hashing the result. It corresponds with the* hash signed when using the https://eth.wiki/json-rpc/API#eth_sign[`eth_sign`] JSON-RPC method.** NOTE: The `messageHash` parameter is intended to be the result of hashing a raw message with* keccak256, although any bytes32 value can be safely used because the final digest will* be re-hashed.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (utils/introspection/ERC165.sol)pragma solidity ^0.8.20;import {IERC165} from "./IERC165.sol";/*** @dev Implementation of the {IERC165} interface.** Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check* for the additional interface id that will be supported. For example:** ```solidity* function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {* return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId);* }* ```*/abstract contract ERC165 is IERC165 {/*** @dev See {IERC165-supportsInterface}.*/function supportsInterface(bytes4 interfaceId) public view virtual returns (bool) {return interfaceId == type(IERC165).interfaceId;}
12345678910111213141516171819202122232425// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (utils/introspection/IERC165.sol)pragma solidity ^0.8.20;/*** @dev Interface of the ERC165 standard, as defined in the* https://eips.ethereum.org/EIPS/eip-165[EIP].** Implementers can declare support of contract interfaces, which can then be* queried by others ({ERC165Checker}).** For an implementation, see {ERC165}.*/interface IERC165 {/*** @dev Returns true if this contract implements the interface defined by* `interfaceId`. See the corresponding* https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]* to learn more about how these ids are created.** This function call must use less than 30 000 gas.*/function supportsInterface(bytes4 interfaceId) external view returns (bool);}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (utils/math/Math.sol)pragma solidity ^0.8.20;/*** @dev Standard math utilities missing in the Solidity language.*/library Math {/*** @dev Muldiv operation overflow.*/error MathOverflowedMulDiv();enum Rounding {Floor, // Toward negative infinityCeil, // Toward positive infinityTrunc, // Toward zeroExpand // Away from zero}/*** @dev Returns the addition of two unsigned integers, with an overflow flag.*/function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {unchecked {
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (utils/math/SignedMath.sol)pragma solidity ^0.8.20;/*** @dev Standard signed math utilities missing in the Solidity language.*/library SignedMath {/*** @dev Returns the largest of two signed numbers.*/function max(int256 a, int256 b) internal pure returns (int256) {return a > b ? a : b;}/*** @dev Returns the smallest of two signed numbers.*/function min(int256 a, int256 b) internal pure returns (int256) {return a < b ? a : b;}/*** @dev Returns the average of two signed numbers without overflow.* The result is rounded towards zero.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (utils/Nonces.sol)pragma solidity ^0.8.20;/*** @dev Provides tracking nonces for addresses. Nonces will only increment.*/abstract contract Nonces {/*** @dev The nonce used for an `account` is not the expected current nonce.*/error InvalidAccountNonce(address account, uint256 currentNonce);mapping(address account => uint256) private _nonces;/*** @dev Returns the next unused nonce for an address.*/function nonces(address owner) public view virtual returns (uint256) {return _nonces[owner];}/*** @dev Consumes a nonce.** Returns the current value and increments nonce.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (utils/ShortStrings.sol)pragma solidity ^0.8.20;import {StorageSlot} from "./StorageSlot.sol";// | string | 0xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA |// | length | 0x BB |type ShortString is bytes32;/*** @dev This library provides functions to convert short memory strings* into a `ShortString` type that can be used as an immutable variable.** Strings of arbitrary length can be optimized using this library if* they are short enough (up to 31 bytes) by packing them with their* length (1 byte) in a single EVM word (32 bytes). Additionally, a* fallback mechanism can be used for every other case.** Usage example:** ```solidity* contract Named {* using ShortStrings for *;*
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (utils/StorageSlot.sol)// This file was procedurally generated from scripts/generate/templates/StorageSlot.js.pragma solidity ^0.8.20;/*** @dev Library for reading and writing primitive types to specific storage slots.** Storage slots are often used to avoid storage conflict when dealing with upgradeable contracts.* This library helps with reading and writing to such slots without the need for inline assembly.** The functions in this library return Slot structs that contain a `value` member that can be used to read or write.** Example usage to set ERC1967 implementation slot:* ```solidity* contract ERC1967 {* bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;** function _getImplementation() internal view returns (address) {* return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value;* }** function _setImplementation(address newImplementation) internal {* require(newImplementation.code.length > 0);* StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation;
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (utils/Strings.sol)pragma solidity ^0.8.20;import {Math} from "./math/Math.sol";import {SignedMath} from "./math/SignedMath.sol";/*** @dev String operations.*/library Strings {bytes16 private constant HEX_DIGITS = "0123456789abcdef";uint8 private constant ADDRESS_LENGTH = 20;/*** @dev The `value` string doesn't fit in the specified `length`.*/error StringsInsufficientHexLength(uint256 value, uint256 length);/*** @dev Converts a `uint256` to its ASCII `string` decimal representation.*/function toString(uint256 value) internal pure returns (string memory) {unchecked {uint256 length = Math.log10(value) + 1;
123456789101112131415161718192021{"viaIR": true,"optimizer": {"enabled": true,"runs": 999999},"evmVersion": "paris","outputSelection": {"*": {"*": ["evm.bytecode","evm.deployedBytecode","devdoc","userdoc","metadata","abi"]}},"libraries": {}}
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AccessControlBadConfirmation","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"neededRole","type":"bytes32"}],"name":"AccessControlUnauthorizedAccount","type":"error"},{"inputs":[],"name":"ECDSAInvalidSignature","type":"error"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"name":"ECDSAInvalidSignatureLength","type":"error"},{"inputs":[{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"ECDSAInvalidSignatureS","type":"error"},{"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":"uint256","name":"deadline","type":"uint256"}],"name":"ERC2612ExpiredSignature","type":"error"},{"inputs":[{"internalType":"address","name":"signer","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"name":"ERC2612InvalidSigner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"currentNonce","type":"uint256"}],"name":"InvalidAccountNonce","type":"error"},{"inputs":[],"name":"InvalidShortString","type":"error"},{"inputs":[{"internalType":"string","name":"str","type":"string"}],"name":"StringTooLong","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":[],"name":"EIP712DomainChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","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":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MINTER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"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":"value","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"burnFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"eip712Domain","outputs":[{"internalType":"bytes1","name":"fields","type":"bytes1"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"version","type":"string"},{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"verifyingContract","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"uint256[]","name":"extensions","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":[{"internalType":"address","name":"owner","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"callerConfirmation","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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"}]
Contract Creation Code
6101606040818152346200042c57620000188262000431565b6006825260209182810191655a656e74727960d01b938484528151946200003f8662000431565b6006865281860152815190620000558262000431565b600495868352631691539560e21b82840152835192620000758462000431565b6001808552603160f81b84860190815283516001600160401b039491939185821162000417576003918254918583811c931680156200040c575b898410146200030e578190601f93848111620003b6575b5089908483116001146200034f5760009262000343575b505060001982851b1c191690851b1782555b8251928684116200032e578c548581811c9116801562000323575b898210146200030e57828111620002c3575b508791841160011462000258579383949184926000956200024c575b50501b92600019911b1c19161788555b6200015386620004f5565b966101209788526200016585620006d2565b96610140978852519020938460e05251902096610100978089524660a0528551938401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f86528685015260608401524660808401523060a084015260a0835260c08301918383109083111762000237575083525190206080523060c052620001ee3362000463565b505191611b3e93846200088b85396080518461182a015260a051846118f6015260c051846117fb015260e051846118790152518361189f015251826106ad015251816106d70152f35b604190634e487b7160e01b6000525260246000fd5b01519350388062000138565b9190601f198416928d60005284896000209460005b8b89838310620002ab575050501062000290575b50505050811b01885562000148565b01519060f884600019921b161c191690553880808062000281565b8686015189559097019694850194889350016200026d565b8d600052886000208380870160051c8201928b881062000304575b0160051c019086905b828110620002f75750506200011c565b60008155018690620002e7565b92508192620002de565b60228e634e487b7160e01b6000525260246000fd5b90607f16906200010a565b60418d634e487b7160e01b6000525260246000fd5b015190503880620000dd565b90879350601f19831691866000528b6000209260005b8d8282106200039f575050841162000386575b505050811b018255620000ef565b015160001983871b60f8161c1916905538808062000378565b8385015186558b9790950194938401930162000365565b90915084600052896000208480850160051c8201928c861062000402575b918991869594930160051c01915b828110620003f2575050620000c6565b60008155859450899101620003e2565b92508192620003d4565b92607f1692620000af565b60418c634e487b7160e01b6000525260246000fd5b600080fd5b604081019081106001600160401b038211176200044d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160a01b031660008181527f05b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc602052604081205490919060ff16620004f15781805260056020526040822081835260205260408220600160ff1982541617905533917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b5090565b805160209081811015620005925750601f8251116200053157808251920151908083106200052257501790565b82600019910360031b1b161790565b90604051809263305a27a960e01b82528060048301528251908160248401526000935b82851062000578575050604492506000838284010152601f80199101168101030190fd5b848101820151868601604401529381019385935062000554565b906001600160401b0382116200044d57600654926001938481811c91168015620006c7575b83821014620006b157601f811162000677575b5081601f84116001146200060b5750928293918392600094620005ff575b50501b916000199060031b1c19161760065560ff90565b015192503880620005e8565b919083601f198116600660005284600020946000905b888383106200065c575050501062000642575b505050811b0160065560ff90565b015160001960f88460031b161c1916905538808062000634565b85870151885590960195948501948793509081019062000621565b600660005284601f84600020920160051c820191601f860160051c015b828110620006a4575050620005ca565b6000815501859062000694565b634e487b7160e01b600052602260045260246000fd5b90607f1690620005b7565b805160209081811015620007605750601f825111620006ff57808251920151908083106200052257501790565b90604051809263305a27a960e01b82528060048301528251908160248401526000935b82851062000746575050604492506000838284010152601f80199101168101030190fd5b848101820151868601604401529381019385935062000722565b906001600160401b0382116200044d57600754926001938481811c911680156200087f575b83821014620006b157601f811162000845575b5081601f8411600114620007d95750928293918392600094620007cd575b50501b916000199060031b1c19161760075560ff90565b015192503880620007b6565b919083601f198116600760005284600020946000905b888383106200082a575050501062000810575b505050811b0160075560ff90565b015160001960f88460031b161c1916905538808062000802565b858701518855909601959485019487935090810190620007ef565b600760005284601f84600020920160051c820191601f860160051c015b8281106200087257505062000798565b6000815501859062000862565b90607f16906200078556fe608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a714610e385750816306fdde0314610d29578163095ea7b314610ce157816318160ddd14610ca457816323b872dd14610c49578163248a9ca314610c005781632f2ff15d14610bb8578163313ce56714610b7e5781633644e51514610b3c57816336568abe14610ab257816340c10f191461093857816342966c68146108fc57816370a082311461089b57816379cc67901461084a5781637ecebe00146107e857816384b0196e1461067757816391d148541461060657816395d89b41146104df578163a217fddf146104a6578163a9059cbb14610457578163d505accf1461025e578163d539139314610205578163d547741f146101a3575063dd62ed3e1461012d57600080fd5b3461019f57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f5780602092610167610f52565b61016f610f7a565b73ffffffffffffffffffffffffffffffffffffffff91821683526001865283832091168252845220549051908152f35b5080fd5b9190503461020157807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610201576101fd91356101f860016101e6610f7a565b93838752600560205286200154610f9d565b6110a6565b5080f35b8280fd5b50503461019f57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f57602090517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b8391503461019f5760e07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f57610298610f52565b6102a0610f7a565b906044359260643560843560ff81168103610453578142116104245773ffffffffffffffffffffffffffffffffffffffff90818516928389526008602052898920908154916001830190558a519060208201927f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98452868d840152858a1660608401528a608084015260a083015260c082015260c0815260e0810181811067ffffffffffffffff8211176103f8578b525190206103ad916103a4916103636117e4565b908c51917f190100000000000000000000000000000000000000000000000000000000000083526002830152602282015260c43591604260a4359220611660565b909291926116fd565b168181036103c457866103c1878787611369565b80f35b604493508751927f4b800e460000000000000000000000000000000000000000000000000000000084528301526024820152fd5b60248b6041897f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b602483838a51917f62791302000000000000000000000000000000000000000000000000000000008352820152fd5b8680fd5b50503461019f57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f5760209061049f610495610f52565b6024359033611228565b5160018152f35b50503461019f57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f5751908152602090f35b9190503461020157827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610201578051918381549061052082611149565b808652926001928084169081156105bd5750600114610561575b61055d868661054b828b03836111e7565b51918291602083526020830190610ef4565b0390f35b815294507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8286106105a55750505061054b82602061055d95820101943861053a565b80546020878701810191909152909501948101610587565b61055d98508794506020935061054b9592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b820101943861053a565b90503461020157817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610201578160209360ff92610645610f7a565b903582526005865273ffffffffffffffffffffffffffffffffffffffff83832091168252855220541690519015158152f35b9190503461020157827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610201576106d17f000000000000000000000000000000000000000000000000000000000000000061191c565b926106fb7f0000000000000000000000000000000000000000000000000000000000000000611a4e565b908251926020928385019585871067ffffffffffffffff8811176107bc57509280610772838896610765998b9996528686528151998a997f0f000000000000000000000000000000000000000000000000000000000000008b5260e0868c015260e08b0190610ef4565b91898303908a0152610ef4565b924660608801523060808801528460a088015286840360c088015251928381520193925b8281106107a557505050500390f35b835185528695509381019392810192600101610796565b8360416024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b50503461019f5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f578060209273ffffffffffffffffffffffffffffffffffffffff61083a610f52565b1681526008845220549051908152f35b50503461019f577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610898576103c1610884610f52565b60243590610893823383611439565b61158e565b80fd5b50503461019f5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f578060209273ffffffffffffffffffffffffffffffffffffffff6108ed610f52565b16815280845220549051908152f35b83903461019f5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f576103c190353361158e565b9190503461020157807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261020157610971610f52565b90602435917f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6808652600560205282862033875260205260ff838720541615610a7c575073ffffffffffffffffffffffffffffffffffffffff16928315610a4e5760025490838201809211610a22575084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9260209260025585855284835280852082815401905551908152a380f35b8560116024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b8460249251917fec442f05000000000000000000000000000000000000000000000000000000008352820152fd5b846044918451917fe2517d3f00000000000000000000000000000000000000000000000000000000835233908301526024820152fd5b83833461019f57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f57610aea610f7a565b903373ffffffffffffffffffffffffffffffffffffffff831603610b1457506101fd9192356110a6565b8390517f6697b232000000000000000000000000000000000000000000000000000000008152fd5b50503461019f57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f57602090610b776117e4565b9051908152f35b50503461019f57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f576020905160128152f35b9190503461020157807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610201576101fd9135610bfb60016101e6610f7a565b610ffa565b9050346102015760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102015781602093600192358152600585522001549051908152f35b50503461019f5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f5760209061049f610c88610f52565b610c90610f7a565b60443591610c9f833383611439565b611228565b50503461019f57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f576020906002549051908152f35b50503461019f57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f5760209061049f610d1f610f52565b6024359033611369565b50503461019f57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f5780519082600354610d6981611149565b80855291600191808316908115610df25750600114610d95575b50505061054b8261055d9403836111e7565b9450600385527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b828610610dda5750505061054b82602061055d9582010194610d83565b80546020878701810191909152909501948101610dbd565b61055d97508693506020925061054b9491507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001682840152151560051b82010194610d83565b8491346102015760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261020157357fffffffff00000000000000000000000000000000000000000000000000000000811680910361020157602092507f7965db0b000000000000000000000000000000000000000000000000000000008114908115610eca575b5015158152f35b7f01ffc9a70000000000000000000000000000000000000000000000000000000091501483610ec3565b919082519283825260005b848110610f3e5750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8460006020809697860101520116010190565b602081830181015184830182015201610eff565b6004359073ffffffffffffffffffffffffffffffffffffffff82168203610f7557565b600080fd5b6024359073ffffffffffffffffffffffffffffffffffffffff82168203610f7557565b80600052600560205260406000203360005260205260ff6040600020541615610fc35750565b604490604051907fe2517d3f0000000000000000000000000000000000000000000000000000000082523360048301526024820152fd5b90600091808352600560205273ffffffffffffffffffffffffffffffffffffffff6040842092169182845260205260ff604084205416156000146110a1578083526005602052604083208284526020526040832060017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008254161790557f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d339380a4600190565b505090565b90600091808352600560205273ffffffffffffffffffffffffffffffffffffffff6040842092169182845260205260ff6040842054166000146110a157808352600560205260408320828452602052604083207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0081541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a4600190565b90600182811c92168015611192575b602083101461116357565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b91607f1691611158565b6040810190811067ffffffffffffffff8211176111b857604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176111b857604052565b9173ffffffffffffffffffffffffffffffffffffffff808416928315611338571692831561130757600090838252816020526040822054908382106112af575091604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef958760209652828652038282205586815220818154019055604051908152a3565b6040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602481019190915260448101839052606490fd5b60246040517fec442f0500000000000000000000000000000000000000000000000000000000815260006004820152fd5b60246040517f96c6fd1e00000000000000000000000000000000000000000000000000000000815260006004820152fd5b73ffffffffffffffffffffffffffffffffffffffff80911691821561140857169182156113d75760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260018252604060002085600052825280604060002055604051908152a3565b60246040517f94280d6200000000000000000000000000000000000000000000000000000000815260006004820152fd5b60246040517fe602df0500000000000000000000000000000000000000000000000000000000815260006004820152fd5b9173ffffffffffffffffffffffffffffffffffffffff8093169160009383855260016020526040938486209183169182875260205284862054927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84036114a4575b50505050505050565b848410611538575080156115085781156114d85785526001602052838520908552602052039120553880808080808061149b565b6024868651907f94280d620000000000000000000000000000000000000000000000000000000082526004820152fd5b6024868651907fe602df050000000000000000000000000000000000000000000000000000000082526004820152fd5b85517ffb8f41b200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9190911660048201526024810184905260448101859052606490fd5b9073ffffffffffffffffffffffffffffffffffffffff821690811561133857600092828452836020526040842054908282106116085750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef926020928587528684520360408620558060025403600255604051908152a3565b6040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602481019190915260448101829052606490fd5b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084116116f157926020929160ff608095604051948552168484015260408301526060820152600092839182805260015afa156116e557805173ffffffffffffffffffffffffffffffffffffffff8116156116dc57918190565b50809160019190565b604051903d90823e3d90fd5b50505060009160039190565b60048110156117b5578061170f575050565b600181036117415760046040517ff645eedf000000000000000000000000000000000000000000000000000000008152fd5b6002810361177a57602482604051907ffce698f70000000000000000000000000000000000000000000000000000000082526004820152fd5b6003146117845750565b602490604051907fd78bce0c0000000000000000000000000000000000000000000000000000000082526004820152fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163014806118f3575b1561184c577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff8211176111b85760405251902090565b507f00000000000000000000000000000000000000000000000000000000000000004614611823565b60ff81146119725760ff811690601f8211611948576040519161193e8361119c565b8252602082015290565b60046040517fb3512b0c000000000000000000000000000000000000000000000000000000008152fd5b5060405160065481600061198583611149565b80835292600190818116908115611a0e57506001146119af575b506119ac925003826111e7565b90565b6006600090815291507ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f5b8483106119f357506119ac93505081016020013861199f565b819350908160209254838589010152019101909184926119da565b602093506119ac9592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201013861199f565b60ff8114611a705760ff811690601f8211611948576040519161193e8361119c565b50604051600754816000611a8383611149565b80835292600190818116908115611a0e5750600114611aa957506119ac925003826111e7565b6007600090815291507fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6885b848310611aed57506119ac93505081016020013861199f565b81935090816020925483858901015201910190918492611ad456fea26469706673582212208f31c5714fe8e0944d215f791451a16ad0c2673115aa1db79ef6f10c88f63c4e64736f6c63430008140033
Deployed Bytecode
0x608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a714610e385750816306fdde0314610d29578163095ea7b314610ce157816318160ddd14610ca457816323b872dd14610c49578163248a9ca314610c005781632f2ff15d14610bb8578163313ce56714610b7e5781633644e51514610b3c57816336568abe14610ab257816340c10f191461093857816342966c68146108fc57816370a082311461089b57816379cc67901461084a5781637ecebe00146107e857816384b0196e1461067757816391d148541461060657816395d89b41146104df578163a217fddf146104a6578163a9059cbb14610457578163d505accf1461025e578163d539139314610205578163d547741f146101a3575063dd62ed3e1461012d57600080fd5b3461019f57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f5780602092610167610f52565b61016f610f7a565b73ffffffffffffffffffffffffffffffffffffffff91821683526001865283832091168252845220549051908152f35b5080fd5b9190503461020157807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610201576101fd91356101f860016101e6610f7a565b93838752600560205286200154610f9d565b6110a6565b5080f35b8280fd5b50503461019f57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f57602090517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b8391503461019f5760e07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f57610298610f52565b6102a0610f7a565b906044359260643560843560ff81168103610453578142116104245773ffffffffffffffffffffffffffffffffffffffff90818516928389526008602052898920908154916001830190558a519060208201927f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98452868d840152858a1660608401528a608084015260a083015260c082015260c0815260e0810181811067ffffffffffffffff8211176103f8578b525190206103ad916103a4916103636117e4565b908c51917f190100000000000000000000000000000000000000000000000000000000000083526002830152602282015260c43591604260a4359220611660565b909291926116fd565b168181036103c457866103c1878787611369565b80f35b604493508751927f4b800e460000000000000000000000000000000000000000000000000000000084528301526024820152fd5b60248b6041897f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b602483838a51917f62791302000000000000000000000000000000000000000000000000000000008352820152fd5b8680fd5b50503461019f57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f5760209061049f610495610f52565b6024359033611228565b5160018152f35b50503461019f57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f5751908152602090f35b9190503461020157827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610201578051918381549061052082611149565b808652926001928084169081156105bd5750600114610561575b61055d868661054b828b03836111e7565b51918291602083526020830190610ef4565b0390f35b815294507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8286106105a55750505061054b82602061055d95820101943861053a565b80546020878701810191909152909501948101610587565b61055d98508794506020935061054b9592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b820101943861053a565b90503461020157817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610201578160209360ff92610645610f7a565b903582526005865273ffffffffffffffffffffffffffffffffffffffff83832091168252855220541690519015158152f35b9190503461020157827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610201576106d17f5a656e747279000000000000000000000000000000000000000000000000000661191c565b926106fb7f3100000000000000000000000000000000000000000000000000000000000001611a4e565b908251926020928385019585871067ffffffffffffffff8811176107bc57509280610772838896610765998b9996528686528151998a997f0f000000000000000000000000000000000000000000000000000000000000008b5260e0868c015260e08b0190610ef4565b91898303908a0152610ef4565b924660608801523060808801528460a088015286840360c088015251928381520193925b8281106107a557505050500390f35b835185528695509381019392810192600101610796565b8360416024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b50503461019f5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f578060209273ffffffffffffffffffffffffffffffffffffffff61083a610f52565b1681526008845220549051908152f35b50503461019f577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610898576103c1610884610f52565b60243590610893823383611439565b61158e565b80fd5b50503461019f5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f578060209273ffffffffffffffffffffffffffffffffffffffff6108ed610f52565b16815280845220549051908152f35b83903461019f5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f576103c190353361158e565b9190503461020157807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261020157610971610f52565b90602435917f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6808652600560205282862033875260205260ff838720541615610a7c575073ffffffffffffffffffffffffffffffffffffffff16928315610a4e5760025490838201809211610a22575084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9260209260025585855284835280852082815401905551908152a380f35b8560116024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b8460249251917fec442f05000000000000000000000000000000000000000000000000000000008352820152fd5b846044918451917fe2517d3f00000000000000000000000000000000000000000000000000000000835233908301526024820152fd5b83833461019f57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f57610aea610f7a565b903373ffffffffffffffffffffffffffffffffffffffff831603610b1457506101fd9192356110a6565b8390517f6697b232000000000000000000000000000000000000000000000000000000008152fd5b50503461019f57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f57602090610b776117e4565b9051908152f35b50503461019f57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f576020905160128152f35b9190503461020157807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610201576101fd9135610bfb60016101e6610f7a565b610ffa565b9050346102015760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102015781602093600192358152600585522001549051908152f35b50503461019f5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f5760209061049f610c88610f52565b610c90610f7a565b60443591610c9f833383611439565b611228565b50503461019f57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f576020906002549051908152f35b50503461019f57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f5760209061049f610d1f610f52565b6024359033611369565b50503461019f57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261019f5780519082600354610d6981611149565b80855291600191808316908115610df25750600114610d95575b50505061054b8261055d9403836111e7565b9450600385527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b828610610dda5750505061054b82602061055d9582010194610d83565b80546020878701810191909152909501948101610dbd565b61055d97508693506020925061054b9491507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001682840152151560051b82010194610d83565b8491346102015760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261020157357fffffffff00000000000000000000000000000000000000000000000000000000811680910361020157602092507f7965db0b000000000000000000000000000000000000000000000000000000008114908115610eca575b5015158152f35b7f01ffc9a70000000000000000000000000000000000000000000000000000000091501483610ec3565b919082519283825260005b848110610f3e5750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8460006020809697860101520116010190565b602081830181015184830182015201610eff565b6004359073ffffffffffffffffffffffffffffffffffffffff82168203610f7557565b600080fd5b6024359073ffffffffffffffffffffffffffffffffffffffff82168203610f7557565b80600052600560205260406000203360005260205260ff6040600020541615610fc35750565b604490604051907fe2517d3f0000000000000000000000000000000000000000000000000000000082523360048301526024820152fd5b90600091808352600560205273ffffffffffffffffffffffffffffffffffffffff6040842092169182845260205260ff604084205416156000146110a1578083526005602052604083208284526020526040832060017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008254161790557f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d339380a4600190565b505090565b90600091808352600560205273ffffffffffffffffffffffffffffffffffffffff6040842092169182845260205260ff6040842054166000146110a157808352600560205260408320828452602052604083207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0081541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a4600190565b90600182811c92168015611192575b602083101461116357565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b91607f1691611158565b6040810190811067ffffffffffffffff8211176111b857604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176111b857604052565b9173ffffffffffffffffffffffffffffffffffffffff808416928315611338571692831561130757600090838252816020526040822054908382106112af575091604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef958760209652828652038282205586815220818154019055604051908152a3565b6040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602481019190915260448101839052606490fd5b60246040517fec442f0500000000000000000000000000000000000000000000000000000000815260006004820152fd5b60246040517f96c6fd1e00000000000000000000000000000000000000000000000000000000815260006004820152fd5b73ffffffffffffffffffffffffffffffffffffffff80911691821561140857169182156113d75760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260018252604060002085600052825280604060002055604051908152a3565b60246040517f94280d6200000000000000000000000000000000000000000000000000000000815260006004820152fd5b60246040517fe602df0500000000000000000000000000000000000000000000000000000000815260006004820152fd5b9173ffffffffffffffffffffffffffffffffffffffff8093169160009383855260016020526040938486209183169182875260205284862054927fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84036114a4575b50505050505050565b848410611538575080156115085781156114d85785526001602052838520908552602052039120553880808080808061149b565b6024868651907f94280d620000000000000000000000000000000000000000000000000000000082526004820152fd5b6024868651907fe602df050000000000000000000000000000000000000000000000000000000082526004820152fd5b85517ffb8f41b200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9190911660048201526024810184905260448101859052606490fd5b9073ffffffffffffffffffffffffffffffffffffffff821690811561133857600092828452836020526040842054908282106116085750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef926020928587528684520360408620558060025403600255604051908152a3565b6040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602481019190915260448101829052606490fd5b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084116116f157926020929160ff608095604051948552168484015260408301526060820152600092839182805260015afa156116e557805173ffffffffffffffffffffffffffffffffffffffff8116156116dc57918190565b50809160019190565b604051903d90823e3d90fd5b50505060009160039190565b60048110156117b5578061170f575050565b600181036117415760046040517ff645eedf000000000000000000000000000000000000000000000000000000008152fd5b6002810361177a57602482604051907ffce698f70000000000000000000000000000000000000000000000000000000082526004820152fd5b6003146117845750565b602490604051907fd78bce0c0000000000000000000000000000000000000000000000000000000082526004820152fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000dbb7a34bf10169d6d2d0d02a6cbb436cf4381bfa163014806118f3575b1561184c577ff4853c68c558c3cc38b8df0b560a7dc923307274e2cd0d7aa1a88535b913f4bd90565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527ff4c41546ccc1034a41c9222e601060bdf26042424a2e94629be5d01126fe5eed60408201527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff8211176111b85760405251902090565b507f00000000000000000000000000000000000000000000000000000000000000014614611823565b60ff81146119725760ff811690601f8211611948576040519161193e8361119c565b8252602082015290565b60046040517fb3512b0c000000000000000000000000000000000000000000000000000000008152fd5b5060405160065481600061198583611149565b80835292600190818116908115611a0e57506001146119af575b506119ac925003826111e7565b90565b6006600090815291507ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f5b8483106119f357506119ac93505081016020013861199f565b819350908160209254838589010152019101909184926119da565b602093506119ac9592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201013861199f565b60ff8114611a705760ff811690601f8211611948576040519161193e8361119c565b50604051600754816000611a8383611149565b80835292600190818116908115611a0e5750600114611aa957506119ac925003826111e7565b6007600090815291507fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6885b848310611aed57506119ac93505081016020013861199f565b81935090816020925483858901015201910190918492611ad456fea26469706673582212208f31c5714fe8e0944d215f791451a16ad0c2673115aa1db79ef6f10c88f63c4e64736f6c63430008140033
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.