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.

0xa981854fa76fc85fc351ba4050d971ce4637163f

Unverified contract

Proxy

Active on Base with 7 txns
Deployed by via 0x433426d0 at 15628048
Slot
32
30
28
26
24
22
20
18
16
14
12
10
8
6
4
2
0
Native
Value $20.48
ERC-20
Value $4,607.09
ERC-20
Value $4,112.83
ERC-20
Value $0.36
ERC-20
Value $0.09
ERC-20
Value $0.07
ERC-20
Value $0
ERC-20
--
ERC-20
--
ERC-20
--
0x8d44eda2182c205d7876878711dc1c94fb8479f1e7ef65d9e49c2485e3f1efa0
0x7de384574ab2bebce9c0c834c68051933fcf082424079f7e6e003ae42970b5d5
0x64ca298d977ca3b398dac0e0c99a8c181db88a0b6561bbceb5cb0c1466bdbe73
0xdeffdc8401ae6a01c54ec98eeeff7a645f0ff3541972701dd38f47d1345d1821
0xa59190c60b224923f9fe979770d59d7bb4c087d99802a84f4dd8110d82881640
0xd5ad3eccea48d1c211f8329a2ef2737531ef31db9647df48f67f947f98803379
0x66f9a986180646bc87ba0f737223ddfbd5310dbf9a7b1573f306187e6cf53561

Functions
Getter at block 23699590
REPLAYABLE_NONCE_KEY(view returns (uint256)
8453
domainSeparator(view returns (bytes32)
0xd89c4aa1b18ebf8b79248c8da1ea5074f52eb9c4bf2fbe8b94053eb4573caf8b
eip712Domain(view returns (bytes1 fieldsstring namestring versionuint256 chainIdaddress verifyingContractbytes32 saltuint256[] extensions)
(fields=0x0f, name=Coinbase Smart Wallet, version=1, chainId=8453, verifyingContract=0xa981854fa76fc85fc351ba4050d971ce4637163f, salt=0x0000000000000000000000000000000000000000000000000000000000000000, extensions=[])
entryPoint(view returns (address)
0x5ff137d4b0fdcd49dca30c7cf57e578a026d2789
implementation(view returns (address $)
0x000100abaad02f1cfc8bbe32bd5a564817339e72
nextOwnerIndex(view returns (uint256)
2
ownerCount(view returns (uint256)
2
 
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