USDe
Ethereum ERC-20 Token0x4c9edd5852cd905f086c759e8383e09bff1e68b3
Solidity v0.8.19+commit.7dd6d404
Fungible token following the ERC-20 standard.
🤖
Query this contract from your AI
Reference:
usde-eth
0x4c9edd5852cd905f086c759e8383e09bff1e68b3
Sample prompt:
“Tell me the current state of usde-eth”
No AI wired up yet? →
mcp.smarts.md
Admin & Risk
Who can change the rules?
Detected mintable and ownable controls from the verified ABI.
Mintable
Ownable
Current controls
- Owner
- 0x3b0aaf6e6fcd4a7ceef8c92c32dfea9e64dc1862 ↗ Etherscan → smarts
Overview
Read Functions
13
Write Functions
12
Events
6
Read Functions
Block #25,169,805 · just now
DOMAIN_SEPARATOR()
view
→ 0x74fbd8ad78eb7732edc209f83d2dc23f7472a05cdbfd5dfc0f210dad2f967cb3
Returns
| Name | Type | Description |
|---|---|---|
| — | bytes32 |
allowance(owner: address, spender: address)
view
dev: See {IERC20-allowance}.
Parameters
| Name | Type | Description |
|---|---|---|
| owner | address | |
| spender | address |
Returns
| Name | Type | Description |
|---|---|---|
| — | uint256 |
balanceOf(account: address)
view
dev: See {IERC20-balanceOf}.
Parameters
| Name | Type | Description |
|---|---|---|
| account | address |
Returns
| Name | Type | Description |
|---|---|---|
| — | uint256 |
decimals()
view
→ 18
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 default value returned by this function, unless it's overridden. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}.
Returns
| Name | Type | Description |
|---|---|---|
| — | uint8 |
eip712Domain()
view
→ 0x0f, USDe, 1, 1, 0x4c9edd5852cd905f086c759e8383e09bff1e68b3, 0x0000000000000000000000000000000000000000000000000000000000000000, []
dev: See {EIP-5267}. _Available since v4.9._
Returns
| Name | Type | Description |
|---|---|---|
| fields | bytes1 | |
| name | string | |
| version | string | |
| chainId | uint256 | |
| verifyingContract | address | |
| salt | bytes32 | |
| extensions | uint256[] |
minter()
view
→ 0xe3490297a08d6fc8da46edb7b6142e4f461b62d3
Returns
| Name | Type | Description |
|---|---|---|
| — | address |
name()
view
→ USDe
dev: Returns the name of the token.
Returns
| Name | Type | Description |
|---|---|---|
| — | string |
nonces(owner: address)
view
dev: See {IERC20Permit-nonces}.
Parameters
| Name | Type | Description |
|---|---|---|
| owner | address |
Returns
| Name | Type | Description |
|---|---|---|
| — | uint256 |
owner()
view
→ 0x3b0aaf6e6fcd4a7ceef8c92c32dfea9e64dc1862
dev: Returns the address of the current owner.
Returns
| Name | Type | Description |
|---|---|---|
| — | address |
pendingOwner()
view
→ 0x0000000000000000000000000000000000000000
dev: Returns the address of the pending owner.
Returns
| Name | Type | Description |
|---|---|---|
| — | address |
renounceOwnership()
view
reverted
dev: Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.
symbol()
view
→ USDe
dev: Returns the symbol of the token, usually a shorter version of the name.
Returns
| Name | Type | Description |
|---|---|---|
| — | string |
totalSupply()
view
→ 4,451,943,248.89 USDe
dev: See {IERC20-totalSupply}.
Returns
| Name | Type | Description |
|---|---|---|
| — | uint256 |
Write Functions
acceptOwnership()
nonpayable
dev: The new owner accepts the ownership transfer.
approve(spender: address, amount: uint256)
nonpayable
dev: See {IERC20-approve}. NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on `transferFrom`. This is semantically equivalent to an infinite approval. Requirements: - `spender` cannot be the zero address.
Parameters
| Name | Type | Description |
|---|---|---|
| spender | address | |
| amount | uint256 |
Returns
| Name | Type | Description |
|---|---|---|
| — | bool |
burn(amount: uint256)
nonpayable
dev: Destroys `amount` tokens from the caller. See {ERC20-_burn}.
Parameters
| Name | Type | Description |
|---|---|---|
| amount | uint256 |
burnFrom(account: address, amount: uint256)
nonpayable
dev: Destroys `amount` tokens from `account`, deducting from the caller's allowance. See {ERC20-_burn} and {ERC20-allowance}. Requirements: - the caller must have allowance for ``accounts``'s tokens of at least `amount`.
Parameters
| Name | Type | Description |
|---|---|---|
| account | 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 |
permit(owner: address, spender: address, value: uint256, deadline: uint256, v: uint8, r: bytes32, s: bytes32)
nonpayable
dev: See {IERC20Permit-permit}.
Parameters
| Name | Type | Description |
|---|---|---|
| owner | address | |
| spender | address | |
| value | uint256 | |
| deadline | uint256 | |
| v | uint8 | |
| r | bytes32 | |
| s | bytes32 |
setMinter(newMinter: address)
nonpayable
Parameters
| Name | Type | Description |
|---|---|---|
| newMinter | address |
transfer(to: address, amount: uint256)
nonpayable
dev: See {IERC20-transfer}. Requirements: - `to` cannot be the zero address. - the caller must have a balance of at least `amount`.
Parameters
| Name | Type | Description |
|---|---|---|
| to | address | |
| amount | uint256 |
Returns
| Name | Type | Description |
|---|---|---|
| — | bool |
transferFrom(from: address, to: address, amount: uint256)
nonpayable
dev: See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. NOTE: Does not update the allowance if the current allowance is the maximum `uint256`. Requirements: - `from` and `to` cannot be the zero address. - `from` must have a balance of at least `amount`. - the caller must have allowance for ``from``'s tokens of at least `amount`.
Parameters
| Name | Type | Description |
|---|---|---|
| from | address | |
| to | address | |
| amount | uint256 |
Returns
| Name | Type | Description |
|---|---|---|
| — | bool |
transferOwnership(newOwner: address)
nonpayable
dev: Starts the ownership transfer of the contract to a new account. Replaces the pending transfer if there is one. Can only be called by the current owner.
Parameters
| Name | Type | Description |
|---|---|---|
| newOwner | address |
Events
Approval(owner: address, spender: address, value: uint256)
| Name | Type | Indexed | Description |
|---|---|---|---|
| owner | address | ✓ | |
| spender | address | ✓ | |
| value | uint256 |
EIP712DomainChanged()
MinterUpdated(newMinter: address, oldMinter: address)
This event is fired when the minter changes
| Name | Type | Indexed | Description |
|---|---|---|---|
| newMinter | address | ✓ | |
| oldMinter | address | ✓ |
OwnershipTransferStarted(previousOwner: address, newOwner: address)
| Name | Type | Indexed | Description |
|---|---|---|---|
| previousOwner | address | ✓ | |
| newOwner | address | ✓ |
OwnershipTransferred(previousOwner: address, newOwner: address)
| Name | Type | Indexed | Description |
|---|---|---|---|
| previousOwner | address | ✓ | |
| newOwner | address | ✓ |
Transfer(from: address, to: address, value: uint256)
| Name | Type | Indexed | Description |
|---|---|---|---|
| from | address | ✓ | |
| to | address | ✓ | |
| value | uint256 |