USDe

Ethereum ERC-20 Token

0x4c9edd5852cd905f086c759e8383e09bff1e68b3

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?

Block #25,169,805

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