A directory combines the record name with the directory identifier.
SEE IT FOR YOURSELF
Pack small values into Solidity storage slotsStep 1 / 4
In this simple default-layout example, two uint128 values come before one uint256. Each slot holds thirty-two bytes.
In this simple default-layout example, two uint128 values come before one uint256. Each slot holds thirty-two bytes.The first sixteen-byte value occupies the low-order half of slot zero. Low-order bytes are shown on the right.The second uint128 fits in the remaining sixteen bytes. Both values now share slot zero.C needs a complete thirty-two-byte slot, so it begins at slot one. Two packed small values plus C use two slots.
Animated local teaching model. No wallet, RPC or live blockchain data. Some labels and hashes are abbreviated for readability.
State the assumed declaration
Use mapping(address => uint256) at declared slot five. The numeric slot is an exercise assumption, not a universal mapping location.
Write both words
Encode address one as a full padded address word and slot five as a uint256 word. Their concatenation is sixty-four bytes.
Apply Keccak to the bytes
Hash that encoded byte sequence, not a text description or a twenty-byte packed address plus slot. The result identifies the entry slot under this layout.
Separate calculation from a state read
This exercise computes a location locally. It does not query that slot, verify a token implementation or establish a balance.
Your acceptance target
key: address 1
base slot: 5
entry slot: 0x1471eb6eb2c5e789fc3de43f8ce62938c7d1836ec861730447e2ada8fd81017b
Use only local examples and public sample addresses. State the assumptions and limits alongside the result.