USDT0

Polygon PoS ERC-20 Token 瀏覽鏈

0xc2132d05d31c914a87c6611c10748aeb04b58e8f

Proxy 實作合約: 0x90040487a6c9f949c4f07cadcfb0f3b8eeab4229

Solidity v0.6.6+commit.6c089d02

Fungible token following the ERC-20 standard.

🤖
透過你的 AI 查詢此合約
參考: usdt-polygon 0xc2132d05d31c914a87c6611c10748aeb04b58e8f
範例提示詞: "Tell me the current state of usdt-polygon"
還沒有接入 AI?→ mcp.smarts.md · 瀏覽鏈

管理與風險

誰能修改規則?

Detected upgradeable, mintable, and role based controls from the verified ABI.

Upgradeable Mintable Role Based

當前控制

Implementation
0x90040487a6c9f949c4f07cadcfb0f3b8eeab4229 ↗ Polygonscan → smarts proxy

概覽

讀取函式
24
寫入函式
24
事件
14

讀取函式

Block #95,265,312 · just now
BLOCK_ROLE() view → 0xefe866497efea00aa7574b13e86f62ebb584dfdf8dd4654ccc38107eb91840b8

Returns the bytes32 identifier for the BLOCK_ROLE used to check or grant blocking permissions.✨ AI

回傳值

名稱 類型 描述
— bytes32 bytes32 role identifier representing the BLOCK_ROLE constant used for access-control checks✨ AI
DEFAULT_ADMIN_ROLE() view → 0x0000000000000000000000000000000000000000000000000000000000000000

Returns the role identifier used as the contract's default admin role.✨ AI

回傳值

名稱 類型 描述
— bytes32 Bytes32 identifier for the DEFAULT_ADMIN_ROLE used for access control.✨ AI
DEPOSITOR_ROLE() view → 0x8f4f2da22e8ac8f11e15f9fc141cddbb5deea8800186560abb6e68c5496619a9

Return the role identifier constant for the DEPOSITOR_ROLE used by contract access control.✨ AI

回傳值

名稱 類型 描述
— bytes32 The bytes32 role identifier constant for DEPOSITOR_ROLE, used in AccessControl permission checks.✨ AI
DOMAIN_SEPARATOR() view → 0x7b43b7deae87806d0ace67d6c8e9e347fc85db8ad198e756e5c17d126fef9a05

Returns the EIP-712 domain separator used to hash and sign typed structured data for this token.✨ AI

回傳值

名稱 類型 描述
— bytes32 The EIP-712 domain separator (bytes32) used in domain-specific typed data hashing and signature verification.✨ AI
ERC712_VERSION() view → 1

Provides the ERC-712 version string used for typed data signing.✨ AI

回傳值

名稱 類型 描述
— string ERC-712 version identifier string used when constructing domain separators and signatures.✨ AI
PERMIT_TYPEHASH() view → 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9

Returns the EIP-2612 permit typehash used to compute signed permit digests.✨ AI

回傳值

名稱 類型 描述
— bytes32 The keccak256 bytes32 type hash for the permit signature structure (EIP-2612).✨ AI
USDT0_VERSION() view → 1

Returns the numeric version identifier of the USDT0 token contract.✨ AI

回傳值

名稱 類型 描述
— uint256 The uint256 version number representing the contract implementation version.✨ AI
allowance(owner: address, spender: address) view

Returns the remaining number of tokens that spender is allowed to spend on behalf of owner.✨ AI

開發者: See {IERC20-allowance}.

參數

名稱 類型 描述
owner address Address that owns the tokens.✨ AI
spender address Address approved to spend tokens from the owner's balance.✨ AI

回傳值

名稱 類型 描述
— uint256 Remaining token allowance represented as an unsigned 256-bit integer (uint256).✨ AI
balanceOf(account: address) view

Returns the token balance held by the given account.✨ AI

開發者: See {IERC20-balanceOf}.

參數

名稱 類型 描述
account address Address to query the token balance for.✨ AI

回傳值

名稱 類型 描述
— uint256 The account's token balance as an unsigned 256-bit integer.✨ AI
decimals() view → 6

Returns the token's number of decimal places used for display and calculations.✨ AI

開發者: Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5,05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is called. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}.

回傳值

