---
# System prepended metadata

title: 'SSZ-QL: Real-world Parsing Result'
tags: [EPF6]

---

# SSZ-QL: Real-world Parsing Result

{%preview https://github.com/syjn99/prysm/pull/3 %}

## `BeaconStateElectra`

```
BeaconStateElectra (Variable-size / fixed size: 2736713, total size: 2738492)
├─ genesis_time (offset: 0) uint64 (Fixed-size / size: 8)
├─ genesis_validators_root (offset: 8) Bytes32 (Fixed-size / size: 32)
├─ slot (offset: 40) Slot (Fixed-size / size: 8)
├─ fork (offset: 48) Fork (Fixed-size / fixed size: 16, total size: 16)
│  ├─ previous_version (offset: 0) Bytes4 (Fixed-size / size: 4)
│  ├─ current_version (offset: 4) Bytes4 (Fixed-size / size: 4)
│  └─ epoch (offset: 8) Epoch (Fixed-size / size: 8)
├─ latest_block_header (offset: 64) BeaconBlockHeader (Fixed-size / fixed size: 112, total size: 112)
│  ├─ slot (offset: 0) Slot (Fixed-size / size: 8)
│  ├─ proposer_index (offset: 8) ValidatorIndex (Fixed-size / size: 8)
│  ├─ parent_root (offset: 16) Bytes32 (Fixed-size / size: 32)
│  ├─ state_root (offset: 48) Bytes32 (Fixed-size / size: 32)
│  └─ body_root (offset: 80) Bytes32 (Fixed-size / size: 32)
├─ block_roots (offset: 176) Vector[Bytes32, 8192] (Fixed-size / size: 262144)
├─ state_roots (offset: 262320) Vector[Bytes32, 8192] (Fixed-size / size: 262144)
├─ historical_roots (offset: 2736713) List[Bytes32, 16777216] (Variable-size / length: 0, size: 0)
├─ eth1_data (offset: 524468) Eth1Data (Fixed-size / fixed size: 72, total size: 72)
│  ├─ deposit_root (offset: 0) Bytes32 (Fixed-size / size: 32)
│  ├─ deposit_count (offset: 32) uint64 (Fixed-size / size: 8)
│  └─ block_hash (offset: 40) Bytes32 (Fixed-size / size: 32)
├─ eth1_data_votes (offset: 2736713) List[Eth1Data, 2048] (Variable-size / length: 2, size: 144)
├─ eth1_deposit_index (offset: 524544) uint64 (Fixed-size / size: 8)
├─ validators (offset: 2736857) List[Validator, 1099511627776] (Variable-size / length: 3, size: 363)
├─ balances (offset: 2737220) List[uint64, 1099511627776] (Variable-size / length: 5, size: 40)
├─ randao_mixes (offset: 524560) Vector[Bytes32, 65536] (Fixed-size / size: 2097152)
├─ slashings (offset: 2621712) Vector[uint64, 8192] (Fixed-size / size: 65536)
├─ previous_epoch_participation (offset: 2737260) List[uint8, 1099511627776] (Variable-size / length: 3, size: 3)
├─ current_epoch_participation (offset: 2737263) List[uint8, 1099511627776] (Variable-size / length: 5, size: 5)
├─ justification_bits (offset: 2687256) Bitvector[8] (Fixed-size / size: 1)
├─ previous_justified_checkpoint (offset: 2687257) Checkpoint (Fixed-size / fixed size: 40, total size: 40)
│  ├─ epoch (offset: 0) Epoch (Fixed-size / size: 8)
│  └─ root (offset: 8) Bytes32 (Fixed-size / size: 32)
├─ current_justified_checkpoint (offset: 2687297) Checkpoint (Fixed-size / fixed size: 40, total size: 40)
│  ├─ epoch (offset: 0) Epoch (Fixed-size / size: 8)
│  └─ root (offset: 8) Bytes32 (Fixed-size / size: 32)
├─ finalized_checkpoint (offset: 2687337) Checkpoint (Fixed-size / fixed size: 40, total size: 40)
│  ├─ epoch (offset: 0) Epoch (Fixed-size / size: 8)
│  └─ root (offset: 8) Bytes32 (Fixed-size / size: 32)
├─ inactivity_scores (offset: 2737268) List[uint64, 1099511627776] (Variable-size / length: 5, size: 40)
├─ current_sync_committee (offset: 2687381) SyncCommittee (Fixed-size / fixed size: 24624, total size: 24624)
│  ├─ pubkeys (offset: 0) Vector[Bytes48, 512] (Fixed-size / size: 24576)
│  └─ aggregate_pubkey (offset: 24576) Bytes48 (Fixed-size / size: 48)
├─ next_sync_committee (offset: 2712005) SyncCommittee (Fixed-size / fixed size: 24624, total size: 24624)
│  ├─ pubkeys (offset: 0) Vector[Bytes48, 512] (Fixed-size / size: 24576)
│  └─ aggregate_pubkey (offset: 24576) Bytes48 (Fixed-size / size: 48)
├─ latest_execution_payload_header (offset: 2737308) ExecutionPayloadHeaderDeneb (Variable-size / fixed size: 584, total size: 584)
│  ├─ parent_hash (offset: 0) Bytes32 (Fixed-size / size: 32)
│  ├─ fee_recipient (offset: 32) Bytes20 (Fixed-size / size: 20)
│  ├─ state_root (offset: 52) Bytes32 (Fixed-size / size: 32)
│  ├─ receipts_root (offset: 84) Bytes32 (Fixed-size / size: 32)
│  ├─ logs_bloom (offset: 116) Bytes256 (Fixed-size / size: 256)
│  ├─ prev_randao (offset: 372) Bytes32 (Fixed-size / size: 32)
│  ├─ block_number (offset: 404) uint64 (Fixed-size / size: 8)
│  ├─ gas_limit (offset: 412) uint64 (Fixed-size / size: 8)
│  ├─ gas_used (offset: 420) uint64 (Fixed-size / size: 8)
│  ├─ timestamp (offset: 428) uint64 (Fixed-size / size: 8)
│  ├─ extra_data (offset: 584) List[uint8, 32] (Variable-size / length: 0, size: 0)
│  ├─ base_fee_per_gas (offset: 440) Bytes32 (Fixed-size / size: 32)
│  ├─ block_hash (offset: 472) Bytes32 (Fixed-size / size: 32)
│  ├─ transactions_root (offset: 504) Bytes32 (Fixed-size / size: 32)
│  ├─ withdrawals_root (offset: 536) Bytes32 (Fixed-size / size: 32)
│  ├─ blob_gas_used (offset: 568) uint64 (Fixed-size / size: 8)
│  └─ excess_blob_gas (offset: 576) uint64 (Fixed-size / size: 8)
├─ next_withdrawal_index (offset: 2736633) uint64 (Fixed-size / size: 8)
├─ next_withdrawal_validator_index (offset: 2736641) ValidatorIndex (Fixed-size / size: 8)
├─ historical_summaries (offset: 2737892) List[HistoricalSummary, 16777216] (Variable-size / length: 2, size: 128)
├─ deposit_requests_start_index (offset: 2736653) uint64 (Fixed-size / size: 8)
├─ deposit_balance_to_consume (offset: 2736661) Gwei (Fixed-size / size: 8)
├─ exit_balance_to_consume (offset: 2736669) Gwei (Fixed-size / size: 8)
├─ earliest_exit_epoch (offset: 2736677) Epoch (Fixed-size / size: 8)
├─ consolidation_balance_to_consume (offset: 2736685) Gwei (Fixed-size / size: 8)
├─ earliest_consolidation_epoch (offset: 2736693) Epoch (Fixed-size / size: 8)
├─ pending_deposits (offset: 2738020) List[PendingDeposit, 134217728] (Variable-size / length: 2, size: 384)
├─ pending_partial_withdrawals (offset: 2738404) List[PendingPartialWithdrawal, 134217728] (Variable-size / length: 3, size: 72)
└─ pending_consolidations (offset: 2738476) List[PendingConsolidation, 262144] (Variable-size / length: 1, size: 16)
```

## `BeaconBlockElectra`

```
BeaconBlockElectra (Variable-size / fixed size: 84, total size: 4814)
├─ slot (offset: 0) Slot (Fixed-size / size: 8)
├─ proposer_index (offset: 8) ValidatorIndex (Fixed-size / size: 8)
├─ parent_root (offset: 16) Bytes32 (Fixed-size / size: 32)
├─ state_root (offset: 48) Bytes32 (Fixed-size / size: 32)
└─ body (offset: 84) BeaconBlockBodyElectra (Variable-size / fixed size: 396, total size: 4730)
   ├─ randao_reveal (offset: 0) Bytes96 (Fixed-size / size: 96)
   ├─ eth1_data (offset: 96) Eth1Data (Fixed-size / fixed size: 72, total size: 72)
   │  ├─ deposit_root (offset: 0) Bytes32 (Fixed-size / size: 32)
   │  ├─ deposit_count (offset: 32) uint64 (Fixed-size / size: 8)
   │  └─ block_hash (offset: 40) Bytes32 (Fixed-size / size: 32)
   ├─ graffiti (offset: 168) Bytes32 (Fixed-size / size: 32)
   ├─ proposer_slashings (offset: 396) List[ProposerSlashing, 16] (Variable-size / length: 1, size: 416)
   ├─ attester_slashings (offset: 816) List[AttesterSlashingElectra, 1] (Variable-size / length: 1, size: 512)
   ├─ attestations (offset: 1332) List[AttestationElectra, 8] (Variable-size / length: 1, size: 301)
   ├─ deposits (offset: 1633) List[Deposit, 16] (Variable-size / length: 1, size: 1240)
   ├─ voluntary_exits (offset: 2873) List[SignedVoluntaryExit, 16] (Variable-size / length: 1, size: 112)
   ├─ sync_aggregate (offset: 220) SyncAggregate (Fixed-size / fixed size: 160, total size: 160)
   │  ├─ sync_committee_bits (offset: 0) Bitvector[512] (Fixed-size / size: 64)
   │  └─ sync_committee_signature (offset: 64) Bytes96 (Fixed-size / size: 96)
   ├─ execution_payload (offset: 2985) ExecutionPayloadDeneb (Variable-size / fixed size: 528, total size: 1081)
   │  ├─ parent_hash (offset: 0) Bytes32 (Fixed-size / size: 32)
   │  ├─ fee_recipient (offset: 32) Bytes20 (Fixed-size / size: 20)
   │  ├─ state_root (offset: 52) Bytes32 (Fixed-size / size: 32)
   │  ├─ receipts_root (offset: 84) Bytes32 (Fixed-size / size: 32)
   │  ├─ logs_bloom (offset: 116) Bytes256 (Fixed-size / size: 256)
   │  ├─ prev_randao (offset: 372) Bytes32 (Fixed-size / size: 32)
   │  ├─ block_number (offset: 404) uint64 (Fixed-size / size: 8)
   │  ├─ gas_limit (offset: 412) uint64 (Fixed-size / size: 8)
   │  ├─ gas_used (offset: 420) uint64 (Fixed-size / size: 8)
   │  ├─ timestamp (offset: 428) uint64 (Fixed-size / size: 8)
   │  ├─ extra_data (offset: 528) List[uint8, 32] (Variable-size / length: 3, size: 3)
   │  ├─ base_fee_per_gas (offset: 440) Bytes32 (Fixed-size / size: 32)
   │  ├─ block_hash (offset: 472) Bytes32 (Fixed-size / size: 32)
   │  ├─ transactions (offset: 543) List[List[uint8, 1073741824], 1048576] (Variable-size / length: 3, size: 450)
   │  ├─ withdrawals (offset: 993) List[Withdrawal, 16] (Variable-size / length: 2, size: 88)
   │  ├─ blob_gas_used (offset: 512) uint64 (Fixed-size / size: 8)
   │  └─ excess_blob_gas (offset: 520) uint64 (Fixed-size / size: 8)
   ├─ bls_to_execution_changes (offset: 4066) List[SignedBLSToExecutionChange, 16] (Variable-size / length: 1, size: 172)
   ├─ blob_kzg_commitments (offset: 4238) List[Bytes48, 4096] (Variable-size / length: 2, size: 96)
   └─ execution_requests (offset: 4334) ExecutionRequests (Variable-size / fixed size: 12, total size: 396)
      ├─ deposits (offset: 12) List[DepositRequest, 8192] (Variable-size / length: 1, size: 192)
      ├─ withdrawals (offset: 204) List[WithdrawalRequest, 16] (Variable-size / length: 1, size: 76)
      └─ consolidations (offset: 280) List[ConsolidationRequest, 2] (Variable-size / length: 1, size: 116)
```