USDS

Ethereum ERC-20 Token

0xdc035d45d973e3ec169d2276ddab16f1e407384f

Proxy implementation: 0x1923dfee706a8e78157416c29cbccfde7cdf4102

Solidity v0.8.21+commit.d9974bed

Fungible token following the ERC-20 standard.

🤖
Query this contract from your AI
Reference: usds-eth 0xdc035d45d973e3ec169d2276ddab16f1e407384f
Sample prompt: “Tell me the current state of usds-eth”
No AI wired up yet? → mcp.smarts.md

Admin & Risk

Who can change the rules?

Detected upgradeable and mintable controls from the verified ABI.

Upgradeable Mintable

Current controls

Implementation
0x1923dfee706a8e78157416c29cbccfde7cdf4102 ↗ Etherscan → smarts proxy

Overview

Read Functions
14
Write Functions
11
Events
6

Read Functions

Block #25,169,808 · just now
DOMAIN_SEPARATOR() view → 0x2bc1b7e1bb385a0b6eeb599e6bf1dc875f0933b1a91bea26cf895ebdee2a5b56

Returns

Name Type Description
bytes32
PERMIT_TYPEHASH() view → 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9

Returns

Name Type Description
bytes32
UPGRADE_INTERFACE_VERSION() view → 5.0.0

Returns

Name Type Description
string
allowance(address, address) view

Parameters

Name Type Description
address
address

Returns

Name Type Description
uint256
balanceOf(address) view

Parameters

Name Type Description
address

Returns

Name Type Description
uint256
decimals() view → 18

Returns

Name Type Description
uint8
getImplementation() view → 0x1923dfee706a8e78157416c29cbccfde7cdf4102
dev: Returns the current implementation address.

Returns

Name Type Description
address
name() view → USDS Stablecoin

Returns

Name Type Description
string
nonces(address) view

Parameters

Name Type Description
address

Returns

Name Type Description
uint256
proxiableUUID() view reverted
dev: Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.

Returns

Name Type Description
bytes32
symbol() view → USDS

Returns

Name Type Description
string
totalSupply() view → 8,515,518,313.77 USDS

Returns

Name Type Description
uint256
version() view → 1

Returns

Name Type Description
string
wards(address) view

Parameters

Name Type Description
address

Returns

Name Type Description
uint256

Write Functions

approve(spender: address, value: uint256) nonpayable

Parameters

Name Type Description
spender address
value uint256

Returns

Name Type Description
bool
burn(from: address, value: uint256) nonpayable

Parameters

Name Type Description
from address
value uint256
deny(usr: address) nonpayable

Parameters

Name Type Description
usr address
initialize() nonpayable
mint(to: address, value: uint256) nonpayable

Parameters

Name Type Description
to address
value uint256
permit(owner: address, spender: address, value: uint256, deadline: uint256, signature: bytes) nonpayable

Parameters

Name Type Description
owner address
spender address
value uint256
deadline uint256
signature bytes
permit(owner: address, spender: address, value: uint256, deadline: uint256, v: uint8, r: bytes32, s: bytes32) nonpayable

Parameters

Name Type Description
owner address
spender address
value uint256
deadline uint256
v uint8
r bytes32
s bytes32
rely(usr: address) nonpayable

Parameters

Name Type Description
usr address
transfer(to: address, value: uint256) nonpayable

Parameters

Name Type Description
to address
value uint256

Returns

Name Type Description
bool
transferFrom(from: address, to: address, value: uint256) nonpayable

Parameters

Name Type Description
from address
to address
value uint256

Returns

Name Type Description
bool
upgradeToAndCall(newImplementation: address, data: bytes) payable
dev: Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.

Parameters

Name Type Description
newImplementation address
data bytes

Events

Approval(owner: address, spender: address, value: uint256)
Name Type Indexed Description
owner address
spender address
value uint256
Deny(usr: address)
Name Type Indexed Description
usr address
Initialized(version: uint64)
Name Type Indexed Description
version uint64
Rely(usr: address)
Name Type Indexed Description
usr address
Transfer(from: address, to: address, value: uint256)
Name Type Indexed Description
from address
to address
value uint256
Upgraded(implementation: address)
Name Type Indexed Description
implementation address