名稱 類型 描述
— uint8 The number of decimal places (uint8) the token uses.✨ AI
getChainId() pure → 137

Return the chain identifier for the current network.✨ AI

回傳值

名稱 類型 描述
— uint256 The chain ID as a uint256 representing the current chain/network identifier.✨ AI
getDomainSeperator() view → 0x7b43b7deae87806d0ace67d6c8e9e347fc85db8ad198e756e5c17d126fef9a05

Retrieve the contract's EIP-712 domain separator used for typed-data signing.✨ AI

回傳值

名稱 類型 描述
— bytes32 EIP-712 domain separator (bytes32) used to compute typed-data hashes and verify signatures.✨ AI
getNonce(user: address) view

Returns the current nonce for the user's address, used to prevent replay of signed messages.✨ AI

參數

名稱 類型 描述
user address Address whose nonce is requested.✨ AI

回傳值

名稱 類型 描述
nonce uint256 The current uint256 nonce assigned to the user, incremented to prevent replay.✨ AI
getRoleAdmin(role: bytes32) view

Gets the admin role that controls a specific role.✨ AI

開發者: Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.

參數

名稱 類型 描述
role bytes32 Role identifier as a bytes32 value to query its admin role.✨ AI

回傳值

名稱 類型 描述
— bytes32 Admin role identifier (bytes32) that can grant or revoke the given role.✨ AI
getRoleMember(role: bytes32, index: uint256) view

Return the address of the account holding the given role at the specified index.✨ AI

開發者: Returns one of the accounts that have `role`. `index` must be a value between 0 and {getRoleMemberCount}, non-inclusive. Role bearers are not sorted in any particular way, and their ordering may change at any point. WARNING: When using {getRoleMember} and {getRoleMemberCount}, make sure you perform all queries on the same block. See the following https://forum.openzeppelin.com/t/iterating-over-elements-on-enumerableset-in-openzeppelin-contracts/2296[forum post] for more information.

參數

名稱 類型 描述
role bytes32 The role identifier (bytes32) to query.✨ AI
index uint256 Zero-based index into the role's member list.✨ AI

回傳值

名稱 類型 描述
— address Address of the role member at the given index.✨ AI
getRoleMemberCount(role: bytes32) view

Return the number of accounts assigned the given role.✨ AI

開發者: Returns the number of accounts that have `role`. Can be used together with {getRoleMember} to enumerate all bearers of a role.

參數

名稱 類型 描述
role bytes32 Role identifier as a bytes32 value (typically keccak256 hash of the role name).✨ AI

回傳值

名稱 類型 描述
— uint256 Number of accounts that currently hold the specified role.✨ AI
hasRole(role: bytes32, account: address) view

Return whether an account has a specific role.✨ AI

開發者: Returns `true` if `account` has been granted `role`.

參數

名稱 類型 描述
role bytes32 Role identifier as a bytes32 value.✨ AI
account address Address of the account to check for the role.✨ AI

回傳值

名稱 類型 描述
— bool True if the account has the role, otherwise false.✨ AI
isBlocked(address) view

Checks whether the given address is blocked from token transfers.✨ AI

參數

名稱 類型 描述
— address

回傳值

名稱 類型 描述
— bool True if the address is blocked and cannot transact, otherwise false.✨ AI
name() view → USDT0

Returns the token's name.✨ AI

開發者: Returns the name of the token.

回傳值

名稱 類型 描述
— string The token name as a string.✨ AI
nonces(address) view

Returns the current replay nonce for the given address.✨ AI

參數

名稱 類型 描述
— address

回傳值

名稱 類型 描述
— uint256 Current uint256 nonce for the address; increments after each signed permit/use.✨ AI
oftContract() view → 0x6ba10300f0dc58b7a1e4c0e41f5dabb7d7829e13

Returns the OFT contract address (the address with DEPOSITOR_ROLE)

回傳值

名稱 類型 描述
— address The address of the OFT contract
supportsInterface(interfaceId: bytes4) view

Return whether the contract implements the interface identified by the provided interfaceId.✨ AI

開發者: 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[ERC section] to learn more about how these ids are created. This function call must use less than 30 000 gas.

參數

名稱 類型 描述
interfaceId bytes4 The ERC-165 interface identifier (4-byte) to query for support.✨ AI

回傳值

