# Bal Types

## `Bal.Account`

One account's entries.

Every list is keyed by block access index, where index `0` is the pre-execution state and transaction `i` writes at index `i + 1`. A read is an entry with no changes, which is how a list records that a slot was touched without being written.

**Source:** [src/evm/Bal.ts](https://github.com/wevm/ox/blob/main/src/evm/Bal.ts#L24)

## `Bal.Bal`

A block access list, as [EIP-7928](https://eips.ethereum.org/EIPS/eip-7928) defines it.

Enumerates every account and storage slot a block touches, with the value each one held after each transaction. Attached to an EVM it replaces the database for covered reads; built from executions it is what a block proposer publishes.

Ordering is canonical: accounts sorted by address, entries sorted by key. A list read back carries that order whatever order it was written in.

**Source:** [src/evm/Bal.ts](https://github.com/wevm/ox/blob/main/src/evm/Bal.ts#L14)
