Bytecode-generated storage layout

We've generated a storage layout (with no variable labels) from this contract's bytecode. We've also started a backfill to track the inferred variables.

0xafd98cc0f3e3783eaf88abab2b836b89d085861f

Unverified contract

Proxy

Active on Base with 3 txns
Deployed by via 0x8b85095b at 15444925
Slot
32
30
28
26
24
22
20
18
16
14
12
10
8
6
4
2
0
Native
Value $230.97
ERC-20
--
ERC-20
--
)
ERC-721
--
)
ERC-721
--
)
ERC-721
--
)
ERC-721
--
)
ERC-721
--
)
ERC-721
--
)
ERC-721
--
0xb4a106262da92174b03b488a02b131a0cb7263c882813bc33eb2cf6f2e403dbc
0xdf81fade4080942a01fbd3d6158f379ff0bdf5f17bcf7e7b23a531cae7f21258
0xc397d1d7a812406e6d956bb4fa6f0b0fa5c037b3b2cd3b0ce6368f462ae88ddf

Functions
Getter at block 23781705
REPLAYABLE_NONCE_KEY(view returns (uint256)
8453
domainSeparator(view returns (bytes32)
0xd0d2bb8ed38c159db2dcbcfe0a1bd41c48a201254f5beeab4070d354fb74ac2b
eip712Domain(view returns (bytes1 fieldsstring namestring versionuint256 chainIdaddress verifyingContractbytes32 saltuint256[] extensions)
(fields=0x0f, name=Coinbase Smart Wallet, version=1, chainId=8453, verifyingContract=0xafd98cc0f3e3783eaf88abab2b836b89d085861f, salt=0x0000000000000000000000000000000000000000000000000000000000000000, extensions=[])
entryPoint(view returns (address)
0x5ff137d4b0fdcd49dca30c7cf57e578a026d2789
implementation(view returns (address $)
0x000100abaad02f1cfc8bbe32bd5a564817339e72
nextOwnerIndex(view returns (uint256)
1
ownerCount(view returns (uint256)
1
 
proxiableUUID(view returns (bytes32)
removedOwnersCount(view returns (uint256)
0
Read-only
canSkipChainIdValidation(bytes4 functionSelectorpure returns (bool)
getUserOpHashWithoutChainId(struct UserOperation userOpview returns (bytes32)
isOwnerAddress(address accountview returns (bool)
isOwnerBytes(bytes accountview returns (bool)
isOwnerPublicKey(bytes32 xbytes32 yview returns (bool)
isValidSignature(bytes32 hashbytes signatureview returns (bytes4 result)
ownerAtIndex(uint256 indexview returns (bytes)
replaySafeHash(bytes32 hashview returns (bytes32)
State-modifying
addOwnerAddress(address owner
addOwnerPublicKey(bytes32 xbytes32 y
execute(address targetuint256 valuebytes datapayable 
executeBatch(struct CoinbaseSmartWalletCall[] callspayable 
executeWithoutChainIdValidation(bytes[] callspayable 
initialize(bytes[] ownerspayable 
removeLastOwner(uint256 indexbytes owner
removeOwnerAtIndex(uint256 indexbytes owner
upgradeToAndCall(address newImplementationbytes datapayable 
validateUserOp(struct UserOperation userOpbytes32 userOpHashuint256 missingAccountFundsreturns (uint256 validationData)
Events
AddOwner(uint256 indexed indexbytes owner
RemoveOwner(uint256 indexed indexbytes owner
Upgraded(address indexed implementation
Constructor

This contract contains no constructor objects.

Fallback and receive
fallback(
receive(
Errors
AlreadyOwner(bytes owner
Initialized(
InvalidEthereumAddressOwner(bytes owner
InvalidNonceKey(uint256 key
InvalidOwnerBytesLength(bytes owner
LastOwner(
NoOwnerAtIndex(uint256 index
NotLastOwner(uint256 ownersRemaining
SelectorNotAllowed(bytes4 selector
Unauthorized(
UnauthorizedCallContext(
UpgradeFailed(
WrongOwnerAtIndex(uint256 indexbytes expectedOwnerbytes actualOwner