名稱 類型 描述
— bool True if the contract implements the specified interfaceId, otherwise false.✨ AI
symbol() view → USDT0

Returns the token's short symbol used by user interfaces.✨ AI

開發者: Returns the symbol of the token, usually a shorter version of the name.

回傳值

名稱 類型 描述
— string The token symbol as a string.✨ AI
totalSupply() view → 794,662,596.56 USDT0

Returns the total number of tokens in existence.✨ AI

開發者: See {IERC20-totalSupply}.

回傳值

名稱 類型 描述
— uint256 Total token supply as a uint256, expressed in the token's smallest unit (per decimals).✨ AI

寫入函式

addToBlockedList(_user: address) nonpayable

Add an address to the token contract's blocked list to prevent transfers by that address.✨ AI

參數

名稱 類型 描述
_user address Address to mark as blocked; blocked addresses are prevented from transferring tokens.✨ AI
approve(spender: address, amount: uint256) nonpayable

Approve an address (spender) to spend up to amount of your tokens on your behalf.✨ AI

開發者: See {IERC20-approve}. Requirements: - `spender` cannot be the zero address.

參數

名稱 類型 描述
spender address Address being approved to transfer tokens from the caller's balance.✨ AI
amount uint256 Maximum number of tokens the spender is allowed to transfer.✨ AI

回傳值

名稱 類型 描述
— bool True if the approval succeeded, otherwise false.✨ AI
changeName(name_: string) nonpayable

Set the token's public name to the provided string.✨ AI

參數

名稱 類型 描述
name_ string The new token name to store and expose via name().✨ AI
changeSymbol(symbol_: string) nonpayable

Change the token's symbol to a new string.✨ AI

參數

名稱 類型 描述
symbol_ string New symbol to assign to the token.✨ AI
crosschainBurn(user: address, amount: uint256) nonpayable

Burn tokens through a crosschain transfer.

參數

名稱 類型 描述
user address user address for whom burn is being done
amount uint256 amount of tokens to burn
crosschainMint(user: address, amount: uint256) nonpayable

called when token is deposited on root chain

開發者: Should be callable only by OAPP contract

參數

名稱 類型 描述
user address user address for whom deposit is being done
amount uint256 amount of tokens to mint
decreaseAllowance(spender: address, subtractedValue: uint256) nonpayable

Decrease the caller's token allowance granted to spender by subtractedValue.✨ AI

開發者: Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`.

參數

名稱 類型 描述
spender address Address whose allowance will be decreased.✨ AI
subtractedValue uint256 Amount to subtract from the current allowance, in the token's smallest units.✨ AI

回傳值

名稱 類型 描述
— bool True if the allowance was decreased successfully.✨ AI
deposit(user: address, depositData: bytes) nonpayable

Mint tokens to a recipient when tokens are deposited from the root chain.✨ AI

開發者: Callable by the root chain manager/predicate; decodes depositData as a uint256 amount and mints to user.✨ AI

參數

名稱 類型 描述
user address Recipient address that will receive the minted tokens.✨ AI
depositData bytes ABI-encoded deposit payload, typically the uint256 amount to mint.✨ AI
destroyBlockedFunds(_blockedUser: address) nonpayable

Permanently remove all tokens held by a blocked address and reduce the total token supply.✨ AI

參數

名稱 類型 描述
_blockedUser address Address whose token balance will be permanently destroyed.✨ AI
executeMetaTransaction(userAddress: address, functionSignature: bytes, sigR: bytes32, sigS: bytes32, sigV: uint8) payable

參數

名稱 類型 描述
userAddress address
functionSignature bytes
sigR bytes32
sigS bytes32
sigV uint8

回傳值

名稱 類型 描述
— bytes
grantRole(role: bytes32, account: address) nonpayable
開發者: Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role.

參數

名稱 類型 描述
role bytes32
account address
increaseAllowance(spender: address, addedValue: uint256) nonpayable
開發者: Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address.

參數

名稱 類型 描述
spender address
addedValue uint256

回傳值

名稱 類型 描述
— bool
mint(_destination: address, _amount: uint256) nonpayable

參數

名稱 類型 描述
_destination address
_amount uint256
multiTransfer(_recipients: address[], _values: uint256[]) nonpayable

參數

名稱 類型 描述
_recipients address[]
_values uint256[]
permit(owner: address, spender: address, value: uint256, deadline: uint256, v: uint8, r: bytes32, s: bytes32) nonpayable

參數

名稱 類型 描述
owner address
spender address
value uint256
deadline uint256
v uint8
r bytes32
s bytes32
redeem(_amount: uint256) nonpayable

參數

名稱 類型 描述
_amount uint256
removeFromBlockedList(_user: address) nonpayable

參數

名稱 類型 描述
_user address
renounceRole(role: bytes32, account: address) nonpayable
開發者: Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`.

