USDT
Optimism ERC-20 Token0x94b008aa00579c1307b0ef2c499ad98a8ce58e58
Solidity v0.7.6
Fungible token following the ERC-20 standard.
🤖
Query this contract from your AI
Reference:
usdt-optimism
0x94b008aa00579c1307b0ef2c499ad98a8ce58e58
Sample prompt:
“Tell me the current state of usdt-optimism”
No AI wired up yet? →
mcp.smarts.md
Admin & Risk
Who can change the rules?
Detected mintable controls from the verified ABI.
Mintable
Overview
Read Functions
9
Write Functions
7
Events
4
Read Functions
Block #152,041,586 · just now
allowance(owner: address, spender: address)
view
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.
Parameters
| Name | Type | Description |
|---|---|---|
| owner | address | |
| spender | address |
Returns
| Name | Type | Description |
|---|---|---|
| — | uint256 |
balanceOf(account: address)
view
dev: Returns the amount of tokens owned by `account`.
Parameters
| Name | Type | Description |
|---|---|---|
| account | address |
Returns
| Name | Type | Description |
|---|---|---|
| — | uint256 |
decimals()
view
→ 6
dev: Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5,05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless {_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}.
Returns
| Name | Type | Description |
|---|---|---|
| — | uint8 |
l1Token()
view
→ 0xdac17f958d2ee523a2206206994597c13d831ec7
Returns
| Name | Type | Description |
|---|---|---|
| — | address |
l2Bridge()
view
→ 0x4200000000000000000000000000000000000010
Returns
| Name | Type | Description |
|---|---|---|
| — | address |
name()
view
→ Tether USD
dev: Returns the name of the token.
Returns
| Name | Type | Description |
|---|---|---|
| — | string |
supportsInterface(_interfaceId: bytes4)
pure
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.
Parameters
| Name | Type | Description |
|---|---|---|
| _interfaceId | bytes4 |
Returns
| Name | Type | Description |
|---|---|---|
| — | bool |
symbol()
view
→ USDT
dev: Returns the symbol of the token, usually a shorter version of the name.
Returns
| Name | Type | Description |
|---|---|---|
| — | string |
totalSupply()
view
→ 178,569,532.47 USDT
dev: Returns the amount of tokens in existence.
Returns
| Name | Type | Description |
|---|---|---|
| — | uint256 |
Write Functions
approve(spender: address, amount: uint256)
nonpayable
dev: Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.
Parameters
| Name | Type | Description |
|---|---|---|
| spender | address | |
| amount | uint256 |
Returns
| Name | Type | Description |
|---|---|---|
| — | bool |
burn(_from: address, _amount: uint256)
nonpayable
Parameters
| Name | Type | Description |
|---|---|---|
| _from | address | |
| _amount | uint256 |
decreaseAllowance(spender: address, subtractedValue: uint256)
nonpayable
dev: Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`.
Parameters
| Name | Type | Description |
|---|---|---|
| spender | address | |
| subtractedValue | uint256 |
Returns
| Name | Type | Description |
|---|---|---|
| — | bool |
increaseAllowance(spender: address, addedValue: uint256)
nonpayable
dev: Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address.
Parameters
| Name | Type | Description |
|---|---|---|
| spender | address | |
| addedValue | uint256 |
Returns
| Name | Type | Description |
|---|---|---|
| — | bool |
mint(_to: address, _amount: uint256)
nonpayable
Parameters
| Name | Type | Description |
|---|---|---|
| _to | address | |
| _amount | uint256 |
transfer(recipient: address, amount: uint256)
nonpayable
dev: Moves `amount` tokens from the caller's account to `recipient`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.
Parameters
| Name | Type | Description |
|---|---|---|
| recipient | address | |
| amount | uint256 |
Returns
| Name | Type | Description |
|---|---|---|
| — | bool |
transferFrom(sender: address, recipient: address, amount: uint256)
nonpayable
dev: Moves `amount` tokens from `sender` to `recipient` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.
Parameters
| Name | Type | Description |
|---|---|---|
| sender | address | |
| recipient | address | |
| amount | uint256 |
Returns
| Name | Type | Description |
|---|---|---|
| — | bool |
Events
Approval(owner: address, spender: address, value: uint256)
| Name | Type | Indexed | Description |
|---|---|---|---|
| owner | address | ✓ | |
| spender | address | ✓ | |
| value | uint256 |
Burn(_account: address, _amount: uint256)
| Name | Type | Indexed | Description |
|---|---|---|---|
| _account | address | ✓ | |
| _amount | uint256 |
Mint(_account: address, _amount: uint256)
| Name | Type | Indexed | Description |
|---|---|---|---|
| _account | address | ✓ | |
| _amount | uint256 |
Transfer(from: address, to: address, value: uint256)
| Name | Type | Indexed | Description |
|---|---|---|---|
| from | address | ✓ | |
| to | address | ✓ | |
| value | uint256 |