參數

名稱 類型 描述
role bytes32
account address
revokeRole(role: bytes32, account: address) nonpayable
開發者: Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role.

參數

名稱 類型 描述
role bytes32
account address
setOFTContract(_oftContract: address) nonpayable

Sets the OFT contract address by granting it the DEPOSITOR_ROLE

開發者: Can only be called by accounts with DEFAULT_ADMIN_ROLE

參數

名稱 類型 描述
_oftContract address The address of the OFT contract
transfer(recipient: address, amount: uint256) nonpayable
開發者: See {IERC20-transfer}. Requirements: - `recipient` cannot be the zero address. - the caller must have a balance of at least `amount`.

參數

名稱 類型 描述
recipient address
amount uint256

回傳值

名稱 類型 描述
— bool
transferFrom(_sender: address, _recipient: address, _amount: uint256) nonpayable
開發者: See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}; Requirements: - `sender` and `recipient` cannot be the zero address. - `sender` must have a balance of at least `amount`. - the caller must have allowance for ``sender``'s tokens of at least `amount`.

參數

名稱 類型 描述
_sender address
_recipient address
_amount uint256

回傳值

名稱 類型 描述
— bool
upgradeToUSDT0(newAdmin: address, oftContract: address) nonpayable

參數

名稱 類型 描述
newAdmin address
oftContract address
withdraw(uint256) nonpayable

參數

名稱 類型 描述
— uint256

事件

Approval(owner: address, spender: address, value: uint256)
名稱 類型 已索引 描述
owner address ✓
spender address ✓
value uint256
BlockPlaced(_user: address)
名稱 類型 已索引 描述
_user address ✓
BlockReleased(_user: address)
名稱 類型 已索引 描述
_user address ✓
CrosschainBurn(from: address, amount: uint256, sender: address)

Emitted when a crosschain transfer burns tokens.

名稱 類型 已索引 描述
from address ✓ Address of the account tokens are being burned from.
amount uint256 Amount of tokens burned.
sender address ✓ Address of the caller (msg.sender) who invoked crosschainBurn.
CrosschainMint(to: address, amount: uint256, sender: address)

Emitted when a crosschain transfer mints tokens.

名稱 類型 已索引 描述
to address ✓ Address of the account tokens are being minted for.
amount uint256 Amount of tokens minted.
sender address ✓ Address of the caller (msg.sender) who invoked crosschainMint.
DestroyedBlockedFunds(_blockedUser: address, _balance: uint256)
名稱 類型 已索引 描述
_blockedUser address ✓
_balance uint256
LogSetOFTContract(oftContract: address)
名稱 類型 已索引 描述
oftContract address ✓
MetaTransactionExecuted(userAddress: address, relayerAddress: address, functionSignature: bytes)
名稱 類型 已索引 描述
userAddress address ✓
relayerAddress address ✓
functionSignature bytes
Mint(_destination: address, _amount: uint256)
名稱 類型 已索引 描述
_destination address ✓
_amount uint256
Redeem(_amount: uint256)
名稱 類型 已索引 描述
_amount uint256
RoleAdminChanged(role: bytes32, previousAdminRole: bytes32, newAdminRole: bytes32)
名稱 類型 已索引 描述
role bytes32 ✓
previousAdminRole bytes32 ✓
newAdminRole bytes32 ✓
RoleGranted(role: bytes32, account: address, sender: address)
名稱 類型 已索引 描述
role bytes32 ✓
account address ✓
sender address ✓
RoleRevoked(role: bytes32, account: address, sender: address)
名稱 類型 已索引 描述
role bytes32 ✓
account address ✓
sender address ✓
Transfer(from: address, to: address, value: uint256)
名稱 類型 已索引 描述
from address ✓
to address ✓
value uint256